Управляй Caputchin через API
Всё, что ты можешь делать в панели, кроме оплаты, ты также можешь делать из кода. Caputchin выставляет один API управления, и три поверхности сидят поверх него: этот HTTP API напрямую, сервер MCP для ИИ-агентов и провайдер Terraform и OpenTofu для infrastructure-as-code. Они различаются только на краю; те же валидация, права и журналирование аудита применяются, какую бы ты ни использовал.
Все три аутентифицируются одними и теми же учётными данными: токеном доступа, который ты выпускаешь один раз.
Выпусти токен доступа
Ты шлёшь токен как заголовок Bearer. Есть два вида, покрытые в полном виде в персональном токене доступа и токенах команды:
| Токен | Досягаемость | Где выпустить |
|---|---|---|
| Персональный токен доступа | Мастер над всем твоим аккаунтом | Настройки аккаунта. Бесплатно, один на аккаунт. |
| Токен доступа команды | Только команды, к которым он привязан, с выданными правами | Страница токенов команды. Занимает место. |
Используй персональный токен доступа для своей собственной автоматизации на весь аккаунт; используй токен команды для доступа с охватом и наименьшими привилегиями (CI-задание, которое трогает только одну команду). Любой работает везде ниже. Значение токена показывается один раз при создании, так что скопируй его в хранилище секретов.
Базовый URL и аутентификация
API управления укоренён по адресу:
https://caputchin.com/api/v1/managementКаждый запрос несёт токен как заголовок Bearer:
Authorization: Bearer cpt_pat_...Запросы и ответы это JSON. Вызов, который твоему токену не дозволено делать, возвращает 403; неизвестный или отозванный токен возвращает 401.
Разобранный пример: создай ключ сайта
Скажем, ты хочешь новый ключ сайта в своей команде shop-team. Сначала перечисли свои команды, чтобы найти её id, затем создай в ней ключ.
# 1. Find the troop id.
curl -s https://caputchin.com/api/v1/management/troops \
-H "Authorization: Bearer $CAPUTCHIN_MANAGEMENT_TOKEN"
# → { "troops": [ { "id": "troop_…", "name": "shop-team", … }, … ] }
# 2. Create a site key in that troop.
curl -s -X POST https://caputchin.com/api/v1/management/sites \
-H "Authorization: Bearer $CAPUTCHIN_MANAGEMENT_TOKEN" \
-H "content-type: application/json" \
-d '{ "name": "shop-frontend", "troop_id": "troop_…" }'
# → { "id": "site_…", "key": "cpt_pub_…", "secret": "cpt_sec_…", … }Ответ несёт публичный key нового ключа и его secret. Секрет показывается один раз, здесь, так что захвати его сейчас; ты будешь проверять с ним на своём бэкенде. Опусти troop_id, и ключ приземлится в твою Личную команду.
Вот и весь шаблон: токен Bearer, тело JSON, один вызов на операцию. Перечисление это GET, создание это POST, обновление это PATCH или PUT, удаление это DELETE, по путям ресурсов под базовым URL.
Полный справочник
Каждый эндпоинт с его параметрами, схемами запроса и ответа и встроенной панелью «попробуй», которая аутентифицируется твоим токеном, в интерактивном справочнике API. Он генерируется из той же спецификации OpenAPI, под которую построен API, так что никогда не расходится с живой поверхностью. Нацель свои генераторы клиентов на спецификацию по ссылке там.
См. также
- Персональный токен доступа: мастер-учётные данные и как отследить их использование.
- Используй сервер MCP: тот же API, управляемый ИИ-агентом.
- Используй Terraform или OpenTofu: тот же API, как infrastructure-as-code.
- Интерактивный справочник API: каждый эндпоинт и схема.