{"name":"Selectel API","vendor":"Selectel","industry":"cloud","summary":"Набор API облачного провайдера Selectel: аутентификация и IAM, облачные проекты и ресурсы (Resell API), биллинг, DNS-хостинг, выделенные серверы, Managed Kubernetes, облачные базы данных, объектное хранилище, Container Registry, сертификаты, секреты, аудит-логи и др. Сами облачные серверы, диски и сети создаются через OpenStack API. У каждого продукта свой базовый адрес, для части сервисов он зависит от пула (региона).","docsUrl":"https://docs.selectel.ru/api/","coverage":{"included":[],"excluded":[]},"scenarios":[{"id":"poluchit-iam-token-servisnogo","title":"Получить IAM-токен сервисного пользователя","summary":"Первый шаг автоматизации Selectel: токен для API проектов, DNS и облачных ресурсов.","steps":["Создай сервисного пользователя в панели управления с нужными ролями — для рабочих интеграций документация рекомендует именно их.","Получи токен: POST /identity/v3/auth/tokens на cloud.api.selcloud.ru с методом password — имя сервисного пользователя, ID аккаунта как domain и пароль. scope = domain даёт токен аккаунта, scope = project — токен проекта.","Токен приходит в заголовке ответа X-Subject-Token с кодом 201 и живёт 24 часа. Передавай его в заголовке X-Auth-Token."],"code":"TOKEN=$(curl -si -X POST https://cloud.api.selcloud.ru/identity/v3/auth/tokens \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"auth\": {\n        \"identity\": {\"methods\": [\"password\"], \"password\": {\"user\": {\n          \"name\": \"<сервисный пользователь>\", \"domain\": {\"name\": \"<ID аккаунта>\"}, \"password\": \"<пароль>\"}}},\n        \"scope\": {\"domain\": {\"name\": \"<ID аккаунта>\"}}}}' \\\n  | grep -i '^x-subject-token' | cut -d' ' -f2 | tr -d '\\r')","language":"bash","methods":["POST /identity/v3/auth/tokens"]},{"id":"upravlyat-dns-zapisyami-domena","title":"Управлять DNS-записями домена","summary":"Автоматически добавлять поддомены для клиентов, менять записи при переезде, подтверждать домен TXT-записью.","steps":["Получи зоны: GET /domains/v2/zones с токеном проекта — найди id своей зоны. Новую зону создаёт POST /domains/v2/zones (имя с точкой в конце).","Добавь запись: POST /domains/v2/zones/{zone_id}/rrset с name (полное имя с точкой в конце), type, ttl (60–604800) и records — списком content.","Найти существующую запись — GET /domains/v2/zones/{zone_id}/rrset с name или search; изменить — PATCH /domains/v2/zones/{zone_id}/rrset/{rrset_id} с ttl и новым records (ответ 204); удалить — DELETE по тому же адресу."],"code":"curl -X POST \"https://api.selectel.ru/domains/v2/zones/<zone_id>/rrset\" \\\n  -H \"X-Auth-Token: $TOKEN\" -H 'Content-Type: application/json' \\\n  -d '{\"name\": \"shop.example.ru.\", \"type\": \"A\", \"ttl\": 300, \"records\": [{\"content\": \"203.0.113.10\"}]}'","language":"bash","methods":["GET /domains/v2/zones","POST /domains/v2/zones","GET /domains/v2/zones/{zone_id}/rrset","POST /domains/v2/zones/{zone_id}/rrset","PATCH /domains/v2/zones/{zone_id}/rrset/{rrset_id}"]},{"id":"sledit-za-balansom-i-prognozom-rashodov","title":"Следить за балансом и прогнозом расходов","summary":"Не допустить отключения серверов из-за нулевого баланса.","steps":["Запроси балансы: GET /v3/balances — в data.billings для каждого вида биллинга итоговая сумма final_sum и долг debt_sum.","Запроси прогноз: GET /v2/billing/prediction — на сколько часов хватит остатка по облаку, хранилищу и другим услугам.","Для этих методов подходит статический токен (заголовок X-Token) или IAM-токен аккаунта. Проверяй по расписанию и шли себе предупреждение, когда прогноз меньше пары суток."],"code":"curl https://api.selectel.ru/v3/balances -H \"X-Token: $SELECTEL_STATIC_TOKEN\"\ncurl https://api.selectel.ru/v2/billing/prediction -H \"X-Token: $SELECTEL_STATIC_TOKEN\"","language":"bash","methods":["GET /v3/balances","GET /v2/billing/prediction"]},{"id":"sozdat-oblachnyy-proekt-i-vydelit","title":"Создать облачный проект и выделить публичные IP","summary":"Отдельный проект под клиента или окружение — с квотами и внешними адресами.","steps":["Создай проект: POST /vpc/resell/v2/projects с project.name. Список проектов — GET /vpc/resell/v2/projects, проект с квотами — GET /vpc/resell/v2/projects/{project_id}.","Выдели публичные IP: POST /vpc/resell/v2/floatingips/projects/{project_id} с floatingips — количеством (quantity) и регионом (region).","Сами серверы, диски и сети в проекте создаются через OpenStack API с токеном проекта."],"code":"PROJECT=$(curl -s -X POST https://api.selectel.ru/vpc/resell/v2/projects \\\n  -H \"X-Auth-Token: $TOKEN\" -H 'Content-Type: application/json' \\\n  -d '{\"project\": {\"name\": \"client-1042\"}}' | jq -r .project.id)\n\ncurl -X POST \"https://api.selectel.ru/vpc/resell/v2/floatingips/projects/$PROJECT\" \\\n  -H \"X-Auth-Token: $TOKEN\" -H 'Content-Type: application/json' \\\n  -d '{\"floatingips\": [{\"quantity\": 1, \"region\": \"ru-9\"}]}'","language":"bash","methods":["GET /vpc/resell/v2/projects","POST /vpc/resell/v2/projects","GET /vpc/resell/v2/projects/{project_id}","POST /vpc/resell/v2/floatingips/projects/{project_id}"]}],"baseUrls":[{"label":"Боевой","url":"https://api.selectel.ru"},{"label":"Identity (токены)","url":"https://cloud.api.selcloud.ru"},{"label":"Адреса по сервисам","url":"https://api.selectel.ru/vpc/resell/v2"}],"auth":{"type":"other","description":"- IAM-токен аккаунта (`iam_token_account_scoped`) или проекта (`iam_token_project_scoped`) — заголовок `X-Auth-Token`, живёт 24 часа. Получается запросом `POST https://cloud.api.selcloud.ru/identity/v3/auth/tokens` (метод `password`: имя сервисного пользователя, ID аккаунта как домен, пароль; `scope` — `domain` или `project`). Токен возвращается в заголовке ответа `X-Subject-Token`, код `201`.\n- Статический токен (`static_token`) — заголовок `X-Token`, без срока действия, только для пользователей панели; не работает с OpenStack API. Нужен для отчётов биллинга, тикетов, учёта IP.\n\nДля рабочих интеграций документация рекомендует сервисных пользователей.","example":""},"methods":[{"id":"POST /identity/v3/auth/tokens","title":"Получение IAM-токена","httpMethod":"POST","path":"/identity/v3/auth/tokens","description":"Вызывается на `https://cloud.api.selcloud.ru`.","params":[{"name":"Content-Type","in":"header","type":"string","required":true,"description":"application/json"},{"name":"auth.identity.methods","in":"body","type":"array","required":true,"description":"[\"password\"]"},{"name":"auth.identity.password.user.name","in":"body","type":"string","required":true,"description":"Имя сервисного пользователя"},{"name":"auth.identity.password.user.domain.name","in":"body","type":"string","required":true,"description":"ID аккаунта"},{"name":"auth.identity.password.user.password","in":"body","type":"string","required":true,"description":"Пароль"},{"name":"auth.scope","in":"body","type":"object","required":true,"description":"domain (токен аккаунта) или project с именем проекта"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /v3/balances","title":"Балансы аккаунта","httpMethod":"GET","path":"/v3/balances","description":"В ответе `data.settings` (`mode`, `currency`), `data.billings[]` (`billing_type`, `final_sum`, `debt_sum`, `balances[]`), `data.debt_status`.","params":[{"name":"X-Token","in":"header","type":"string","required":true,"description":"Статический токен или IAM-токен аккаунта (X-Auth-Token)"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /v2/billing/prediction","title":"Прогноз баланса","httpMethod":"GET","path":"/v2/billing/prediction","description":"Сколько часов хватит остатка: `data.primary`, `data.storage`, `data.vmware`, `data.vpc`.","params":[{"name":"X-Token","in":"header","type":"string","required":true,"description":"Статический токен или IAM-токен аккаунта"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /vpc/resell/v2/projects","title":"Список проектов","httpMethod":"GET","path":"/vpc/resell/v2/projects","description":"","params":[{"name":"X-Auth-Token","in":"header","type":"string","required":true,"description":"IAM-токен аккаунта"},{"name":"all","in":"query","type":"boolean","required":false,"description":"Все проекты аккаунта (нужна роль iam.admin)"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"POST /vpc/resell/v2/projects","title":"Создание проекта","httpMethod":"POST","path":"/vpc/resell/v2/projects","description":"","params":[{"name":"project.name","in":"body","type":"string","required":true,"description":"Имя, 1–64 символа"},{"name":"project.description","in":"body","type":"string","required":false,"description":"Описание, до 255 символов"},{"name":"project.skip_quotas_init","in":"body","type":"boolean","required":false,"description":"Не инициализировать квоты"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /vpc/resell/v2/projects/{project_id}","title":"Проект и его квоты","httpMethod":"GET","path":"/vpc/resell/v2/projects/{project_id}","description":"","params":[{"name":"project_id","in":"path","type":"string","required":true,"description":"ID проекта"},{"name":"exclude_quotas","in":"query","type":"boolean","required":false,"description":"Не возвращать квоты (по умолчанию false)"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"DELETE /vpc/resell/v2/projects/{project_id}","title":"Удаление проекта","httpMethod":"DELETE","path":"/vpc/resell/v2/projects/{project_id}","description":"","params":[{"name":"project_id","in":"path","type":"string","required":true,"description":"ID проекта"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /vpc/resell/v2/floatingips","title":"Список публичных IP","httpMethod":"GET","path":"/vpc/resell/v2/floatingips","description":"","params":[{"name":"detailed","in":"query","type":"boolean","required":false,"description":"Расширенная информация"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"POST /vpc/resell/v2/floatingips/projects/{project_id}","title":"Добавление публичных IP в проект","httpMethod":"POST","path":"/vpc/resell/v2/floatingips/projects/{project_id}","description":"","params":[{"name":"project_id","in":"path","type":"string","required":true,"description":"ID проекта"},{"name":"floatingips[].quantity","in":"body","type":"integer","required":true,"description":"Количество"},{"name":"floatingips[].region","in":"body","type":"string","required":true,"description":"Регион (пул)"},{"name":"floatingips[].ips","in":"body","type":"string","required":false,"description":"Конкретные адреса"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /vpc/resell/v2/traffic/report","title":"Отчёт по трафику","httpMethod":"GET","path":"/vpc/resell/v2/traffic/report","description":"","params":[{"name":"start_date","in":"query","type":"string","required":true,"description":"Начало периода (дата)"},{"name":"end_date","in":"query","type":"string","required":true,"description":"Конец периода (дата)"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /domains/v2/zones","title":"Список DNS-зон","httpMethod":"GET","path":"/domains/v2/zones","description":"","params":[{"name":"X-Auth-Token","in":"header","type":"string","required":true,"description":"IAM-токен проекта"},{"name":"limit","in":"query","type":"integer","required":false,"description":"Сколько вернуть, по умолчанию 1000"},{"name":"offset","in":"query","type":"integer","required":false,"description":"Смещение, по умолчанию 0"},{"name":"filter","in":"query","type":"string","required":false,"description":"Фильтр по имени"},{"name":"sort_by","in":"query","type":"array","required":false,"description":"Сортировка, по умолчанию name.ascend"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"POST /domains/v2/zones","title":"Создание DNS-зоны","httpMethod":"POST","path":"/domains/v2/zones","description":"","params":[{"name":"name","in":"body","type":"string","required":true,"description":"Доменное имя зоны (оканчивается точкой)"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /domains/v2/zones/{zone_id}/rrset","title":"Записи зоны","httpMethod":"GET","path":"/domains/v2/zones/{zone_id}/rrset","description":"","params":[{"name":"zone_id","in":"path","type":"string","required":true,"description":"UUID зоны"},{"name":"limit","in":"query","type":"integer","required":false,"description":"По умолчанию 1000"},{"name":"offset","in":"query","type":"integer","required":false,"description":"Смещение"},{"name":"rrset_types","in":"query","type":"array","required":false,"description":"Фильтр по типу"},{"name":"name","in":"query","type":"string","required":false,"description":"Фильтр по имени"},{"name":"search","in":"query","type":"string","required":false,"description":"Поиск по имени или содержимому"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"POST /domains/v2/zones/{zone_id}/rrset","title":"Создание набора записей","httpMethod":"POST","path":"/domains/v2/zones/{zone_id}/rrset","description":"","params":[{"name":"zone_id","in":"path","type":"string","required":true,"description":"UUID зоны"},{"name":"name","in":"body","type":"string","required":true,"description":"Имя (FQDN с точкой в конце)"},{"name":"ttl","in":"body","type":"integer","required":true,"description":"60–604800 секунд"},{"name":"type","in":"body","type":"string","required":true,"description":"A, AAAA, ALIAS, CAA, CNAME, DNAME, HTTPS, MX, NS, SOA, SRV, SVCB, SSHFP, TXT"},{"name":"records","in":"body","type":"array","required":true,"description":"1–100 записей: content, disabled"},{"name":"comment","in":"body","type":"string","required":false,"description":"Комментарий"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"PATCH /domains/v2/zones/{zone_id}/rrset/{rrset_id}","title":"Изменение набора записей","httpMethod":"PATCH","path":"/domains/v2/zones/{zone_id}/rrset/{rrset_id}","description":"Успех — `204`.","params":[{"name":"zone_id","in":"path","type":"string","required":true,"description":"UUID зоны"},{"name":"rrset_id","in":"path","type":"string","required":true,"description":"UUID набора записей"},{"name":"ttl","in":"body","type":"integer","required":true,"description":"60–604800 секунд"},{"name":"records","in":"body","type":"array","required":true,"description":"Новый список записей"},{"name":"comment","in":"body","type":"string","required":false,"description":"Комментарий"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"DELETE /domains/v2/zones/{zone_id}/rrset/{rrset_id}","title":"Удаление набора записей","httpMethod":"DELETE","path":"/domains/v2/zones/{zone_id}/rrset/{rrset_id}","description":"","params":[{"name":"zone_id","in":"path","type":"string","required":true,"description":"UUID зоны"},{"name":"rrset_id","in":"path","type":"string","required":true,"description":"UUID набора записей"}],"requestExample":"","responseExample":"","docsUrl":""}],"codeExamples":[],"errors":[{"code":"400","description":"Неверный запрос"},{"code":"401","description":"Нет или неверный токен"},{"code":"403","description":"Недостаточно прав"},{"code":"404","description":"Объект не найден"},{"code":"409","description":"Конфликт"},{"code":"422","description":"Ошибка валидации"},{"code":"500","description":"Внутренняя ошибка"}],"limits":"- IAM-токен живёт 24 часа.\n- DNS: TTL 60–604800 секунд, до 100 записей в наборе.","gotchas":["Облачные серверы, сети и диски создаются через OpenStack API; Resell API управляет проектами, квотами, публичными IP, подсетями и трафиком.","Методы `/v2/keypairs` и лицензий в Resell API устарели и будут удалены — для SSH-ключей используйте Nova API.","Имена зон и записей DNS — полные, с точкой в конце.","Для пулов в Центральной Азии и Кении используются хосты `*.servercore.com`.","У каждого API есть OpenAPI-спецификация в JSON на странице документации (например, `https://docs.selectel.ru/api/dns-actual.json`)."],"slug":"selectel","version":2,"updatedAt":"2026-10-24T17:05:36.518Z","sources":[{"title":"Selectel API","url":"https://docs.selectel.ru/api/","kind":"research","addedAt":"2026-10-19T13:53:07.991Z"},{"title":"Аутентификация","url":"https://docs.selectel.ru/api/authorization/","kind":"research","addedAt":"2026-10-19T13:53:07.991Z"},{"title":"URL для запросов","url":"https://docs.selectel.ru/api/urls/","kind":"research","addedAt":"2026-10-19T13:53:07.991Z"},{"title":"Облачные проекты и ресурсы","url":"https://docs.selectel.ru/api/cloud-projects-and-resources/","kind":"research","addedAt":"2026-10-19T13:53:07.991Z"},{"title":"Баланс","url":"https://docs.selectel.ru/api/balance/","kind":"research","addedAt":"2026-10-19T13:53:07.991Z"},{"title":"DNS-хостинг","url":"https://docs.selectel.ru/api/dns-actual/","kind":"research","addedAt":"2026-10-19T13:53:07.991Z"},{"title":"Вставленный текст","url":"","kind":"import","addedAt":"2026-10-19T13:53:07.991Z"},{"title":"scenarios-selectel.md","url":"","kind":"import","addedAt":"2026-10-24T17:05:26.878Z"}],"logoUrl":null}