List upcoming open appointment slots in a state.
Searches the public roster for open slots, optionally narrowed by appointment type and/or provider. Results are ordered earliest-first and bounded by the `horizonDays` and `limit` windows. Responses are publicly cacheable (max-age 60s) and support `ETag`/`If-None-Match`.
Searches the public roster for open slots, optionally narrowed by
appointment type and/or provider. Results are ordered earliest-first and
bounded by the horizonDays and limit windows. Responses are publicly
cacheable (max-age 60s) and support ETag/If-None-Match.
Path Parameters
Required US state to search, as a 2-letter code or full state name
(case-insensitive, e.g. CA or California).
Optional appointment-type id (from /v1/appointment-types) to filter
slots to. An unknown id yields an empty slots list.
Optional provider slug to restrict results to a single provider.
How many days ahead to search, from now. Defaults to 14, clamped to the 1–30 range.
Maximum number of slots to return. Defaults to 50, clamped to the 1–200 range.
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/v1/availability"{
"appointmentType": 0,
"nextAvailable": "2026-06-10T15:00:00Z",
"provider": "string",
"slots": [
{
"providerSlug": "jane-doe-md",
"startTime": "2026-06-10T15:00:00Z"
}
],
"state": "CA"
}{
"code": "SPONSOR_NOT_COVERED",
"message": "invalid state code: ZZ"
}{
"code": "SPONSOR_NOT_COVERED",
"message": "invalid state code: ZZ"
}List bookable appointment types across the public provider roster. GET
Returns the distinct enabled appointment types, each annotated with the US states it is offered in and whether new patients may book it. Pass `state` to restrict the catalog (and each type's reported `states`) to a single state. Responses are publicly cacheable and support `ETag`/`If-None-Match`.
Provider directory get by slug GET
Next Page