PrimeCal Reservations Availability v2
primecal_reservations_availability_list_v2 returns reservation slots in canonical UTC while preserving the caller's logical timezone in a top-level timezone field.
Request Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
resourceTypeId | number | Yes | Scoped resource type to evaluate. |
resourceId | number | No | Limits the result to one concrete resource. |
date | string | No | Local-day alias in YYYY-MM-DD format. |
from | string | No | ISO 8601 timestamp. Required when date is omitted. |
to | string | No | ISO 8601 timestamp. Defaults to from + 1 day. |
userTimezone | string | No | Optional IANA timezone override for logical slot generation. |
Timezone Rules
- Response timestamps always end in
Z. - Every response includes
timezone. userTimezonechanges logical day boundaries and slot generation only.- When
dateis used, PrimeCal expands that local day in the requested logical timezone and then returns the resulting UTC slot timestamps.
Example Any-Resource Request
{
"resourceTypeId": 13,
"from": "2032-04-20T00:00:00.000Z",
"to": "2032-04-21T00:00:00.000Z",
"userTimezone": "Europe/Budapest"
}
Example Response
{
"organisation": {
"id": 9,
"name": "North Clinic",
"slug": "north-clinic",
"color": "#0ea5e9"
},
"resourceType": {
"id": 13,
"name": "Consultation Room"
},
"mode": "any",
"timezone": "Europe/Budapest",
"from": "2032-04-20T00:00:00.000Z",
"to": "2032-04-21T00:00:00.000Z",
"resources": [{ "id": 40, "name": "Room A", "capacity": 1 }],
"slots": [
{
"startTime": "2032-04-20T07:00:00.000Z",
"endTime": "2032-04-20T07:30:00.000Z",
"available": true,
"availableQuantity": 1,
"resourceIds": [40]
}
]
}
DST Guidance
- Prefer
userTimezonefor local-day reasoning around DST boundaries. - PrimeCal computes slot boundaries in the logical timezone first, then converts them to UTC.
- Clients should not add or subtract offsets manually.
Screenshot Placeholder
TODO: add Chrome MCP screenshot of a reservation availability response and the corresponding UI under docs/assets/agents/.