---
title: "Create a zone"
method: POST
path: "/shop/zones"
tags: ["Zones"]
---

# Create a zone

`POST /shop/zones`

Creates a new `Zone` at a site. Requires the `SETTINGS_MANAGE`
permission on the target site.

## Request body

- object
  - `name` string, required — Display name for the new zone. Plain text only. Zone names do not need to be unique within a site, but duplicates can make the UI confusing — pick distinct labels where possible.
  - `site_id` string, uuid, required — ID of the site to create this zone under. The caller's API key must have access to the site and the `SETTINGS_MANAGE` permission on it.
  - `organisation_id` string, uuid — Optional organisation to attribute the zone to. Defaults to the caller's primary organisation when omitted.

## Response `201`

A single `Zone`.

- object
  - `data` Zone, required — A `Zone` is a logical area within a site used to group resources for reservations and reporting (e.g. `Pool Deck`, `Sun Loungers`, `Garden Cabanas`). Zones are referenced by area-booking types, practitioners, and other bookable resources to constrain where they live or work. Zones are scoped to a single site; the same zone name may exist independently at multiple sites.
    - `id` string, object-id, required — Unique identifier for the zone.
    - `name` string, required — Display name for the zone, shown wherever zones are listed or filtered. Plain text only.
    - `organisation_id` string, uuid, required — ID of the organisation that owns this zone. Inherited from the site on create.
    - `site_id` string, uuid, required — ID of the site this zone belongs to.

## Other responses

- `401` — The user is unauthenticated
- `403` — The authenticated user does not have permission.
- `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)
