---
title: "Edit a monitor"
method: PATCH
path: "/monitors/{monitorId}"
tags: ["monitors"]
---

# Edit a monitor

`PATCH /monitors/{monitorId}`

## Path parameters

- `monitorId` string, required

## Request body

- object
  - `name` string
  - `type` 'http' | 'ping' | 'pagespeed' | 'hardware' | 'docker' | 'port' | 'game' | 'grpc' | 'websocket' | 'dns' | 'unknown'
  - `url` string
  - `statusWindowSize` number
  - `statusWindowThreshold` number
  - `description` union
    - string
    - ''
  - `interval` number
  - `notifications` string[]
  - `tags` string[]
  - `customUpCodes` number[]
  - `secret` string
  - `ignoreTlsErrors` boolean
  - `useAdvancedMatching` boolean
  - `jsonPath` union
    - string
    - ''
  - `expectedValue` union
    - string
    - ''
  - `matchMethod` union
    - 'equal' | 'include' | 'regex'
    - ''
  - `method` 'GET' | 'HEAD'
  - `port` number
  - `cpuAlertThreshold` number
  - `memoryAlertThreshold` number
  - `diskAlertThreshold` number
  - `tempAlertThreshold` number
  - `gameId` union
    - string
    - ''
  - `grpcServiceName` union
    - string
    - ''
  - `strategy` 'desktop' | 'mobile'
  - `selectedDisks` string[]
  - `group` union
    - string
    - unknown
    - ''
  - `geoCheckEnabled` boolean
  - `geoCheckLocations` string[]
  - `geoCheckInterval` number
  - `dnsServer` string
  - `dnsRecordType` 'A' | 'AAAA' | 'CNAME' | 'MX' | 'TXT' | 'NS'

## Response `200`

OK

- object
  - `success` true, required
  - `msg` string, required
  - `data` Monitor, required
    - `_id` string, required
    - `name` string, required
    - `description` string
    - `type` 'http' | 'ping' | 'pagespeed' | 'hardware' | 'docker' | 'port' | 'game' | 'grpc' | 'websocket' | 'dns' | 'unknown', required
    - `url` string, required
    - `port` number
    - `isActive` boolean, required
    - `interval` number, required
    - `status` 'up' | 'down' | 'paused' | 'initializing' | 'maintenance' | 'breached', required
    - `statusWindowSize` number, required
    - `statusWindowThreshold` number, required
    - `ignoreTlsErrors` boolean, required
    - `useAdvancedMatching` boolean, required
    - `jsonPath` string
    - `expectedValue` string
    - `matchMethod` 'equal' | 'include' | 'regex'
    - `method` 'GET' | 'HEAD', required
    - `notifications` string[], required
    - `tags` string[], required
    - `customUpCodes` number[]
    - `secret` string
    - `cpuAlertThreshold` number, required
    - `memoryAlertThreshold` number, required
    - `diskAlertThreshold` number, required
    - `tempAlertThreshold` number, required
    - `selectedDisks` string[], required
    - `gameId` string
    - `grpcServiceName` string
    - `group` string, nullable
    - `geoCheckEnabled` boolean, required
    - `geoCheckLocations` string[], required
    - `geoCheckInterval` number, required
    - `dnsServer` string
    - `dnsRecordType` 'A' | 'AAAA' | 'CNAME' | 'MX' | 'TXT' | 'NS'
    - `teamId` string, required
    - `userId` string, required
    - `createdAt` string, required
    - `updatedAt` string, required
    - `lastEvaluatedAt` number, required

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal server error

---

[API](https://skmtc.net/bluewave-labs/apis/checkmate-api.md) · [All operations](https://skmtc.net/bluewave-labs/apis/checkmate-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bluewave-labs/checkmate-api/versions/eae6c896648e/schema)
