# List departures with live seat counts

`GET /api/v1/availability`

Departures in a date window, with seats that already account for confirmed bookings, pending bookings and seats held in someone else's checkout — the same numbers the storefront calendar shows. The window may not exceed 92 days. Requires the "availability:read" scope.

Scope: `availability:read`

## Parameters

- `experience_id` (query, string) — Only departures for this experience (UUID). Omit to get every experience.
- `from` (query, string, required) — First date in the window (YYYY-MM-DD), inclusive.
- `to` (query, string) — Last date in the window (YYYY-MM-DD), inclusive. Defaults to 30 days after "from". The window may not exceed 92 days.

## Responses

- `200` — The departures in the window. This endpoint is not paginated: has_more is always false.
- `400` — Invalid request — codes "validation_failed" or, on an endpoint that requires one, "idempotency_key_required".
- `401` — Missing, invalid, revoked or expired API key — codes "api_key_missing", "api_key_invalid", "api_key_revoked", "api_key_expired".
- `403` — The API app is off, the plan does not include the API, or the key lacks the required scope — codes "app_not_enabled", "plan_upgrade_required", "insufficient_scope" (the last carries "required_scope").
- `422` — The request was understood but cannot be fulfilled as asked — codes "validation_failed" or "idempotency_key_reused" (the same Idempotency-Key was already used with a different body).
- `429` — Rate limit exceeded — code "rate_limited". See the x-ratelimit-* headers.
- `500` — Something went wrong on our side — code "internal_error".

## Response `200`

- `data` (Departure[], required) — The page of results, in the requested order.
- `has_more` (boolean, required) — True when more results exist after this page. Fetch them with next_cursor.
- `next_cursor` (string | null, required) — Pass this back as ?starting_after= to fetch the next page. Null when has_more is false. Opaque — do not parse it.

## Example

```bash
curl -X GET "https://your-site.awrora.app/api/v1/availability" \
  -H "Authorization: Bearer $AWRORA_API_KEY"
```