Quem já vive de Google Calendar não quer trocar. A Kontato sincroniza nos dois sentidos — agendamentos vão pro Google e compromissos pessoais do Google bloqueiam slots na Kontato.
Como funciona
A sincronização é bidirecional 1:1:
- 1 agenda da Kontato = 1 calendário do Google (não dá pra "Cadeira 1" virar 2 calendários, nem 2 cadeiras virarem 1)
- Quando você conecta, a Kontato cria automaticamente um calendário
Kontato — [nome agenda]pra cada agenda Kontato - Mudanças de um lado refletem no outro em até 10 minutos (webhook ou cron)
Conectar pela primeira vez
Vai em Configurações → Integrações → Google Calendar.
Click em Conectar conta Google.
Faz login Google (OAuth), aceita as permissões.
Volta pro Kontato. Calendário "Kontato — Cadeira 1" (e outras agendas) é criado automaticamente na sua conta Google.
A partir desse momento, qualquer agendamento criado na Kontato (manual ou pelo bot) aparece no Google em até 30s.
Eventos criados direto no Google → Kontato
Se você cria um evento direto no Google Calendar (ex: "Almoço com fornecedor 12h"), ele aparece na Kontato como bloqueio inerte:
origem = 'google_import'marca o agendamento como importado- Read-only na Kontato (não dá pra editar pela Kontato — só direto no Google)
- Bot respeita como horário ocupado, não tenta agendar cliente em cima
- Não dispara automações (não vira fidelidade, não soma visita, sem NPS)
- Aparece com ícone discreto identificando origem Google
Editou na Kontato → vai pro Google?
Sim, se o agendamento foi criado na Kontato. Cancelar, remarcar, mudar serviço — tudo sincroniza.
Exceção: agendamentos importados do Google (origem='google_import') são read-only na Kontato. Você precisa editar direto no Google e a mudança volta.
Webhook + cron — como mantém em sync
Pra ser ágil e seguro:
- Webhook Google → Kontato — Google avisa a Kontato em tempo real quando algo muda do lado dele (TTL 7 dias, renovado a cada 24h por cron)
- Cron Kontato → Google — roda a cada 10 minutos como fallback, fazendo sync incremental via
syncToken
Se o webhook falha (raro), o cron cobre em até 10min. Sem perda de evento.
Anti-loop (evita ping-pong)
Quando Kontato cria evento no Google, e Google avisa Kontato via webhook, a Kontato detecta que o evento veio de si mesmo (combinação origem + google_event_id) e ignora. Sem isso, ia ficar criando duplicata infinita.
Recorrências e all-day
- Recorrências do Google (ex: "todo dia 8h reunião") são expandidas pelos próximos 60 dias, cada instância vira agendamento individual
- All-day events (eventos de dia inteiro) viram agendamento 00:00 → 23:59:59 na Kontato
Coisas que NÃO sincronizam
Pra manter simples e privado:
- Convidados/participantes do Google
- Lembretes do Google (Kontato tem os próprios)
- Anexos do Google
- Status RSVP (aceito/recusado)
Só título, data, hora, descrição básica vão e voltam.
Conflitos
Se você muda o mesmo evento nos dois lados (Kontato e Google) ao mesmo tempo, ganha last-write-wins: a última edição ganha. Etag previne reprocessamento desnecessário.
Desconectar
Em Configurações → Integrações → Google Calendar → Desconectar, a Kontato:
- Para de sincronizar
- Mantém os IDs vinculados (
google_calendar_id,google_event_id) — pra você reconectar sem perder histórico - Eventos no Google continuam existindo (não são deletados)
- Agendamentos na Kontato continuam existindo
Reconectar depois retoma o sync de onde parou.
Próximo passo
Você terminou Agenda! Conhece os modos, sabe criar/editar/bloquear, marca presença, configura notificações e integra Google.
Próxima categoria — quem realmente importa: