agentlyleads docs
Calendar API

API Reference

The reference below covers the Calendar API endpoint. Code examples are generated automatically; the live playground is disabled to prevent accidental writes to production from the docs site.

GET/api/v1/calendar

Authorization

BearerAuth
AuthorizationBearer <token>

Pass an API key issued from the agentlyleads workspace settings. Example: Authorization: Bearer alk_live_xxxxxxxxxxxx

In: header

Query Parameters

from?string

First day of the range, YYYY-MM-DD. Defaults to today's date in the workspace's own timezone.

Formatdate
to?string

Last day of the range, YYYY-MM-DD, inclusive. Defaults to 7 days after from. The range from from to to cannot exceed 90 days.

Formatdate
kind?array<>

Filter to one or more kinds. Repeatable (?kind=task&kind=deal-close) and/or comma-separated (?kind=task,deal-close) — both forms work and can be mixed. Omit to return every kind.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/v1/calendar?from=2026-09-08&to=2026-09-12&kind=task&kind=deal-close"
{  "from": "2026-09-08",  "to": "2026-09-12",  "timeZone": "America/New_York",  "entries": [    {      "id": "task:cmq7task0alk34567890",      "kind": "task",      "date": "2026-09-10",      "startAt": "2026-09-10T14:00:00.000Z",      "endAt": "2026-09-10T14:30:00.000Z",      "allDay": false,      "title": "Discovery call with Acme",      "href": "/tasks",      "meta": "Jane Buyer",      "done": false,      "taskId": "cmq7task0alk34567890",      "seriesId": null    },    {      "id": "deal:cmq3deal0alk34567890",      "kind": "deal-close",      "date": "2026-09-12",      "startAt": null,      "endAt": null,      "allDay": true,      "title": "Close: Acme Corp — Annual Contract",      "href": "/deals/cmq3deal0alk34567890",      "meta": "$12,000 · QUALIFIED"    }  ]}
{  "error": "The date range cannot exceed 90 days."}
{  "error": "Invalid or missing API key."}
{  "error": "API key missing required scope: read:calendar."}
{  "error": "Rate limit exceeded."}