---
title: "Put Availability"
method: PUT
path: "/api/v1/sites/{site_id}/availability"
---

# Put Availability

`PUT /api/v1/sites/{site_id}/availability`

## Request

- Base URL: `https://trovastorage.it` (the document declares no server; this is the origin it was published from)
- URL: `https://trovastorage.it/api/v1/sites/{site_id}/availability`
- Auth: one of:
  - API key in header `X-Access-Token`
  - HTTP bearer

The operator declares how full the centre is and how much is left of
each size. The whole declaration every time. On a centre still in a claim
it is kept as a draft and declared when the claim is approved.

## Path parameters

- `site_id` string, uuid, required

## Request body

- SiteAvailabilityUpdate: What an operator declares about a centre's space (0036). The whole declaration every time: a field sent as null, or left out, is no longer declared.
  - `occupancy_pct` integer, nullable
  - `small` 'available' | 'limited' | 'full', nullable
  - `medium` 'available' | 'limited' | 'full', nullable
  - `large` 'available' | 'limited' | 'full', nullable

## Response `200`

Successful Response

- SiteAvailabilityResponse: A centre's declared space, as its operator reads and edits it.
  - `site_id` string, uuid, required
  - `name` string, required
  - `published` boolean, required
  - `occupancy_pct` integer, nullable, required
  - `sizes` SizeAvailability[], required
    - `size` 'small' | 'medium' | 'large', required
    - `min_m2` integer, required
    - `max_m2` integer, nullable, required
    - `status` 'available' | 'limited' | 'full', nullable, required
  - `updated_at` string, date-time, nullable, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/trovastorage/apis/stock-your-inventory.md) · [All operations](https://skmtc.dev/trovastorage/apis/stock-your-inventory/llms.txt) · [OpenAPI document](https://skmtc.dev/trovastorage/apis/stock-your-inventory/revisions/c75f591a585c?raw)
