/service/@id/uptime/monitorsCreate a monitor
JSON body: name, interval, probe locations and settings for the monitor type. Tino Uptime runs the first check right away and waits up to 10 seconds: the result is in first_check (status: pending past that). A heartbeat monitor's settings.ping_url appears only in this answer. HTTP 201. Over a plan limit (monitor count, interval, location) answers 403 entitlement_exceeded; an internal or unsafe target answers 422 validation_failed (details.reason: blocked_destination); a target checked too often answers 422 target_rate_exceeded.
A Tino Uptime service route: call it with the service owner's sign-in token; the /v1 gateway (app tokens, personal tokens) does not expose Tino Uptime yet. See Getting started with Tino Uptime.
Authentication
Send the token in the header Authorization:
Authorization: Bearer <token>
Tokens that can call it: the Tino Uptime service owner's sign-in token (the tino.vn client area token).
Parameters
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | int | Required | Tino Uptime service ID |
Body (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Required | Monitor name, 1–200 characters |
interval_s | int | Required | Check interval in seconds, 30–86400, not below the plan's `limits.min_interval_s` |
locations | array | Optional | Probe locations, up to 10, within the plan's `limits.locations` (`vn-cmc`, `vn-vt`, `intl`) |
settings | object | Required | Check type and target: `type` is `http`, `keyword`, `ssl`, `domain`, `ping`, `tcp`, `dns` or `heartbeat`, fields per type in [Getting started with Tino Uptime](/en/docs/uptime-start#monitor-types) |
international_critical | boolean | Optional | `true`: a failure seen only by the international probe also counts as down; default `false` |
idempotency_key | string | Optional | 8–128 characters `A-Za-z0-9._:-`: resending the same key and body creates nothing new |
Response
Sample built from the Tino Uptime OpenAPI (Tino relays the answer as is inside data); values are examples.
Error codes
| Error code | Description |
|---|---|
404 · service_not_found, invalid method | The service does not belong to the signed-in account, or is not Tino Uptime. |
404 · service_not_linked | The service is no longer the customer's current Tino Uptime plan. |
403 · account_suspended | The Tino Uptime account is suspended: writes are blocked, GET still works. |
403 · entitlement_exceeded | Over a plan limit; details.resource names the limit. |
422 · validation_failed | Invalid data; details.field names the field. |
502 · network, invalid_response | The connection between Tino and Tino Uptime is interrupted: a Tino-side error, not a token problem. Retry later. |
Errors look like {"error": ["<CODE>"], "message", "details", "request_id"}; every code is in Getting started with Tino Uptime.