Skip to content

API-ключі

API-ключі використовуються для автентифікації запитів до REST API без сесії користувача.

Кожен API-ключ прив'язаний до облікового запису tenant'у, який його створив. API-ключі мають такий самий рівень доступу, як і член команди - вони можуть читати та записувати всі дані tenant'у, але не можуть змінювати налаштування білінгу або плану.

Список API-ключів

Повертає всі активні API-ключі для tenant'у.

GET /tenants/me/api-keys

INFO

З міркувань безпеки повне значення ключа повертається лише один раз - при створенні. Подальші запити на отримання списку показують лише префікс ключа та метадані.

Приклад запиту

bash
curl https://api.aether365.io/tenants/me/api-keys \
  -H "Authorization: Bearer <token>"

Приклад відповіді

json
{
  "success": true,
  "data": [
    {
      "id": "key_abc123",
      "name": "CI pipeline",
      "prefix": "ae_live_abc1",
      "createdAt": "2026-03-01T09:00:00Z",
      "lastUsedAt": "2026-04-10T14:23:00Z"
    }
  ]
}

Поля відповіді

ПолеТипОпис
idstringІдентифікатор ключа
namestringНазва для відображення
prefixstringПерші 12 символів ключа (для ідентифікації)
createdAtstringЧасова мітка ISO 8601
lastUsedAtstring або nullЧасова мітка ISO 8601 останнього використання

Створення API-ключа

Створює новий API-ключ. Повне значення ключа повертається один раз і не може бути отримане повторно.

POST /tenants/me/api-keys

Тіло запиту

json
{
  "name": "CI pipeline"
}
ПолеТипОбов'язковеОпис
namestringТакНазва для відображення

Приклад запиту

bash
curl -X POST https://api.aether365.io/tenants/me/api-keys \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"name": "CI pipeline"}'

Приклад відповіді

json
{
  "success": true,
  "data": {
    "id": "key_abc123",
    "name": "CI pipeline",
    "key": "ae_live_abc123xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "prefix": "ae_live_abc1",
    "createdAt": "2026-04-12T10:00:00Z",
    "lastUsedAt": null
  }
}

Збережіть ключ негайно

Поле key повертається лише в цій відповіді. Його неможливо отримати пізніше. Збережіть його у менеджері секретів (GitHub Actions secrets, HashiCorp Vault тощо) одразу.


Видалення API-ключа

Остаточно відкликає API-ключ. Будь-які запити з цим ключем одразу повертатимуть 401.

DELETE /tenants/me/api-keys/{keyId}

Приклад запиту

bash
curl -X DELETE https://api.aether365.io/tenants/me/api-keys/key_abc123 \
  -H "Authorization: Bearer <token>"

Приклад відповіді

json
{
  "success": true,
  "data": null
}

Використання API-ключа

Передайте API-ключ як Bearer-токен у заголовку Authorization:

bash
curl https://api.aether365.io/tenants/me/scans \
  -H "Authorization: Bearer ae_live_abc123xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

API-ключі працюють так само, як сесійні токени для всіх endpoint'ів. Вони не мають терміну дії, але ви можете ротувати їх, створивши новий ключ і видаливши старий.

Обмеження частоти запитів

API обмежено до 120 запитів на хвилину на кожен API-ключ. Запити, що перевищують ліміт, отримують відповідь 429 Too Many Requests. Відповідь містить заголовок Retry-After, який вказує, коли можна повторити запит.

Ця сторінка була корисною?