# Usar o calendário pela API

As rotas de calendário exigem `CALENDAR`, além das permissões do membro da chave. `GET /api/v1/calendar/events` reúne eventos do workspace e as fontes disponíveis para esse membro.

## Janela de consulta

Informe o início e o fim conforme os parâmetros da [referência](/api/resources/calendar/methods/list-calendar-window/). Datas e horas seguem ISO 8601. Para eventos de dia inteiro, o objeto de data usa `date`; para eventos com horário, usa `dateTime` e o fuso documentado.

A resposta informa o estado das fontes. Uma fonte do Google Calendar indisponível não deve ser interpretada como uma agenda vazia.

## Criar e editar reuniões

Use `POST /api/v1/calendar/events` e as operações individuais em `/api/v1/calendar/events/{id}`. Confira início, fim, responsável e convidados antes de gravar.

Um convidado de entrada usa `type: member` com `memberId`, ou `type: contact` com `contactId`. Na resposta, a identidade aparece aninhada em `member` ou `contact`, e não como campos planos de nome e e-mail.

`removed: true` significa que a identidade do convidado não existe mais. O registro permanece para preservar o histórico da reunião.

## Conferência e gravação

Você pode informar `conferenceUrl` de uma reunião existente. A gravação pelo bot depende da disponibilidade do recurso e de um link compatível, Google Meet ou Microsoft Teams. A solicitação incompatível responde `400`.

Veja [Reuniões e gravações](/calendario/reunioes/) para o fluxo no aplicativo e [Campos de evento](/calendario/campos-de-evento/) para vincular uma reunião ao lead.