Locations
Sites, pits and zones your machines are assigned to.
Base path /api/v1/locations on https://trydozer.com. Authenticate with Authorization: Bearer $DASH_API_KEY and name the project with the Project-ID header. Writes are validated in declared mode; an operation this resource does not declare answers 405 operation_not_supported.
List locations
GET /api/v1/locations
curl "https://trydozer.com/api/v1/locations?type=pit" \
-H "Authorization: Bearer $DASH_API_KEY" \
-H "Project-ID: pr_northpit"Show me the locations filtered by typedata_query {
"collection": "locations",
"where": {
"type": "pit"
}
}Returns a paginated list of location objects, newest first.
{
"object": "list",
"data": [
{
"object": "location",
"id": "obj_123",
"name": "Dominion Cut",
"type": "pit",
"pit": "Dominion Cut",
"pit_count": 1,
"region": "Yukon",
"created_at": "2026-07-25T12:00:00.000Z",
"updated_at": "2026-07-25T12:00:00.000Z"
}
],
"has_more": false,
"next_cursor": null
}Parameters
| Parameter | Type | Kind | Description |
|---|---|---|---|
type | string | filter | What kind of place it is — pit, shop or yard. |
status | string | filter | Whether the location is still in use — active or inactive. A location created from chat defaults to active. |
pit | string | filter | Pit name, when the pit is named differently from the site. |
q | string | search | Free-text search across name. |
sort | string | sort | One of name, pit_count; prefix with - to reverse. |
limit | number | page | Rows to return, 1–100. Defaults to 20. |
cursor | string | page | next_cursor from the previous page. |
Retrieve a location
GET /api/v1/locations/a60h-12
curl "https://trydozer.com/api/v1/locations/a60h-12" \
-H "Authorization: Bearer $DASH_API_KEY" \
-H "Project-ID: pr_northpit"Open the location {id}data_get {
"collection": "locations",
"object_id": "a60h-12"
}Returns the location object.
{
"object": "location",
"id": "obj_123",
"name": "Dominion Cut",
"type": "pit",
"pit": "Dominion Cut",
"pit_count": 1,
"region": "Yukon",
"created_at": "2026-07-25T12:00:00.000Z",
"updated_at": "2026-07-25T12:00:00.000Z"
}Parameters
| Parameter | Type | Kind | Description |
|---|---|---|---|
id | string | path | The location's id or slug. |
Create a location
POST /api/v1/locations
curl -X POST "https://trydozer.com/api/v1/locations" \
-H "Authorization: Bearer $DASH_API_KEY" \
-H "Project-ID: pr_northpit" \
-H "Content-Type: application/json" \
-d '{"name":"Dominion Cut","type":"pit","status":"active","region":"Yukon"}'Create a new locationdata_set {
"collection": "locations",
"object_id": "a60h-12",
"data": {
"name": "Dominion Cut",
"type": "pit",
"status": "active",
"region": "Yukon"
}
}Returns the location object.
{
"object": "location",
"id": "obj_123",
"name": "Dominion Cut",
"type": "pit",
"pit": "Dominion Cut",
"pit_count": 1,
"region": "Yukon",
"created_at": "2026-07-25T12:00:00.000Z",
"updated_at": "2026-07-25T12:00:00.000Z"
}Parameters
| Field | Type | Required | Description |
|---|---|---|---|
name | string | no | Display name of the site, pit or zone (e.g. "Dominion Cut"). |
type | string | no | What kind of place it is — pit, shop or yard. |
pit | string | no | Pit name, when the pit is named differently from the site. |
pit_count | number | no | Number of pits at this location. Rows with type "pit" and no pit_count count as 1. |
status | string | no | Whether the location is still in use — active or inactive. A location created from chat defaults to active. |
region | string | no | Wider area or district the site sits in (e.g. a mining district or state). |
Update a location
PATCH /api/v1/locations/a60h-12
curl -X PATCH "https://trydozer.com/api/v1/locations/a60h-12" \
-H "Authorization: Bearer $DASH_API_KEY" \
-H "Project-ID: pr_northpit" \
-H "Content-Type: application/json" \
-d '{"name":"name","type":"type","pit":"pit"}'Update the location {id}data_set {
"collection": "locations",
"object_id": "a60h-12",
"data": {
"name": "name",
"type": "type",
"pit": "pit"
}
}Returns the location object.
{
"object": "location",
"id": "obj_123",
"name": "Dominion Cut",
"type": "pit",
"pit": "Dominion Cut",
"pit_count": 1,
"region": "Yukon",
"created_at": "2026-07-25T12:00:00.000Z",
"updated_at": "2026-07-25T12:00:00.000Z"
}Parameters
| Field | Type | Required | Description |
|---|---|---|---|
name | string | no | Display name of the site, pit or zone (e.g. "Dominion Cut"). |
type | string | no | What kind of place it is — pit, shop or yard. |
pit | string | no | Pit name, when the pit is named differently from the site. |
pit_count | number | no | Number of pits at this location. Rows with type "pit" and no pit_count count as 1. |
status | string | no | Whether the location is still in use — active or inactive. A location created from chat defaults to active. |
region | string | no | Wider area or district the site sits in (e.g. a mining district or state). |
What comes back (read-only)
Every location carries the envelope below. This resource declares no server-owned fields beyond it.
| Field | Type | Description |
|---|---|---|
object | string | Always location. |
id | string | Stable object id. Also accepted in place of slug on any path. |
slug | string | URL-safe name, unique within the collection. |
created_at | string | ISO-8601 timestamp of the first write. |
updated_at | string | ISO-8601 timestamp of the most recent write. The cursor sorts on this. |
Errors
Failures use { error: { type, code, message, param } }. The full code table is generated at Error Codes.