Доступ к API
Адрес API консоли, аутентификация с токеном Bearer, токены обновления и текущие ограничения.
Обзор
Консоль Yeap Cloud работает на основе набора HTTPS API с обменом данными в JSON. На этой странице описаны адрес API, механизм аутентификации и текущие ограничения программного доступа.
Версионируемого публичного API с гарантиями стабильности для сторонних интеграций пока нет. Ниже описан API, который использует консоль; его конечные точки могут меняться по мере развития консоли. Если вам нужна автоматизированная интеграция, сначала свяжитесь с нами.
Адрес API
https://api.yeap.cloud- Конечные точки аутентификации расположены в
/auth/..., например/auth/loginи/auth/refresh-token. - Конечные точки, требующие входа в аккаунт, расположены в
/api/user/..., например/api/user/profile.
Запросы и ответы передаются в JSON. Для запросов с телом указывайте Content-Type: application/json.
Аутентификация
Токен доступа
При входе в консоль сервер выдает токен доступа (JWT). Для вызова конечных точек в /api/user/... передавайте его в заголовке запроса:
Authorization: Bearer <access-token>- Токены доступа действуют около 24 часов.
- Если токен отсутствует, недействителен или просрочен, API возвращает HTTP
401:
{"error": "Unauthorized", "code": 401}- При деактивации аккаунта все ранее выданные ему токены немедленно перестают работать.
- При выходе из консоли текущий токен доступа становится недействительным, а токены обновления аккаунта отзываются.
Токен обновления
Если при входе установить флажок Запомнить меня, сервер также выдаст токен обновления со сроком действия 14 дней. Когда токен доступа истечет, обменяйте токен обновления на новый токен доступа, чтобы не входить повторно:
curl -X POST https://api.yeap.cloud/auth/refresh-token \
-H "Content-Type: application/json" \
-d '{"refresh_token": "<refresh-token>"}'Пример успешного ответа:
{"success": true, "token": "<new-access-token>", "user": { ... }}Если токен обновления недействителен или просрочен, возвращается ответ {"success": false, "error": "Invalid or expired refresh token"} и необходимо войти заново. Консоль выполняет обновление автоматически.
Для входа требуется проверка на бота
Каждый вызов /auth/login должен пройти проверку на бота (в консоли она отображается во всплывающем окне), а для аккаунтов с двухфакторной аутентификацией также требуется одноразовый код. Поэтому автоматический вход с помощью скриптов без участия пользователя сейчас невозможен.
Пример: получение профиля
curl https://api.yeap.cloud/api/user/profile \
-H "Authorization: Bearer <access-token>"Пример успешного ответа:
{"success": true, "data": {"id": 123, "username": "...", "email": "...", ...}}Большинство пользовательских конечных точек возвращают данные в формате {"success": true, "data": ...}. Ошибки возвращаются в формате {"success": false, "error": "description"}.
«Ключи API» в настройках
На вкладке Профиль → Ключ API можно создавать, просматривать и удалять ключи API:
- Введите описание и нажмите Сгенерировать ключ.
- Ключ показывается только один раз. Сразу скопируйте его и сохраните в надежном месте.
- В списке Существующий ключ отображаются ID каждого ключа, время создания и последнего использования. Нажмите Удалить, чтобы удалить ненужные ключи.
Ключи API пока нельзя использовать для вызова описанного выше API консоли. API принимает только токены доступа Authorization: Bearer, выданные при входе. Мы обновим эту страницу, когда ключи API станут доступны для использования.
Страница «DNS API» в CDN не предназначена для учетных данных Yeap Cloud
На странице CDN → DNS API по адресу /cdn/dns-api хранятся ваши учетные данные API стороннего DNS-провайдера (сейчас — Cloudflare). Рекомендуется использовать API Token с разрешениями Zone.Zone.Read и Zone.DNS.Edit. Эти учетные данные используются для автоматического получения SSL-сертификатов для доменов CDN с помощью проверки DNS-01. Они не связаны с доступом к API Yeap Cloud. См. документацию CDN.
Ключи отдельных продуктов
Некоторые продукты используют собственные ключи, независимые от токенов консоли, описанных на этой странице, например LLM API → API-токены. См. документацию соответствующего продукта.
Рекомендации по безопасности
- Токены доступа и обновления предоставляют те же возможности, что и вход в аккаунт. Не передавайте их другим лицам и не сохраняйте в системе контроля версий.
- Если вы подозреваете утечку токена, выйдите из консоли и измените пароль.
- Включите двухфакторную аутентификацию для аккаунта.