---
title: "Get monthly availability for an offering"
method: GET
path: "/shop/offering-availability"
tags: ["OfferingAvailability"]
---

# Get monthly availability for an offering

`GET /shop/offering-availability`

Returns one entry per calendar day in the month containing `date`,
indicating whether the supplied offering is bookable and whether
any availability rule covers the day at all. Intended for
powering calendar-month pickers in booking UIs without iterating
every individual slot.

The check honours every `available` rule on the offering, then
subtracts `unavailable` rules; if any window survives for a given
day the day's `is_available` is `true`.

Requires the `RESERVATIONS_VIEW` permission on the offering's
site.

## Query parameters

- `date` string, date, required
- `offering_type` 'appointment' | 'area_booking' | 'package' | 'session', required
- `offering_id` string, required

## Response `200`

Per-day availability summary for every day in the targeted month.

- object
  - `data` OfferingAvailabilityDay[], required — One entry per day of the month.
    - `date` string, date, required — ISO 8601 calendar date in the offering's timezone.
    - `is_available` boolean, required — Whether the offering has at least one bookable window left anywhere within the day, factoring in `unavailable` availability rules.
    - `is_offered` boolean, required — Whether any `available` rule covers the day at all. If false, the offering is not sold on this date regardless of `is_available`.

## Other responses

- `401` — The user is unauthenticated
- `403` — The authenticated user does not have permission.
- `404` — The resource couldn't be found
- `422` — The request didn't pass validation

---

[API](https://skmtc.dev/try/apis/trybe-api.md) · [All operations](https://skmtc.dev/try/apis/trybe-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/try/trybe-api/revisions/f37f92702da5/schema)
