SnozeDevelopers
API referenceCalendar

Create a calendar event

Creates an event with its attendees and linked items on the given calendar, or on the workspace's native calendar when `calendarId` is omitted, and queues a push to the provider when the calendar is connected. The caller needs edit access to the calendar's item; a missing or read-only calendar and an invalid title or link set are rejected as validation errors. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.

POST
/v1/workspaces/{workspaceId}/calendar/events
AuthorizationBearer <token>

Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.

In: header

Path Parameters

workspaceId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/v1/workspaces/string/calendar/events" \  -H "Content-Type: application/json" \  -d '{    "title": "string",    "time": {      "allDay": true    }  }'
{  "data": {    "id": "string",    "workspaceId": "string",    "sourceId": "string",    "sourceKind": "native",    "calendarId": "string",    "recordSourceId": "string",    "recordId": "string",    "databaseId": "string",    "title": "string",    "description": "string",    "location": "string",    "allDay": true,    "startsAt": "string",    "endsAt": "string",    "startDate": "string",    "endDate": "string",    "timeZone": "string",    "recurrenceRule": "string",    "recurrenceExceptions": [      "string"    ],    "status": "confirmed",    "visibility": "default",    "syncState": "current",    "revision": 0,    "attendees": [      {        "id": "string",        "userId": "string",        "email": "string",        "displayName": "string",        "responseStatus": "needs_action",        "optional": true,        "organizer": true      }    ],    "links": [      {        "id": "string",        "kind": "string",        "label": "string",        "url": "string"      }    ],    "createdAt": "string",    "updatedAt": "string"  }}