---
title: "Coordinate-reference-system sanity check (see module docs)."
method: POST
path: "/geodata/validate"
tags: ["compliance"]
---

# Coordinate-reference-system sanity check (see module docs).

`POST /geodata/validate`

## Request

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

## Request body

- ValidateGeodataRequest: Doc-only mirror of the `/geodata/validate` request body.
  - `coordinates` GeodataCoordinate[], required: A sample of the dataset's raw coordinates. A few dozen is plenty: the check is about ranges and spans, not volume.
    - `x` number, double, required: First ordinate, in the dataset's OWN units, not necessarily degrees.
    - `y` number, double, required: Second ordinate, in the dataset's OWN units, not necessarily degrees.
  - `declared_crs` string, required: The CRS the dataset claims, e.g. `"EPSG:4326"` or `"EPSG:32610"`.

## Response `200`

Whether the declaration and the coordinates agree

- ValidateGeodataResponse: Doc-only mirror of [`sn_crs::ValidateOutput`].
  - `extent` GeodataExtent, required: Doc-only mirror of [`sn_crs::Extent`].
    - `max_x` number, double, required
    - `max_y` number, double, required
    - `min_x` number, double, required
    - `min_y` number, double, required
  - `interpreted_as` string, required: The CRS family the declaration was understood as.
  - `problems` string[], required: Plain-language findings, most important first. Empty when consistent.
  - `suggestions` string[], required: What the numbers look like when the declaration does not fit.
  - `verdict` string, required: `consistent`, `suspect` or `impossible`.

## Other responses

- `400`: Empty or non-finite coordinate sample
- `401`: Missing or invalid API key
- `429`: Quota or rate limit exceeded

---

[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)
