---
title: "Mark a day as unavailable for an offering"
method: POST
path: "/shop/offering-availability/add-day-unavailability"
tags: ["OfferingAvailability"]
---

# Mark a day as unavailable for an offering

`POST /shop/offering-availability/add-day-unavailability`

Creates (or no-ops on, if one already exists) a one-day
"unavailable" availability rule on the offering. Equivalent to
going into the offering's availability calendar and toggling the
targeted day off.

Idempotent: if the same `(date, offering)` already has an
unavailable rule, the existing rule is returned without modification.

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

## Request body

- object
  - `date` string, date, required — ISO 8601 calendar date to mark unavailable, in the offering's timezone.
  - `offering_type` 'appointment' | 'area_booking' | 'package' | 'session', required — The offering type the `offering_id` belongs to.
  - `offering_id` string, required — ID of the offering to update.

## Response `204`

The day was successfully marked unavailable.

## 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)
