# Monitors

> Monitors endpoints of the StatusTick REST API: list monitors, create a monitor, locations a monitor can be checked from, check a target once without saving it.

## List monitors

`GET /v1/monitors`

## Create a monitor

`POST /v1/monitors`

Needs a `READ_WRITE` key.

## Locations a monitor can be checked from

`GET /v1/monitors/locations`

The public locations with a running drone (one per zone), then your organization's private locations. Use the `id` values in a monitor's `locationIds` setting. `BROWSER` monitors take the locations of `GET /v1/monitors/browser-zones`.

## Check a target once without saving it

`POST /v1/monitors/test`

Needs a `READ_WRITE` key. One check of an unsaved target from one location; nothing is stored. 10 tests a minute.

## Move monitors to a group

`POST /v1/monitors/bulk/group`

Needs a `READ_WRITE` key. A null or blank `group` takes the monitors out of their groups. All of them change, or none.

## Add and remove tags

`POST /v1/monitors/bulk/tags`

Needs a `READ_WRITE` key. All of the monitors change, or none.

## Change the interval or locations of monitors

`POST /v1/monitors/bulk/update`

Needs a `READ_WRITE` key. The rules of single updates apply; a refusal names the first monitor refused and nothing changes.

## Mute monitors

`POST /v1/monitors/bulk/mute`

Needs a `READ_WRITE` key. Muted monitors keep checking and opening incidents but send no alert. A null `until` mutes until unmuted.

## Unmute monitors

`POST /v1/monitors/bulk/unmute`

Needs a `READ_WRITE` key.

## Get a monitor

`GET /v1/monitors/{monitorId}`

## Change name, target, type or interval

`PATCH /v1/monitors/{monitorId}`

Needs a `READ_WRITE` key. Leave out the fields you do not change.

## Delete a monitor

`DELETE /v1/monitors/{monitorId}`

Needs a `READ_WRITE` key.

## Change check settings

`PATCH /v1/monitors/{monitorId}/settings`

Needs a `READ_WRITE` key. Leave out the settings you do not change.

## Change a monitor and its settings in one call

`PUT /v1/monitors/{monitorId}/edit`

Needs a `READ_WRITE` key from an owner or admin. Send any of `monitor` (as in `PATCH /v1/monitors/{monitorId}`), `settings` (as in `PATCH /v1/monitors/{monitorId}/settings`), `browser` or `database`; leave out what you do not change. The audit log gets one `monitor.updated` entry listing the fields that changed.

## Pause a monitor

`POST /v1/monitors/{monitorId}/pause`

Needs a `READ_WRITE` key. No checks run until it is resumed.

## Resume a paused monitor

`POST /v1/monitors/{monitorId}/resume`

Needs a `READ_WRITE` key.

## Set the vendors a monitor depends on

`PUT /v1/monitors/{monitorId}/vendors`

Needs a `READ_WRITE` key. The list replaces the old one; an empty list removes them all. The monitor's incidents show these vendors first as a possible cause. Vendor ids are those of `GET /v1/vendors`.

## Change a database check's connection

`PUT /v1/monitors/{monitorId}/database`

Needs a `READ_WRITE` key. Only for `POSTGRES`, `MYSQL`, `REDIS` and `MONGODB` monitors. Replaces the connection, credentials and query; send `********` as `password` to keep the stored one.
