Events

Events are company calendar events with date, time, location, and optional group targeting. They are automatically published on creation and added to the calendar.

Required scope: read:events, write:events.

Endpoints

GET
/api/open/v1/events

List published events (paginated)

GET
/api/open/v1/events/{id}

Get a single event

POST
/api/open/v1/events

Create and publish an event

PUT
/api/open/v1/events/{id}

Update an event

DELETE
/api/open/v1/events/{id}

Delete an event (returns 204)

Create

curl -X POST https://customer.monotree.com/api/open/v1/events \
  -H "Authorization: Bearer mono_your_token_here" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Team Building Day",
    "body": "Join us for a fun day of activities.",
    "starts_at": "2026-05-01",
    "starts_time": "09:00",
    "ends_at": "2026-05-01",
    "ends_time": "17:00",
    "location": "Main Office",
    "groups": [1, 3]
  }'

Request body

FieldTypeNotes
titlestringRequired.
bodystringOptional description.
starts_atdate (YYYY-MM-DD)Required.
starts_timetime (HH:MM)Optional.
ends_atdate (YYYY-MM-DD)Required.
ends_timetime (HH:MM)Optional.
locationstringOptional.
groupsarray of integersOptional. Group IDs to target.

Response

{
  "data": {
    "id": 789,
    "title": "Team Building Day",
    "body": "Join us for a fun day of activities.",
    "starts_at": "2026-05-01",
    "starts_time": "09:00",
    "ends_at": "2026-05-01",
    "ends_time": "17:00",
    "location": "Main Office",
    "author": { "id": 1, "name": "John Doe", "email": "john@example.com" },
    "groups": [
      { "id": 1, "name": "All Staff", "type": "custom", "created_at": "2026-01-15T10:00:00+00:00" }
    ],
    "is_published": true,
    "comments_count": 0,
    "completions_count": 0,
    "published_at": "2026-05-01T10:00:00+00:00",
    "created_at": "2026-05-01T10:00:00+00:00",
    "updated_at": "2026-05-01T10:00:00+00:00"
  }
}