Инструменты разработчика: API-токены, REST API, CLI и «Объяснить ошибку».
Создавайте API-токены с нужной областью действия, работайте с приложениями из скриптов и CI через REST API, готовящаяся командная строка rivervo и объяснения неудачных развёртываний с помощью ИИ.
Всё, что вы делаете с приложениями в панели, можно делать и из скриптов: развёртывания из CI, переменные из скрипта, журнал в терминале.
API-токены
Настройки аккаунта → API-токены → Создать токен. Задайте имя (где он используется, например «GitHub Actions») и выберите, что ему разрешено:
| Область действия | Разрешает |
|---|---|
| Только чтение | приложения, развёртывания и их журналы, журнал работы, домены |
| Чтение и развёртывание | чтение, а также развёртывание, откат и перезапуск |
| Полный доступ | развёртывание, а также переменные (чтение и изменение) и домены (добавление, удаление) |
Можно также задать срок действия — 30, 90 или 365 дней либо бессрочно.
- Токен показывается один раз — скопируйте его сразу.
- Токен действует с вашими правами. В чужом аккаунте он действует с вашей ролью в приложении, а поверх неё применяется область действия токена. См. Доступ к приложению.
- У вас может быть до 20 токенов. Отозвать сразу отключает токен.
- Создать токен можете только вы сами: тот, кто вошёл в ваш аккаунт от вашего имени, этого сделать не может.
REST API
API описан в формате OpenAPI 3.1: api.rivervo.com/api/v1/openapi.json. Импортируйте его в Postman, Insomnia или генератор кода.
Базовый адрес: https://api.rivervo.com/api/v1. Передавайте токен как bearer-токен:
curl -H "Authorization: Bearer $RIVERVO_TOKEN" https://api.rivervo.com/api/v1/appsЧто можно делать:
| Метод и путь | Что делает | Область действия |
|---|---|---|
GET /apps | ваши приложения и их сервисы | чтение |
GET /apps/{id} | одно приложение | чтение |
GET /apps/{id}/deployments | его развёртывания | чтение |
POST /apps/{id}/deployments | развёртывание: собрать последний коммит или, с {"rebuild": false}, развернуть текущую версию заново | развёртывание |
GET /apps/{id}/deployments/{deployment} | развёртывание с журналом сборки | чтение |
POST /apps/{id}/deployments/{deployment}/rollback | вернуться к этой версии | развёртывание |
POST /apps/{id}/restart | перезапуск | развёртывание |
GET /apps/{id}/logs | журнал работы сайта, фонового процесса или расписания | чтение |
GET, PUT, PATCH /apps/{id}/env | прочитать, заменить или обновить переменные | полный |
GET /apps/{id}/domains | домены | чтение |
POST /apps/{id}/domains, DELETE /apps/{id}/domains/{name} | добавить или удалить домен | полный |
- Чужой аккаунт: добавьте заголовок
X-Account: <the account's customer ID>, чтобы работать с приложениями аккаунта, к которым вам открыли доступ (в заголовке укажите идентификатор клиента этого аккаунта). - Ограничения: 120 запросов в минуту на человека, из них 30 изменений. При превышении API отвечает
429сRetry-After. - Язык: по умолчанию сообщения приходят на английском; отправьте
Accept-Language: azилиru, чтобы получать их на азербайджанском или русском. - Переменные, изменённые через API, доходят до приложения со следующим развёртыванием, как и в панели, — достаточно
{"rebuild": false}.
Командная строка rivervo — скоро
Готовится инструмент командной строки для развёртываний, журнала, переменных и откатов. Он будет использовать те же API-токены:
rivervo login # вставьте токен
rivervo deploy shop # собрать последний коммит и следить за развёртыванием
rivervo logs shop -f # следить за выводом приложения
rivervo env set shop API_URL=https://example.com
rivervo rollback shop # вернуться к предыдущей версииВ CI инструмент берёт токен из переменной RIVERVO_TOKEN, а deploy завершается с ошибкой, если новая версия не вышла в работу, поэтому на нём можно строить проверку в конвейере. Пока инструмент не опубликован, то же самое можно сделать через REST API.
«Объяснить ошибку»
Когда развёртывание не завершилось или сервис перестал работать, рядом с журналом появляется Объяснить ошибку. Функция читает последние строки журнала и сообщает на вашем языке:
- Вероятная причина — что пошло не так;
- Как исправить — конкретные шаги для вашего стека.
Объяснение составляет ИИ на основе журнала; проверьте его, прежде чем что-либо менять. Перед отправкой из журнала скрываются все значения ваших переменных и всё, что похоже на ключ, пароль или токен. Ваш код и сами переменные никогда не отправляются.
Каждый человек может запросить до 10 новых объяснений в день; объяснение, уже составленное для того же журнала, показывается повторно бесплатно.