Explain a slot
Why one start can or can't be booked right now, host by host, decided the same way a booking is. For support and debugging: it says when a host is busy, so don't show it to attendees.
bearerAuthAuthorizationBearer <token>A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.
event_type*stringThe event type's id or uid.
start*stringAn ISO 8601 instant with an offset.
host?stringOnly this host (id or uid).
duration_minutes?integer5 <= value <= 1440attributes?stringA JSON object narrowing a pool, such as {"licensed_in":"CA"}.
Coss-Version?"2026-10-10"The API version (a date) to use for this request. Defaults to your organization's version, pinned to the latest one when it first used the API and upgraded from the dashboard. The SDK always sends the version it was built for.
"2026-10-10"Whether it can be booked, and why.
application/json- response
- response
- …
object*"scheduling.slot_explanation""scheduling.slot_explanation"start*stringThe start asked about.
end*stringWhen it would end.
available*booleanWhether it can be booked right now.
reason*|Why it can't: not_on_grid, too_soon, outside_booking_window, calendar_unverified, outside_availability, host_busy, already_claimed, limit_reached or session_full, or event_type_inactive or no_hosts. null when it can. With several hosts refused, the first one's reason: see hosts.
hosts*array<>Everyone who could take this event type, narrowed by the query.
import { Coss } from "coss";const coss = new Coss({ apiKey: process.env.COSS_API_KEY, baseUrl: "https://api.coss.com",});const { data, error } = await coss.scheduling.slots.explain({ value: "evtype_01kd2m9a0b1c2d3e4f5g6h7j8m",}, { start: "2027-01-04T15:00:00.000Z",});{ "object": "scheduling.slot_explanation", "start": "2027-01-04T15:00:00.000Z", "end": "2027-01-04T15:30:00.000Z", "available": false, "reason": "host_busy", "hosts": [ { "host": "host_01kd2m9a0b1c2d3e4f5g6h7j8m", "role": "member", "available": false, "reason": "host_busy", "calendar_reason": null } ]}