# OS templates

`GET /v1/service/@id/templates` · scope `services:read`

Operating system templates used to create virtual machines.

## HTTP request

| Item | Value |
| --- | --- |
| URL | `https://api.tino.vn/v1/service/@id/templates` |
| Method | `GET` |
| Scope | `services:read` |
| Header | `Authorization: Bearer <token>` |
| Content-Type | — (no body) |
| Tokens that can call it | app tokens (`tinoat_`), personal API tokens (`tinopat_`) |

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | string | yes | Service ID |

## Example request

```bash
curl "https://api.tino.vn/v1/service/100001/templates" \
  -H "Authorization: Bearer $TINO_TOKEN"
```

`$TINO_TOKEN` is a token with the scope `services:read`. Path parameters in the example are sample values.

SDK ([SDK & examples](/en/docs/sdk)): Python `client.services.list_os_templates(id)`, Node.js `await client.services.listOsTemplates(id);`, PHP `$client->services->listOsTemplates($id);`.

## Example response

```json
{
 "templates": [
  {
   "id": "a37411b5-4136-29f6-9dc0-d07f78a6ad5e",
   "name": "Ubuntu 26.04",
   "price": 0,
   "type": "template",
   "group": "public",
   "size_gb": 4,
   "interfaces": [
    {
     "name": "net0",
     "zones": null,
     "zone": "vmbr0",
     "ip_required": true
    }
   ]
  },
  {
   "id": "8c93b9af-1bd8-5a73-8190-f7e272bd4157",
   "name": "Almalinux 10",
   "price": 0,
   "type": "template",
   "group": "public",
   "size_gb": 10,
   "interfaces": [
    {
     "name": "net0",
     "zones": null,
     "zone": "vmbr0",
     "ip_required": true
    }
   ]
  },
  "… 12 more item(s)"
 ]
}
```

Live sample from a test account with personal data masked; long arrays and strings are trimmed (`… N more item(s)`, `… N more line(s)`).
