API reference · Invitations
inv_Invitations
ICS-based attendee invitations with delivery + response tracking.
Endpoints
POST
/v1/invitations
Send invitations
GET
/v1/invitations/{id}
Retrieve an invitation
POST
/v1/invitations/{id}/respond
Attendee response
Object shape
The invitation tracks an attendee's lifecycle for one event — email delivery, response status, ICS sequence number.
| Field | Type | Description | |
|---|---|---|---|
| id | string | Prefixed inv_. | |
| event_id | string | Associated event. | |
| organizer_user_id | string | Event organizer. | |
| attendee_email | string | Attendee email. | |
| attendee_name | string? | Display name. | |
| attendee_user_id | string? | Set if the attendee is also a ChronaPilot user. | |
| response_token | string | Unique token for response URLs. | |
| status | string | email_queued, email_sent, email_delivered, opened, responded, bounced. | |
| email_type | string | invite, update, cancel. | |
| ical_sequence | integer | RFC 5545 SEQUENCE. | |
| responded_at | datetime? | When the attendee responded. | |
| unsubscribed | boolean | True if the attendee opted out. |
Send invitations
HTTP
POST /v1/invitations
JSON
{
"event_id": "evt_1abc2def3ghi",
"attendees": [
{"email": "sarah@example.com", "name": "Sarah Chen"},
{"email": "doctor@smiledental.com", "name": "Dr. Smith"}
]
}Each attendee gets an ICS-attached email (delivered via Azure Communication Services) plus an in-app push if they're also a ChronaPilot user.
Retrieve
HTTP
GET /v1/invitations/{id}Attendee response
HTTP
POST /v1/invitations/{id}/respondJSON
{ "status": "accepted" }status ∈ accepted | declined | tentative. The endpoint can also be hit by the attendee with the response_token query parameter — used by the email's accept/decline links.