# List alert channels

`GET /service/@id/uptime/channels` · Tino Uptime, service owner's sign-in token

The account's alert channels: type (`kind`), masked target (`target`), verification time (`verified_at`), opt-in (`opted_in_at`: a channel without it receives nothing), why it is off (`disabled_reason`).

## HTTP request

| Item | Value |
| --- | --- |
| URL | `https://api.tino.vn/service/@id/uptime/channels` |
| Method | `GET` |
| Authentication | the Tino Uptime service owner's sign-in token (`Authorization: Bearer <token>`); the `/v1` gateway does not expose Tino Uptime yet |
| Content-Type | — (no body) |

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | int | yes | Tino Uptime service ID |
| `limit` | query | int | no | Items per page, default 50, at most 100 |
| `cursor` | query | string | no | `next_cursor` of the previous page; omit for the first page |

## Example request

```bash
curl "https://api.tino.vn/service/100002/uptime/channels" \
  -H "Authorization: Bearer $TINO_TOKEN"
```

`$TINO_TOKEN` is the Tino Uptime service owner's sign-in token. Path parameters in the example are sample values.

SDK ([SDK & examples](/en/docs/sdk)): no dedicated function yet, use `client.request("GET", "/service/@id/uptime/channels")`.

## Example response

```json
{
 "data": {
  "data": [
   {
    "id": "c41e8b20-6d7f-4a1c-9b3e-5f2a8d0c6e17",
    "kind": "email",
    "name": "Email kỹ thuật",
    "target": "o***@example.com",
    "verified_at": "2026-10-24T10:42:00+07:00",
    "opted_in_at": "2026-10-24T10:42:00+07:00",
    "disabled_reason": null,
    "last_sent_at": null,
    "link_pending": false,
    "route_key": null,
    "created_at": "2026-10-24T10:40:00+07:00"
   }
  ],
  "next_cursor": null
 }
}
```

Sample built from the Tino Uptime OpenAPI (Tino relays the answer as is inside `data`); values are examples.
