Calendar
Calendars, events, availability, free slots, ICS import/export.
Start with: calendar_find_slots, events_create, events_list, calendars_create.
16 operations. Discover them from an agent with agentdb_capabilities {"category": "calendar"}.
#calendar_availability
Free-busy per calendar and participant. Busy intervals per subject plus the time all are free, optionally inside working_hours {timezone, days, start, end}.
- MCP tool
calendar_availability- REST
POST /v1/workspaces/{ws}/calendar/availabilityscope records:read- CLI
agentdb calendar availability
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
from | string | yes | Start of the time range (ISO 8601 date-time with time zone). |
to | string | yes | End of the time range (ISO 8601 date-time with time zone). |
calendar_ids | string[] | string[], up to 50 items | |
participants | string[] | string[], up to 50 items | |
working_hours | object | object | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendar_availability",
"arguments": {
"from": "2026-12-01T00:00:00Z",
"to": "2026-12-02T00:00:00Z",
"calendar_ids": [
"cal_example"
]
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendar_availability",
"arguments": {
"from": "2026-12-01T00:00:00Z",
"to": "2026-12-02T00:00:00Z",
"calendar_ids": [
"cal_example"
]
}
}
}curl -s -X POST "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar/availability" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"from":"2026-12-01T00:00:00Z","to":"2026-12-02T00:00:00Z","calendar_ids":["cal_example"]}'agentdb calendar availability [options]#calendar_expand
Expand an RRULE into occurrences. E.g. a recurrence field value, from start in an IANA zone, between from and to, with exdates. Nothing is created.
- MCP tool
calendar_expand- REST
POST /v1/workspaces/{ws}/calendar/expandscope records:read- CLI
agentdb calendar expand
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
rule | string | yes | Recurrence rule (RRULE), e.g. FREQ=WEEKLY;BYDAY=MO. (min length 1, max length 1000) |
start | string | yes | Start of the first occurrence (date or date-time). (min length 10, max length 40) |
timezone | string | string, up to 64 characters, default "UTC" | |
duration_minutes | integer | integer, 0–527040, default 0 | |
exdates | string[] | string[], up to 500 items | |
from | string | yes | Start of the time range (ISO 8601 date-time with time zone). |
to | string | yes | End of the time range (ISO 8601 date-time with time zone). |
limit | integer | integer, 1–2000, default 100 | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendar_expand",
"arguments": {
"rule": "FREQ=WEEKLY;BYDAY=MO",
"start": "2026-12-07T09:00:00Z",
"from": "2026-12-01T00:00:00Z",
"to": "2027-01-01T00:00:00Z"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendar_expand",
"arguments": {
"rule": "FREQ=WEEKLY;BYDAY=MO",
"start": "2026-12-07T09:00:00Z",
"from": "2026-12-01T00:00:00Z",
"to": "2027-01-01T00:00:00Z"
}
}
}curl -s -X POST "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar/expand" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"rule":"FREQ=WEEKLY;BYDAY=MO","start":"2026-12-07T09:00:00Z","from":"2026-12-01T00:00:00Z","to":"2027-01-01T00:00:00Z"}'agentdb calendar expand [options]#calendar_export_ics
The calendar as iCalendar (.ics) text for other calendar apps.
- MCP tool
calendar_export_ics- REST
GET /v1/workspaces/{ws}/calendars/{calendar}/icsscope records:read
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
calendar_id | string | yes | Calendar id (cal_...) |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendar_export_ics",
"arguments": {
"calendar_id": "cal_example"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendar_export_ics",
"arguments": {
"calendar_id": "cal_example"
}
}
}curl -s "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendars/cal_example/ics" \
-H "Authorization: Bearer $AGENTDB_TOKEN"#calendar_find_slots
Find free meeting slots. Every given calendar and participant is free for duration_minutes (buffer_minutes around busy time, step_minutes grid, working_hours). Nothing is booked; create the event with events_create.
- MCP tool
calendar_find_slots- REST
POST /v1/workspaces/{ws}/calendar/slotsscope records:read
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
from | string | yes | Start of the time range (ISO 8601 date-time with time zone). |
to | string | yes | End of the time range (ISO 8601 date-time with time zone). |
calendar_ids | string[] | string[], up to 50 items | |
participants | string[] | string[], up to 50 items | |
working_hours | object | object | |
duration_minutes | integer | yes | Length of the slot you need, in minutes. (min 5, max 1440) |
step_minutes | integer | integer, 5–1440, default 15 | |
buffer_minutes | integer | integer, 0–240, default 0 | |
limit | integer | integer, 1–100, default 10 | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendar_find_slots",
"arguments": {
"from": "2026-12-01T00:00:00Z",
"to": "2026-12-05T00:00:00Z",
"calendar_ids": [
"cal_example"
],
"duration_minutes": 30,
"working_hours": {
"timezone": "Europe/Amsterdam",
"start": "09:00",
"end": "17:00"
},
"limit": 3
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendar_find_slots",
"arguments": {
"from": "2026-12-01T00:00:00Z",
"to": "2026-12-05T00:00:00Z",
"calendar_ids": [
"cal_example"
],
"duration_minutes": 30,
"working_hours": {
"timezone": "Europe/Amsterdam",
"start": "09:00",
"end": "17:00"
},
"limit": 3
}
}
}curl -s -X POST "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar/slots" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"from":"2026-12-01T00:00:00Z","to":"2026-12-05T00:00:00Z","calendar_ids":["cal_example"],"duration_minutes":30,"working_hours":{"timezone":"Europe/Amsterdam","start":"09:00","end":"17:00"},"limit":3}'#calendar_import_ics
Import iCalendar (.ics) text into a calendar. Max 1 MiB, 1000 events. Events match on UID (on_existing update|skip); RECURRENCE-ID entries become changed occurrences. Bad events are skipped and listed; TZID must be an IANA name.
- MCP tool
calendar_import_ics- REST
POST /v1/workspaces/{ws}/calendars/importscope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
calendar_id | string | yes | Calendar id. (max length 64) |
ics | string | yes | The iCalendar (.ics) text to import. (min length 1, max length 1048576) |
on_existing | "update" | "skip" | string, one of: update, skip, default "update" | |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendar_import_ics",
"arguments": {
"calendar_id": "cal_example",
"ics": "BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:-//example//EN\r\nBEGIN:VEVENT\r\nUID:demo-1@example.test\r\nDTSTAMP:20261101T000000Z\r\nDTSTART:20261201T100000Z\r\nDTEND:20261201T103000Z\r\nSUMMARY:Demo\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n",
"on_existing": "skip"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendar_import_ics",
"arguments": {
"calendar_id": "cal_example",
"ics": "BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:-//example//EN\r\nBEGIN:VEVENT\r\nUID:demo-1@example.test\r\nDTSTAMP:20261101T000000Z\r\nDTSTART:20261201T100000Z\r\nDTEND:20261201T103000Z\r\nSUMMARY:Demo\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n",
"on_existing": "skip"
}
}
}curl -s -X POST "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendars/import" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"calendar_id":"cal_example","ics":"BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:-//example//EN\r\nBEGIN:VEVENT\r\nUID:demo-1@example.test\r\nDTSTAMP:20261101T000000Z\r\nDTSTART:20261201T100000Z\r\nDTEND:20261201T103000Z\r\nSUMMARY:Demo\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n","on_existing":"skip"}'#calendars_create
Create a calendar. It books people's and resources' time (the scheduler runs automation). timezone: IANA default for its events. owner: user:<acc>, agent:<agt> or resource:<name> counts as busy on it. writers: only these members/agents (plus owners/admins) may change its events.
- MCP tool
calendars_create- REST
POST /v1/workspaces/{ws}/calendarsscope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
name | string | yes | Name of the calendar. (min length 1, max length 100) |
description | string | string, up to 2000 characters | |
timezone | string | string, up to 64 characters, default "UTC" | |
owner | string | string, up to 330 characters | |
writers | string[] | string[], up to 50 items | |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendars_create",
"arguments": {
"name": "Sales team",
"timezone": "Europe/Amsterdam"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendars_create",
"arguments": {
"name": "Sales team",
"timezone": "Europe/Amsterdam"
}
}
}curl -s -X POST "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendars" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"Sales team","timezone":"Europe/Amsterdam"}'#calendars_delete
Delete a calendar with all its events and reminders.
- MCP tool
calendars_delete- REST
DELETE /v1/workspaces/{ws}/calendars/{calendar}scope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
calendar_id | string | yes | Calendar id (cal_...) |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendars_delete",
"arguments": {
"calendar_id": "cal_example"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendars_delete",
"arguments": {
"calendar_id": "cal_example"
}
}
}curl -s -X DELETE "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendars/cal_example" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'#calendars_get
One calendar with its event count.
- MCP tool
calendars_get- REST
GET /v1/workspaces/{ws}/calendars/{calendar}scope records:read
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
calendar_id | string | yes | Calendar id (cal_...) |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendars_get",
"arguments": {
"calendar_id": "cal_example"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendars_get",
"arguments": {
"calendar_id": "cal_example"
}
}
}curl -s "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendars/cal_example" \
-H "Authorization: Bearer $AGENTDB_TOKEN"#calendars_list
List calendars.
- MCP tool
calendars_list- REST
GET /v1/workspaces/{ws}/calendarsscope records:read
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendars_list",
"arguments": {}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendars_list",
"arguments": {}
}
}curl -s "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendars" \
-H "Authorization: Bearer $AGENTDB_TOKEN"#calendars_update
Change a calendar's name, description or timezone; owners/admins also owner and writers.
- MCP tool
calendars_update- REST
PATCH /v1/workspaces/{ws}/calendars/{calendar}scope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
name | string | string, 1–100 characters | |
description | string | null | string | null | |
timezone | string | string, up to 64 characters | |
owner | string | null | string | null | |
writers | string[] | null | string[] | null | |
calendar_id | string | yes | Calendar id (cal_...) |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "calendars_update",
"arguments": {
"calendar_id": "cal_example",
"description": "Sales meetings and demos"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "calendars_update",
"arguments": {
"calendar_id": "cal_example",
"description": "Sales meetings and demos"
}
}
}curl -s -X PATCH "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendars/cal_example" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"description":"Sales meetings and demos"}'#events_create
Book an event. start/end: local wall time YYYY-MM-DDTHH:MM in timezone (default the calendar's), an RFC 3339 instant, or YYYY-MM-DD for all-day (end = the day after). recurrence: RRULE (FREQ=WEEKLY;BYDAY=MO), exdates: skipped occurrences. participants: {type: user|agent|resource|email, id|email}. reminders: [{minutes_before}] run on the scheduler and emit calendar.reminder events. Returns conflicts with busy time; on_conflict=reject refuses with SLOT_CONFLICT instead. Find a free time first with calendar_find_slots.
- MCP tool
events_create- REST
POST /v1/workspaces/{ws}/calendar-eventsscope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
calendar_id | string | yes | Calendar id. (max length 64) |
title | string | yes | Title shown to people. (min length 1, max length 500) |
description | string | string, up to 20000 characters | |
location | string | string, up to 500 characters | |
meeting_url | string | string, up to 2048 characters | |
start | string | yes | Start of the event (date or date-time). (min length 10, max length 40) |
end | string | string, 10–40 characters | |
duration_minutes | integer | integer, 1–527040 | |
all_day | boolean | boolean | |
timezone | string | string, up to 64 characters | |
recurrence | string | string, 1–1000 characters | |
exdates | string[] | string[], up to 500 items | |
status | "confirmed" | "tentative" | "cancelled" | string, one of: confirmed, tentative, cancelled | |
transparency | "busy" | "free" | string, one of: busy, free | |
participants | object[] | object[], up to 100 items | |
reminders | object[] | object[], up to 5 items | |
uid | string | string, 1–255 characters | |
on_conflict | "allow" | "reject" | string, one of: allow, reject, default "allow" | |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "events_create",
"arguments": {
"calendar_id": "cal_example",
"title": "Demo with Example Ltd",
"start": "2026-12-01T10:00:00Z",
"duration_minutes": 30,
"participants": [
{
"type": "email",
"email": "buyer@example.test",
"name": "Buyer"
}
],
"reminders": [
{
"minutes_before": 15
}
]
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "events_create",
"arguments": {
"calendar_id": "cal_example",
"title": "Demo with Example Ltd",
"start": "2026-12-01T10:00:00Z",
"duration_minutes": 30,
"participants": [
{
"type": "email",
"email": "buyer@example.test",
"name": "Buyer"
}
],
"reminders": [
{
"minutes_before": 15
}
]
}
}
}curl -s -X POST "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar-events" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"calendar_id":"cal_example","title":"Demo with Example Ltd","start":"2026-12-01T10:00:00Z","duration_minutes":30,"participants":[{"type":"email","email":"buyer@example.test","name":"Buyer"}],"reminders":[{"minutes_before":15}]}'#events_delete
Delete an event or one occurrence. With occurrence only that occurrence of a recurring event goes (an exception).
- MCP tool
events_delete- REST
DELETE /v1/workspaces/{ws}/calendar-events/{event}scope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
occurrence | string | string, up to 40 characters | |
event_id | string | yes | Event id (cev_...) |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "events_delete",
"arguments": {
"event_id": "cev_example"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "events_delete",
"arguments": {
"event_id": "cev_example"
}
}
}curl -s -X DELETE "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar-events/cev_example" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'#events_get
One event (series) with exceptions and changed occurrences.
- MCP tool
events_get- REST
GET /v1/workspaces/{ws}/calendar-events/{event}scope records:read
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
event_id | string | yes | Event id (cev_...) |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "events_get",
"arguments": {
"event_id": "cev_example"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "events_get",
"arguments": {
"event_id": "cev_example"
}
}
}curl -s "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar-events/cev_example" \
-H "Authorization: Bearer $AGENTDB_TOKEN"#events_list
Events between from and to, recurring ones expanded. RFC 3339, at most 366 days; exceptions and overrides applied, DST-correct. Filter by calendar_ids or one participant key.
- MCP tool
events_list- REST
GET /v1/workspaces/{ws}/calendar-eventsscope records:read
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
from | string | yes | Start of the time range (ISO 8601 date-time with time zone). |
to | string | yes | End of the time range (ISO 8601 date-time with time zone). |
calendar_ids | string[] | string[], up to 50 items | |
participant | string | string, up to 330 characters | |
expand | boolean | boolean | |
include_cancelled | boolean | boolean | |
limit | integer | integer, 1–2000, default 500 | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "events_list",
"arguments": {
"from": "2026-12-01T00:00:00Z",
"to": "2026-12-08T00:00:00Z",
"calendar_ids": [
"cal_example"
]
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "events_list",
"arguments": {
"from": "2026-12-01T00:00:00Z",
"to": "2026-12-08T00:00:00Z",
"calendar_ids": [
"cal_example"
]
}
}
}curl -s "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar-events" \
-H "Authorization: Bearer $AGENTDB_TOKEN"#events_respond
Answer an invitation. accepted, declined, tentative or needs_action; for yourself by default; owners/admins may answer for any participant. Declined participants are free in free-busy.
- MCP tool
events_respond- REST
POST /v1/workspaces/{ws}/calendar-events/{event}/respondscope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
participant | string | string, up to 330 characters | |
response | "needs_action" | "accepted" | "declined" | "tentative" | yes | Your answer to the invitation. |
event_id | string | yes | Event id (cev_...) |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "events_respond",
"arguments": {
"event_id": "cev_example",
"response": "accepted"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "events_respond",
"arguments": {
"event_id": "cev_example",
"response": "accepted"
}
}
}curl -s -X POST "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar-events/cev_example/respond" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"response":"accepted"}'#events_update
Change an event. version = optimistic check. With occurrence (the original start of one occurrence) only that occurrence moves or changes: start, end, title, status, transparency.
- MCP tool
events_update- REST
PATCH /v1/workspaces/{ws}/calendar-events/{event}scope records:write
Arguments
| Argument | Type | Required | Description |
|---|---|---|---|
version | integer | The current version of the item. The call fails with VERSION_CONFLICT if it changed. (min 1) | |
occurrence | string | string, up to 40 characters | |
title | string | Title shown to people. (min length 1, max length 500) | |
description | string | null | string | null | |
location | string | null | string | null | |
meeting_url | string | null | string | null | |
start | string | string, 10–40 characters | |
end | string | string, 10–40 characters | |
duration_minutes | integer | integer, 1–527040 | |
all_day | boolean | boolean | |
timezone | string | string, up to 64 characters | |
recurrence | string | null | string | null | |
exdates | string[] | string[], up to 500 items | |
status | "confirmed" | "tentative" | "cancelled" | string, one of: confirmed, tentative, cancelled | |
transparency | "busy" | "free" | string, one of: busy, free | |
participants | object[] | object[], up to 100 items | |
reminders | object[] | object[], up to 5 items | |
on_conflict | "allow" | "reject" | string, one of: allow, reject, default "allow" | |
event_id | string | yes | Event id (cev_...) |
idempotency_key | string | Optional retry key ([A-Za-z0-9._:-], max 255). Repeating a call with the same key and arguments returns the original result without writing again. | |
workspace | string | Workspace id (preferred), slug or exact name. Omit for the default workspace. Resolve names once with workspace_select. |
Example
{
"tool": "events_update",
"arguments": {
"event_id": "cev_example",
"version": 1,
"start": "2026-12-01T11:00:00Z"
}
}{
"tool": "agentdb_execute",
"arguments": {
"operation": "events_update",
"arguments": {
"event_id": "cev_example",
"version": 1,
"start": "2026-12-01T11:00:00Z"
}
}
}curl -s -X PATCH "https://app.agentdb.link/v1/workspaces/$AGENTDB_WORKSPACE/calendar-events/cev_example" \
-H "Authorization: Bearer $AGENTDB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"version":1,"start":"2026-12-01T11:00:00Z"}'