Bookings API
The appointments people book through your Calendar Hub pages, read over REST: one booking by its id, or a page of them by date, organizer, event type or the email of the person who booked. It uses the same API keys and the same base URL as the Constituents and Events APIs, and the same field names as the booking webhooks, which tell you the moment a booking is made, moved, canceled or marked a no-show.
Authentication
Use the same key as the other APIs (Subscription Settings -> API Keys, team admins only), sent as a bearer token:
Authorization: Bearer argenta_sk_...
The base URL is https://argentasoftware.com/api/v1. These are read endpoints, so a
read-only key is enough. Every booking returned belongs to your own account, whoever it is with.
Endpoints
| Method & path | What it does |
|---|---|
GET /bookings/{id} | One booking still on the calendar. |
GET /bookings | A page of bookings still on the calendar, latest start first. |
Bookings are read-only here: people book, move and cancel through your Calendar Hub pages, and staff
through Argenta. A canceled booking leaves the calendar, so it is not returned; the
booking.canceled webhook carries it at the moment it is canceled.
Search parameters
| Parameter | Meaning |
|---|---|
startDate, endDate | Appointment dates, inclusive, on the organizer's own clock (2026-11-01). Either may be left out. |
userId | Only this organizer's bookings (FkUser). |
eventTypeId | Only bookings of this event type (FkEventType). |
email | Only bookings made with this email address. |
page, pageSize | Paging. pageSize is 25 unless you ask for up to 100. |
Read bookings
curl "https://argentasoftware.com/api/v1/bookings?startDate=2026-11-01&endDate=2026-11-30" \
-H "Authorization: Bearer argenta_sk_..."
{
"totalCount": 1,
"page": 1,
"pageSize": 25,
"items": [
{
"PkItem": 45672,
"FkTeam": 6,
"Status": "scheduled",
"FkUser": 37,
"OrganizerName": "Allistair Wonderland",
"FkCalendar": 4,
"FkEventType": 130,
"EventTypeName": "60 Min Appointment",
"StartUtc": "2026-11-18T14:00:00Z",
"EndUtc": "2026-11-18T15:00:00Z",
"StartDateTime": "2026-11-18T09:00:00",
"EndDateTime": "2026-11-18T10:00:00",
"TimeZoneId": "America/New_York",
"ParticipantName": "Jane Smith",
"ParticipantEmail": "[email protected]",
"ParticipantPhone": "5551234567",
"ParticipantTimeZoneId": "America/Chicago",
"OrganizationName": "Smith Family Foundation",
"ItemLocation": null,
"VideoProvider": "Zoom",
"VideoJoinUrl": "https://zoom.us/j/1234567890",
"IsNoShow": false,
"DateCreated": "2026-11-02T16:41:09"
}
]
}
The fields
| Field | Meaning |
|---|---|
PkItem | The booking's id. |
FkUser, OrganizerName | The organizer the booking is with. |
FkCalendar | The calendar it was booked on. |
FkEventType, EventTypeName | The event type that was booked. |
StartUtc, EndUtc | The appointment in UTC. |
StartDateTime, EndDateTime, TimeZoneId | The same times on the organizer's own clock, and that clock's time zone. |
ParticipantName, ParticipantEmail, ParticipantPhone, OrganizationName | The person who booked, as they entered themselves. ParticipantName is null if staff have since rewritten the appointment's description. |
ParticipantTimeZoneId | The time zone the person who booked was shown times in. |
ItemLocation, VideoProvider, VideoJoinUrl | Where it happens: a place, or a Google Meet or Zoom link once one has been made. |
IsNoShow | Staff marked that the person who booked did not come. |
Errors
| Status | Code | When |
|---|---|---|
| 401 | unauthorized | Missing, malformed, revoked, or unknown key. |
| 404 | not_found | No booking with that id on your account's calendars. |
| 429 | rate_limited | Slow down and retry with backoff. |
Rate limits
The same shared limit as every other /api/v1 endpoint, counted per key. To follow
bookings as they happen, subscribe to the booking webhooks rather than polling this list.