# Agenda

Fonte: https://wire.ia.br/documentation/api/agenda

> Ler, criar e apagar eventos na agenda "Paper" do Google Agenda.



A API mexe só na agenda chamada **Paper**, que o próprio app cria no Google Agenda da pessoa. As outras agendas dela ficam fora de alcance.

Antes de usar:

1. A pessoa conecta o Google Agenda em **Configurações → Integrações**.
2. Em **Configurações → Desenvolvedor**, toca em **Liberar a agenda "Paper" para a API**.
3. O token precisa da permissão de agenda. Tokens seguros não acessam a agenda.

Sem os dois primeiros passos, a API responde `409`.

## Listar eventos [#listar-eventos]

```http
GET /calendar/events?from=2026-10-01&to=2026-10-31
```

`from` e `to` aceitam data ou data e hora em ISO 8601. Sem `from`, começa agora. Sem `to`, vai até 30 dias depois de `from`. Devolve até 250 eventos, em ordem de início.

```json
[
  {
    "id": "k9d8f7g6h5j4",
    "titulo": "Dentista",
    "descricao": null,
    "inicio": { "dateTime": "2026-10-06T14:00:00-03:00", "timeZone": "America/Sao_Paulo" },
    "fim": { "dateTime": "2026-10-06T15:00:00-03:00", "timeZone": "America/Sao_Paulo" }
  }
]
```

Eventos de dia inteiro vêm com `{ "date": "2026-10-06" }` em `inicio` e `fim`.

## Criar um evento [#criar-um-evento]

```http
POST /calendar/events
Content-Type: application/json
```

```json
{
  "title": "Entregar relatório",
  "date": "2026-10-08",
  "time": "09:30",
  "durationMinutes": 45,
  "description": "Versão final, com os gráficos.",
  "timeZone": "America/Sao_Paulo"
}
```

| Campo             | Obrigatório | Regras                                           |
| ----------------- | ----------- | ------------------------------------------------ |
| `title`           | Não         | Até 300 caracteres. Vazio vira "Evento".         |
| `date`            | Sim         | `AAAA-MM-DD`.                                    |
| `time`            | Não         | `HH:MM`. Sem horário, o evento é de dia inteiro. |
| `durationMinutes` | Não         | De 5 a 1440. Padrão: 60.                         |
| `description`     | Não         | Até 4000 caracteres.                             |
| `timeZone`        | Não         | Fuso IANA. Padrão: `America/Sao_Paulo`.          |

Resposta: `{ "id": "…" }`. Precisa da permissão **Ler e criar eventos**.

## Apagar um evento [#apagar-um-evento]

```http
DELETE /calendar/events/{id}
```

Só apaga eventos da agenda "Paper". Precisa da permissão **Ler e criar eventos**.

## Bom senso [#bom-senso]

Crie eventos que a pessoa pediu ou que vêm das notas dela. Não encha a agenda com lembretes repetidos nem use a agenda como fila de tarefas de um sistema.
