---
title: "Create a site"
method: POST
path: "/v1/vehicles/{vehicleId}/sites/{name}"
tags: ["Site Management"]
---

# Create a site

`POST /v1/vehicles/{vehicleId}/sites/{name}`

## Request

- Base URL: `https://api.polymathrobotics.dev`
- URL: `https://api.polymathrobotics.dev/v1/vehicles/{vehicleId}/sites/{name}`
- Auth: HTTP bearer

Creates a new site for vehicle operation.

## Path parameters

- `vehicleId` string, required
- `name` string, required

## Request body

- WriteSiteRequest: Base for request bodies: unknown fields are rejected instead of silently dropped.
  - `boundary` SiteGeoPoint[], required: Boundary vertices of the site in WGS84 lat/lon.
    - `latitude` number, required: Latitude
    - `longitude` number, required: Longitude

## Response `201`

Confirmation that the site was created.

- WriteSiteResponse
  - `status` 'success', required: JSend status.
  - `message` string, required: Human-readable message, propagated from the ROS service.

## Other responses

- `400`: Site failed server-side validation
- `409`: A site with this name already exists
- `422`: Request body failed validation
- `500`: Internal server error

## Changes

- **2026-09-09** `7bb062ddb622`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/polymathrobotics/apis/polymath-api/changes/v1/vehicles/:vehicleId/sites/:name/post.md)

---

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