GET /api/v1/booking-links/{orgSlug}/{linkSlug}/slots
Returns the slots still open on a booking link between two instants, for at
most 31 days. A slot is open when at least one closer of the link is free on it:
slots already booked, slots in the past and closers at their daily capacity are
left out. The response names no closer.
This endpoint is public: it takes no API key.
| Role in the organization | This endpoint |
|---|
OWNER | Allowed — no key is read |
ADMIN | Allowed — no key is read |
MEMBER | Allowed — no key is read |
| Requirement | Rule for this endpoint |
|---|
| Business role | None |
| Resource scope | The school and link named by the address |
| Participation | None |
| Resource state | The link is active, the school has a sales availability and the link has at least one configured closer |
| Parameter | Type | Description |
|---|
orgSlug | string | The school's public address segment |
linkSlug | string | The booking link's address segment, unique within the school |
| Parameter | Type | Required | Description |
|---|
from | ISO 8601 string | yes | Start of the period |
to | ISO 8601 string | yes | End of the period: after from, at most 31 days later |
curl "$COHORTE_API_BASE_URL/api/v1/booking-links/mike-academy/appel-decouverte/slots?from=2026-10-05T00:00:00.000Z&to=2026-10-12T00:00:00.000Z"
200 OK — the open slots of the period, possibly an empty list.
400 Bad Request — from or to missing or not a date, to not after from, or a period longer than 31 days; code is invalid_request.
404 Not Found — the address serves no booking page: unknown, inactive, or not configured. The three cases are not told apart.
| Field | Type | Nullable | Description |
|---|
success | boolean | no | true for a successful request |
data[].startsAt | ISO 8601 string | no | Call start, in UTC |
data[].endsAt | ISO 8601 string | no | Call end, in UTC |
correlationId | UUID | no | Correlation id for support |
{
"success": true,
"data": [
{"startsAt": "2026-10-05T07:15:00.000Z", "endsAt": "2026-10-05T08:00:00.000Z"},
{"startsAt": "2026-10-05T08:30:00.000Z", "endsAt": "2026-10-05T09:15:00.000Z"}
],
"correlationId": "4c8e7f12-0000-4000-8000-000000000000"
}
- Times are UTC. Show them in the prospect's own time zone; the slots do not
change with it.
- Listing slots holds nothing. A slot listed a second ago can be taken before
you book it: the booking is then refused with
409.