---
title: "`GET /territories`: the signed channel index (`index.json`), byte exact so the detached signature verifies over the response body."
method: GET
path: "/territories"
tags: ["territories"]
---

# \`GET /territories\`: the signed channel index (\`index.json\`), byte exact so the detached signature verifies over the response body.

`GET /territories`

## Request

- Base URL: `https://api.mapmap.ai`
- URL: `https://api.mapmap.ai/territories`
- Auth: one of:
  - HTTP bearer
  - API key in query parameter `api_key`

Each territory in the index carries `data_updated`: the ISO-8601 date
(`YYYY-MM-DD`) of the OSM extract behind its `latest_version`, or `null`
on a channel published before the field existed. The gateway adds
nothing here either; the field is written and signed by `snfactory
publish` (`sn_factory::channel`), so it cannot drift from the
manifests it summarises, and a client can verify it against them.

## Response `200`

The channel index (index.json, exact signed bytes); each territory carries `data_updated`, the ISO-8601 date of the OSM extract behind its latest version (null if unknown)

- object

## Other responses

- `304`: Not modified (If-None-Match matched the BLAKE3 ETag)
- `404`: No update channel configured on this gateway

---

[API](https://skmtc.dev/mapmap/apis/sn-gateway.md) · [All operations](https://skmtc.dev/mapmap/apis/sn-gateway/llms.txt) · [OpenAPI document](https://skmtc.dev/mapmap/apis/sn-gateway/revisions/2293be8b4c38?raw)
