---
title: "Request a boundary be normalized. Does not automatically create a reporting unit."
method: POST
path: "/boundary"
---

# Request a boundary be normalized. Does not automatically create a reporting unit.

`POST /boundary`

## Request

- Base URL: `https://app.chloris.earth/api`
- URL: `https://app.chloris.earth/api/boundary`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/chloris/apis/chloris-platform-api/docs/boundary/post.ts> (a function with typed inputs; its response is checked against the schema)

## Request body

- object
  - `organizationId` string: organization ID
  - `uploadId` string: Optional identifier for this upload, can be any alphanumeric (plus dash) string up to 64 characters. If not provided, a random UUID7 will be used.
  - `uploadPath` string: Path to the boundary file upload, may be a http(s) or S3 path. If upload is a multi-file shapefile, only the .shp file is required.
  - `excludeGeojsonPath` string: Path to a normalized geojson boundary that should be excluded from the first. Recommended when uploading a control boundary to prevent overlaps.

## Response `200`

Success

- object
  - `uploadId` string: The upload ID

## Other responses

- `400`: Bad Request
- `403`: Forbidden

---

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