Primeiro sincronize a agenda real
Eu não guardaria a agenda no prompt. O bot pode sugerir um horário com educação, mas a única fonte de tempo livre deve ser o calendário, checado logo antes de criar a reunião.
O erro que eu eliminaria primeiro: A mensagem “você está agendado às 15h” não significa que o evento foi criado. Clique duplo, fuso horário e reserva em paralelo transformam facilmente uma reunião em duas.

O que preparar e que resultado esperar
- Resultado: O cliente escolhe um horário disponível, recebe confirmação e lembrete, e a remarcação não cria uma segunda reunião.
- Crie uma tabela de serviços: service_id, duration, buffer, calendar, business hours, time zone, quem aprova exceções.
- Mantenha dados de origem e direitos de acesso separados do resultado para auditar o que o agendamento de serviços com IA realmente fez.
- Teste agendamento, horário ocupado, remarcação, cancelamento, horário de verão e uma solicitação de outro fuso.
Configure agendamento, lembretes e remarcações
- Configure o calendário primeiro
Conecte um calendário de trabalho e defina horários, pausas, buffer antes e depois da reunião e lead time mínimo. Não armazene horários livres no prompt.
Проверьте: Um horário livre é puxado do calendário logo antes de mostrar ao cliente.
Если не сработало: Sincronize um calendário de teste e desative escritas no calendário compartilhado.
- Trate o serviço como um objeto separado
Para cada serviço defina service_id, duration e equipe necessária. A IA pode entender o nome do serviço, mas pegue duração e preço da tabela.
Проверьте: O mesmo serviço gera o mesmo horário independentemente da redação do cliente.
Если не сработало: Substitua texto livre por botões ou uma lista de valores permitidos.
- Confirme o horário antes de criar a reunião
Depois da escolha do horário, peça availability de novo, então crie o evento com nome, contato, serviço e fuso. Salve event_id.
Проверьте: Clique duplo ou webhook repetido não cria duas reuniões.
Если не сработало: Confira event_id e bloqueie agendamento duplicado.
- Separe remarcação de agendamento novo
A remarcação deve achar o event_id existente, checar o novo horário e atualizar o evento. Se faltar o id, envie a solicitação a uma pessoa.
Проверьте: O histórico mantém o horário antigo e o novo.
Если не сработало: Não apague o evento antigo até o novo estar confirmado.

O setup que evita agendamentos duplos
Na tabela de serviços defina service_id, duration_minutes, buffer_before, buffer_after, calendar_id e timezone. A IA pode entender que a pessoa quer uma “consulta,” mas pegue duração e calendário da tabela.
Depois da escolha do horário, chame availability de novo, então crie o evento e salve event_id. Em um webhook repetido busque primeiro event_id ou client_request_id. Para remarcar, crie primeiro o novo horário e apague o evento antigo só após confirmação.
- Teste horário de verão e uma solicitação de outro fuso.
- Não prometa um horário até o calendário devolver um event_id confirmado.
O que deixar para uma pessoa
Passe à equipe alguns casos: cliente VIP, pagamento falho, sem especialista adequado, remarcação fora das regras e conflitos de calendário. Nos demais casos a IA pode coletar dados, mas a ação final ainda deve passar pela API do calendário.
Eu checo o horário duas vezes — não prometo de memória
No calendário armazene `event_id`, `client_request_id`, `service_id`, `duration_minutes`, `buffer_before`, `buffer_after` e `timezone`. Depois da escolha do horário chame availability de novo e só então crie o event. Se chegar um webhook repetido com o mesmo `client_request_id`, retorne o `event_id` existente em vez de criar uma reunião nova.
Para remarcar primeiro reserve o novo horário, obtenha confirmação e só então altere o evento antigo. Se o novo horário não foi criado, não apague a reunião anterior. Essa regra simples evita “o bot cancelou a antiga, mas nunca colocou a nova.”
O que a IA pode lidar vs o que deve vir do calendário
| Critério | Pergunta | Bom sinal |
|---|---|---|
| Input | O que entra exatamente no agendamento de serviços com IA? | Crie uma tabela de serviços: service_id, duration, buffer, calendar, business hours, time zone, quem aprova exceções. |
| Ação | O que o sistema tem permissão de fazer sozinho? | Somente ações pré-listadas, sem acesso a toda a conta |
| Verificação | Como saber que o resultado é aceitável? | Teste agendamento, horário ocupado, remarcação, cancelamento, horário de verão e uma solicitação de outro fuso. |
| Falha | Para onde vai um caso pouco claro? | Não prometa um horário na mensagem: defina a solicitação como needs_confirmation e passe ao manager o horário exato e a solicitação original. |
O que deve mudar depois da configuração
O cliente escolhe um horário disponível, recebe confirmação e lembrete, e a remarcação não cria uma segunda reunião.

Por que o bot agenda pessoas em horários inexistentes
Guardar a agenda no prompt em vez do calendário.
Ignorar o fuso horário do cliente.
Tratar uma confirmação enviada como prova de que o evento foi criado.
Permitir remarcação sem checar qual reunião está sendo alterada.
Quando o agendamento vira um sistema completo de reservas
Você precisa de um especialista se houver várias pessoas, durações diferentes, pagamentos ou restrições médicas/jurídicas.
O que testar antes de abrir o agendamento
Para quem é essa abordagem de agendamento de serviços com IA?
O agendamento automático precisa ver horários livres de verdade, considerar duração e fuso horário, e remarcar ou cancelar só depois de checar identidade e regras de negócio.
Por onde começar se tudo ainda é manual?
Crie uma tabela de serviços: service_id, duration, buffer, calendar, business hours, time zone, quem aprova exceções.
Como checar se o setup não vai te prejudicar?
Teste agendamento, horário ocupado, remarcação, cancelamento, horário de verão e uma solicitação de outro fuso.
E se o resultado não estiver claro?
Não prometa um horário na mensagem: defina a solicitação como needs_confirmation e passe ao manager o horário exato e a solicitação original.






