---
title: "Get Zone Groups"
method: GET
path: "/zone-groups"
tags: ["Zone Groups"]
---

# Get Zone Groups

`GET /zone-groups`

## Request

- Base URL: `https://api.smartroutes.io/v2`
- URL: `https://api.smartroutes.io/v2/zone-groups`
- Auth: none declared

Lists the zone groups set up for the depot your API key belongs to. A zone group is a named set of geographic zones. Use it to look up the `id` you pass as `zone_group_id` to `POST /plans/optimise/orders` and `POST /plans/optimise/orders-for-ids`, or to `POST /zone-groups/{id}/bounds/contains` to find which zone a location falls in.

Each entry has `id`, `name`, `created` and `updated`. The zones inside each group are not included. Deleted zone groups are left out, and the list is returned in full, with no paging.

## Response `200`

Successful response

## Other responses

- `403`: Forbidden. Returned for rate-limit exhaustion (`name = FORBIDDEN`, with `details.retry_after_seconds` and `Retry-After` header) and permission gate failures (`name = PERMISSION`). Inspect `name` to disambiguate. Send `x-sr-api-features: rate-limit-429` to receive `429 RATE_LIMIT_EXCEEDED` for the rate-limit case instead, leaving `403` to mean permission failures only — see [API Features](#section/Getting-started/API-Features).
- `429`: Rate limit exceeded (`name = RATE_LIMIT_EXCEEDED`). **Only returned to callers that opt in** with the `x-sr-api-features: rate-limit-429` request header; without it the same condition returns `403` with `name = FORBIDDEN` and an otherwise identical body. See [API Features](#section/Getting-started/API-Features).
- `500`: An unexpected server error occurred. The body carries only `name` and `description`: internal details are never returned.

---

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