# Sửa monitor

`PUT /service/@id/uptime/monitors/@monitor` · Tino Uptime, token đăng nhập của chủ dịch vụ

Chỉ gửi trường cần đổi, body JSON. `settings` gửi đủ trường bắt buộc của loại; với `http`, `keyword`: không gửi `headers`, `body`, `basic_auth` thì giữ nguyên, `headers: {}` hoặc `body: ""` để xoá, `clear_basic_auth: true` để xoá Basic auth. `enabled: false` tắt monitor.

## HTTP request

| Mục | Giá trị |
| --- | --- |
| URL | `https://api.tino.vn/service/@id/uptime/monitors/@monitor` |
| Method | `PUT` |
| Xác thực | token đăng nhập của chủ dịch vụ Tino Uptime (`Authorization: Bearer <token>`); gateway `/v1` chưa mở Tino Uptime |
| Content-Type | `application/json` |

## Tham số

| Tên | Vị trí | Kiểu | Bắt buộc | Mô tả |
| --- | --- | --- | --- | --- |
| `id` | đường dẫn | int | có | ID dịch vụ Tino Uptime |
| `monitor` | đường dẫn | string | có | ID monitor (UUID, `id` ở danh sách monitor) |
| `name` | body | string | không | Tên monitor, 1–200 ký tự |
| `interval_s` | body | int | không | Chu kỳ kiểm (giây), 30–86400, không dưới `limits.min_interval_s` của gói |
| `locations` | body | array | không | Vị trí dò, tối đa 10, trong `limits.locations` của gói (`vn-cmc`, `vn-vt`, `intl`) |
| `enabled` | body | boolean | không | `false` tắt monitor (giữ cấu hình), `true` bật lại |
| `settings` | body | object | không | Loại và đích kiểm: `type` là `http`, `keyword`, `ssl`, `domain`, `ping`, `tcp`, `dns` hoặc `heartbeat`, trường theo loại ở [Bắt đầu với Tino Uptime](/docs/uptime-start#loai-monitor) |
| `international_critical` | body | boolean | không | `true`: chỉ điểm dò quốc tế lỗi cũng tính là down; mặc định `false` |

## Example request

```bash
curl -X PUT "https://api.tino.vn/service/100002/uptime/monitors/3f6c2a10-8b1e-4c5d-9a7f-2e4b6c8d0a11" \
  -H "Authorization: Bearer $TINO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "interval_s": 120
}'
```

`$TINO_TOKEN` là token đăng nhập của chủ dịch vụ Tino Uptime. Tham số đường dẫn trong ví dụ là giá trị mẫu.

SDK ([SDK & Ví dụ](/docs/sdk)): chưa có hàm riêng, dùng `client.request("PUT", "/service/@id/uptime/monitors/@monitor")`.

## Example response

```json
{
 "data": {
  "id": "3f6c2a10-8b1e-4c5d-9a7f-2e4b6c8d0a11",
  "name": "Website chính",
  "interval_s": 120,
  "locations": [
   "vn-cmc",
   "vn-vt",
   "intl"
  ],
  "enabled": true,
  "paused_until": null,
  "snoozed_until": null,
  "disabled_reason": null,
  "verified": true,
  "created_at": "2026-10-24T08:00:00+07:00",
  "settings": {
   "type": "http",
   "url": "https://example.com/",
   "method": "GET",
   "expected_status": [
    200
   ],
   "follow_redirects": true,
   "header_names": [],
   "basic_auth_set": false,
   "body_set": false
  },
  "international_critical": false,
  "state": "up",
  "state_since": "2026-10-24T09:15:00+07:00",
  "last_check_at": "2026-10-24T10:30:00+07:00",
  "last_latency_ms": 182,
  "last_error_kind": null,
  "current_incident_id": null,
  "ssl_expires_at": "2027-01-15T07:00:00+07:00",
  "domain_expires_at": null,
  "uptime_30d": 99.98
 }
}
```

Mẫu dựng theo OpenAPI của Tino Uptime (Tino chuyển tiếp nguyên câu trả lời trong `data`), giá trị là ví dụ.
