Documentation menu

← Lists and monitors

API reference

Create a monitor

POST/v1/monitor

Creates a monitor that watches a list.

Permits and cases filed on the list's places are sent as permit.created and case.created to every webhook subscribed to them, within a day of being published. A place added to the list later is watched from when it is added. An item's filter applies to the parcels each permit or case is about. A list that already has a monitor returns it with 200.

Parameters

No parameters.

Request body

listrequiredstring
The id of the list to watch.
activeboolean
Whether the monitor produces events. Defaults to true.

Responses

200
empty
The list's existing monitor, unchanged.
201
monitor object
The monitor.
401
ProblemDetail
credential_missing, credential_invalid or credential_expired. The request has no valid credential.
403
ProblemDetail
scope_missing, person_required, api_key_not_accepted or entitlement_missing. The credential or plan does not allow this request. detail names the reason.
422
ProblemDetail
parameter_invalid, id_malformed or a cursor code. A parameter is missing or invalid. errors lists each one.
429
ProblemDetail
rate_limited. Too many requests. Retry after the Retry-After interval. Nothing is charged.

Example request

curl -X POST 'https://api.placestack.com/v1/monitor' \
  -H "Authorization: Bearer $PLACESTACK_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
  "list": "lst_01h455vb4pex5vsknk084sn02q"
}'

Example response

{
  "object": "monitor",
  "id": "mon_01h455vb4pex5vsknk084sn02q",
  "list": "lst_01h455vb4pex5vsknk084sn02q",
  "active": true,
  "created_at": "2026-09-13T12:00:00Z",
  "updated_at": "2026-09-13T12:00:00Z",
  "href": "/v1/monitor/mon_01h455vb4pex5vsknk084sn02q"
}

Next steps

GET /monitor/{monitor_id}

Retrieve a monitor

Continue