Uptimeify Docs
MonitorsTcp monitors

Update TCP Monitor

Updates a TCP monitor.

PATCH /api/tcp-monitors/:tcpMonitorPublicId

Authentication

Requires a valid session.

  • Header: Authorization: Bearer <token>

Parameters

  • tcpMonitorPublicId (Path, required): TCP monitor public UUID.

Request Body

All fields are optional.

{
 "name": "Redis Primary",
 "hostname": "redis.example.com",
 "port": 6379,
 "status": "paused",
 "checkInterval": 60,
 "timeoutSeconds": 30,
 "allowedCheckCountryCodes": ["de", "ch"],
 "config": {
  "expectBanner": "+PONG"
 }
}

Notes

  • status accepts active, maintenance, disabled, paused, inactive.
  • paused and inactive are normalized to disabled.
  • port, if provided, must be an integer between 1 and 65535.
  • allowedCheckCountryCodes is normalized to uppercase ISO codes (e.g. DE, US). Empty lists become null.
  • config only accepts the expectBanner key (merged into the existing stored config). There is no sshConfig-style alias and no credential fields — TCP monitors carry no credentials. If omitted, the stored config is not changed.
  • Users with readonly role can only change status.

cURL

curl -X PATCH "https://YOUR_DOMAIN/api/tcp-monitors/44444444-4444-4444-8444-444444444444" \
 -H "Authorization: Bearer $TOKEN" \
 -H "Content-Type: application/json" \
 -d '{
  "status": "disabled"
 }'

Response

{
 "id": 300,
 "publicId": "44444444-4444-4444-8444-444444444444",
 "organizationId": 1,
 "customerId": 10,
 "name": "Redis Primary",
 "hostname": "redis.example.com",
 "port": 6379,
 "status": "disabled",
 "managementType": "managed",
 "checkInterval": 60,
 "timeoutSeconds": 30,
 "notificationEmail": null,
 "notificationPhoneNumber": null,
 "lastCheckedAt": "2026-02-26T12:00:00.000Z",
 "createdAt": "2026-02-26T12:00:00.000Z",
 "updatedAt": "2026-02-26T12:01:00.000Z",
 "config": {
  "expectBanner": "+PONG"
 }
}

Errors

  • 400 TCP monitor ID is required / invalid fields (e.g. invalidPort, invalidConfig, invalidStatus)
  • 401 Unauthorized
  • 403 Forbidden (readonly users may only update status; global supporters cannot update)
  • 404 Not found

On this page