/v1/healthбез ключаПроверка работы API. Авторизация не требуется.
Пример cURL
curl -s 'https://api.tanuki.host/v1/health'
HTTPS JSON API для реселлеров: регистрация доменов, VPS, Backend Proxy, cloaking и исходящие webhooks. Запросы выполняются на хост api.tanuki.host.
Базовый URL: https://api.tanuki.host
Проверка доступности без ключа: GET /v1/health
Для всех маршрутов, кроме GET /v1/health, передайте API-ключ в заголовке:
Authorization: Bearer YOUR_API_KEY X-Api-Key: YOUR_API_KEY
Аккаунт должен быть одобрен как Reseller (is_reseller). Лимит запросов задаётся для каждого ключа (по умолчанию ~60/мин).
Вставьте API-ключ и выполните любой метод — ответ JSON появится ниже. У каждого эндпоинта есть кнопка «Попробовать».
Ключ хранится только в sessionStorage вашего браузера и отправляется напрямую на api.tanuki.host — мы его не сохраняем на сервере документации.
Ответы в JSON: <code>{"ok":false,"error":"код"}</code>. Успех: <code>{"ok":true,...}</code>.
| HTTP | error | Значение |
|---|---|---|
| 401 | unauthorized | Ключ отсутствует или неверный |
| 403 | reseller_not_approved | Reseller API не одобрен для аккаунта |
| 403 | api_host_forbidden | Запрос не на api.{domain} |
| 429 | rate_limit_exceeded | Превышен лимит запросов ключа |
| 400 | … | Неверные параметры или недостаточно баланса |
| 404 | not_found | Объект не найден или чужой |
/v1/healthбез ключаПроверка работы API. Авторизация не требуется.
curl -s 'https://api.tanuki.host/v1/health'
/v1/balanceТекущий баланс аккаунта в USD.
curl -s 'https://api.tanuki.host/v1/balance' -H 'Authorization: Bearer YOUR_KEY'
/v1/domains/search?q={query}Поиск домена по имени или ключевому слову.
| Параметр | Описание |
|---|---|
q | required domain or keyword |
curl -s 'https://api.tanuki.host/v1/domains/search?q=example' -H 'Authorization: Bearer YOUR_KEY'
/v1/domainsСписок доменов аккаунта.
curl -s 'https://api.tanuki.host/v1/domains' -H 'Authorization: Bearer YOUR_KEY'
/v1/domains/registerРегистрация домена с списанием с баланса.
| Параметр | Описание |
|---|---|
domain | string, FQDN |
years | int 1–10, default 1 |
curl -s -X POST 'https://api.tanuki.host/v1/domains/register' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"domain":"example.com","years":1}'/v1/domains/renewПродление домена.
| Параметр | Описание |
|---|---|
domain | string |
years | int 1–10 |
curl -s -X POST 'https://api.tanuki.host/v1/domains/renew' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"domain":"example.com","years":1}'/v1/servers/catalog/regionsРегионы каталога VPS.
curl -s 'https://api.tanuki.host/v1/servers/catalog/regions' -H 'Authorization: Bearer YOUR_KEY'
/v1/servers/catalog/tariffs?tariffpage_id={id}Тарифы для tariffpage_id из каталога.
| Параметр | Описание |
|---|---|
tariffpage_id | required int from regions |
curl -s 'https://api.tanuki.host/v1/servers/catalog/tariffs?tariffpage_id=14' -H 'Authorization: Bearer YOUR_KEY'
/v1/servers/osДоступные образы ОС.
curl -s 'https://api.tanuki.host/v1/servers/os' -H 'Authorization: Bearer YOUR_KEY'
/v1/serversСписок ваших серверов (public id).
curl -s 'https://api.tanuki.host/v1/servers' -H 'Authorization: Bearer YOUR_KEY'
/v1/servers/orderЗаказ VPS по plan_id из каталога.
| Параметр | Описание |
|---|---|
tariffpage_id | int |
plan_id | string from catalog |
os_key | optional |
password | optional root password |
server_name | optional label |
curl -s -X POST 'https://api.tanuki.host/v1/servers/order' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"tariffpage_id":14,"plan_id":"...","os_key":"ubuntu-22"}'/v1/servers/{id}Детали сервера; live=1 — синхронизация с провайдером.
| Параметр | Описание |
|---|---|
live | optional 1 for live provider sync |
curl -s 'https://api.tanuki.host/v1/servers/1001?live=1' -H 'Authorization: Bearer YOUR_KEY'
/v1/servers/{id}/syncОбновить данные с провайдера.
curl -s -X POST 'https://api.tanuki.host/v1/servers/1001/sync' -H 'Authorization: Bearer YOUR_KEY'
/v1/servers/{id}/renewПродление сервера.
curl -s -X POST 'https://api.tanuki.host/v1/servers/1001/renew' -H 'Authorization: Bearer YOUR_KEY'
/v1/servers/{id}/powerПитание: start, stop, reboot.
| Параметр | Описание |
|---|---|
action | start | stop | reboot |
curl -s -X POST 'https://api.tanuki.host/v1/servers/1001/power' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"action":"reboot"}'/v1/servers/{id}/passwordСмена root-пароля; новый пароль может вернуться в ответе.
| Параметр | Описание |
|---|---|
password | optional new password |
curl -s -X POST 'https://api.tanuki.host/v1/servers/1001/password' -H 'Authorization: Bearer YOUR_KEY'
/v1/servers/{id}/reinstallПереустановка ОС.
| Параметр | Описание |
|---|---|
os_id | int |
password | optional |
curl -s -X POST 'https://api.tanuki.host/v1/servers/1001/reinstall' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"os_id":1,"password":"Secret123"}'/v1/reverse-proxy/offerТариф Backend Proxy.
curl -s 'https://api.tanuki.host/v1/reverse-proxy/offer' -H 'Authorization: Bearer YOUR_KEY'
/v1/reverse-proxy/offer/cloakТариф Backend Proxy + Cloaking.
curl -s 'https://api.tanuki.host/v1/reverse-proxy/offer/cloak' -H 'Authorization: Bearer YOUR_KEY'
/v1/reverse-proxyСписок ваших Backend Proxy.
curl -s 'https://api.tanuki.host/v1/reverse-proxy' -H 'Authorization: Bearer YOUR_KEY'
/v1/reverse-proxy/orderЗаказ прокси; cloaking=true для bundle.
| Параметр | Описание |
|---|---|
cloaking | bool, RP+Cloaking bundle |
backend_server_id | optional public server id |
curl -s -X POST 'https://api.tanuki.host/v1/reverse-proxy/order' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"cloaking":false,"backend_server_id":1001}'/v1/reverse-proxy/{id}Детали одного прокси по public id.
curl -s 'https://api.tanuki.host/v1/reverse-proxy/501' -H 'Authorization: Bearer YOUR_KEY'
/v1/reverse-proxy/{id}/configureУказать backend IP (ваш VPS).
| Параметр | Описание |
|---|---|
backend_ip | IPv4 of your VPS |
curl -s -X POST 'https://api.tanuki.host/v1/reverse-proxy/501/configure' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"backend_ip":"10.0.0.5"}'/v1/cloakingСтатус подписки Cloaking и цена.
curl -s 'https://api.tanuki.host/v1/cloaking' -H 'Authorization: Bearer YOUR_KEY'
/v1/cloaking/subscribeОформить/продлить подписку Cloaking.
curl -s -X POST 'https://api.tanuki.host/v1/cloaking/subscribe' -H 'Authorization: Bearer YOUR_KEY'
/v1/cloaking/regenerate-keyПерегенерировать API-ключ Cloaking (в ответе полный ключ).
curl -s -X POST 'https://api.tanuki.host/v1/cloaking/regenerate-key' -H 'Authorization: Bearer YOUR_KEY'
/v1/webhooksСписок исходящих webhooks.
curl -s 'https://api.tanuki.host/v1/webhooks' -H 'Authorization: Bearer YOUR_KEY'
/v1/webhooksСоздать webhook; secret можно сгенерировать автоматически.
| Параметр | Описание |
|---|---|
url | HTTPS endpoint |
secret | optional HMAC secret |
events | array: deposit, domain_registered, … |
curl -s -X POST 'https://api.tanuki.host/v1/webhooks' \
-H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' \
-d '{"url":"https://example.com/hook","events":["deposit"]}'/v1/webhooks/{id}Удалить webhook по id.
curl -s -X DELETE 'https://api.tanuki.host/v1/webhooks/1' -H 'Authorization: Bearer YOUR_KEY'
POST на ваш URL с телом JSON. Заголовок X-Tanuki-Event дублирует тип события.
deposit — Депозит зачисленdomain_registered — Регистрация доменаdomain_blocked — Блокировка доменаrp_failover — Auto-failover Backend Proxytransfer_completed — Transfer-in завершёнПодпись HMAC-SHA256 тела запроса (если задан secret):
X-Tanuki-Signature: sha256=e5856dc90540c79894a32dd9f50bb32505ef70f63e4fec484dccac469e0b6d5b