---
title: "Get Camera Zones"
method: GET
path: "/cameras/{camera_id}/zones"
tags: ["cameras"]
---

# Get Camera Zones

`GET /cameras/{camera_id}/zones`

## Request

- Base URL: `https://api.verdun.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.verdun.ai/cameras/{camera_id}/zones`
- Auth: HTTP bearer

## Path parameters

- `camera_id` string, required

## Response `200`

Successful Response

- GetCameraZonesResponse
  - `zones` IgnoreZoneModel[], required: All ignore zones configured for the camera.
    - `name` string, required: Human-readable name of the zone.
    - `points` IgnoreZonePoint[], required: Polygon vertices as percentages of the frame. Minimum 3 points.
      - `x` number, required: X coordinate as a percentage (0-100) of the frame width.
      - `y` number, required: Y coordinate as a percentage (0-100) of the frame height.
    - `rag_context` string, nullable: Optional context passed to the AI pipeline for this zone.
    - `ignore` boolean: Whether detections inside this zone are ignored.
    - `id` string, uuid, required: The zone ID.
    - `camera_id` string, uuid, required: The camera this zone belongs to.
  - `revision` string, required: Opaque snapshot revision to send as expected_revision when replacing zones.
  - `display_rotation` integer: The camera's display rotation (degrees CCW, 0 or 180). Zone points are percent of the frame in the ROTATED (upright) space, i.e. the picture as shown after this rotation; a clip recorded before the rotation took effect carries no tag and shows the recorded frame, so its zones need the same turn to line up.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/verdun/apis/verdun-api.md) - [All operations](https://skmtc.dev/verdun/apis/verdun-api/llms.txt) - [OpenAPI document](https://skmtc.dev/verdun/apis/verdun-api/revisions/a19366be50a3?raw)
