hujjatlar
Boshqaruv paneli API

API kalitlari

Markdown

Metodlar, so‘rov maydonlari va javoblar.

To‘liq qo‘llanma

Bo‘limda 5 ta metod bor. Kirish shartlari, so‘rov maydonlari va javobni ko‘rish uchun metodni oching.

Metod va yo‘lTavsifKirish huquqi
GET /api/v1/keysRo‘yxat — API kalitlariBoshqaruv paneli tokeni
POST /api/v1/keysAPI kalitini yaratishBoshqaruv paneli tokeni
DELETE /api/v1/keys/:idO‘chirish — API kalitlariBoshqaruv paneli tokeni
GET /api/v1/keys/:idIdentifikator bo‘yicha olish — API kalitlariBoshqaruv paneli tokeni
PUT /api/v1/keys/:idAPI kalitini o‘zgartirishBoshqaruv paneli tokeni
GET /api/v1/keys — Ro‘yxat — API kalitlari

Kirish: Boshqaruv paneli tokeni

GET/api/v1/keys
O‘qish; ID oldingi javobingizdan olinadi
curl --fail-with-body "https://ailoot.ai/api/v1/keys" \
  -H "Authorization: Bearer $TOKEN"

Query parametrlari

Maydon: TurMajburiyTekshiruv / tavsif
sort_bystringyo‘q; standart qiymat: created_at
sort_orderstringyo‘q; standart qiymat: desc
searchstringyo‘q
statusstringyo‘q
pageintegeryo‘q; standart qiymat: 1; positive; page_size/limit <=1000
page_sizeintegeryo‘q; standart qiymat: 20; positive; page_size/limit <=1000
limitintegeryo‘q; standart qiymat: 20; positive; page_size/limit <=1000

So‘rov tanasi talab qilinmaydi. Yuqoridagi parametrlarni URL orqali uzating.

Javob

JSON javobi code, message va data maydonlarini o‘z ichiga oladi. data mazmuni quyidagi sxemalarda tasvirlangan.

Javob ma’lumotlari sxemalari: APIKey. Maydonlar va turlar “Ma’lumotlar sxemalari” sahifalarida.

Javob sxemasi, qiymatlar shartli
{
  "code": 0,
  "message": "success",
  "data": {
    "items": [
      {
        "id": "PLACEHOLDER_ID (integer)",
        "user_id": "PLACEHOLDER_USER_ID (integer)",
        "key": "PLACEHOLDER_KEY (string)",
        "name": "PLACEHOLDER_NAME (string)",
        "status": "PLACEHOLDER_STATUS (string)",
        "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
        "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
        "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
        "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
        "quota": "PLACEHOLDER_QUOTA (number)",
        "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
        "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
        "created_at": "PLACEHOLDER_CREATED_AT (string)",
        "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
        "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
        "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
        "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
        "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
        "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
        "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
        "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
        "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
        "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
        "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
        "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
        "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
        "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
        "user": "PLACEHOLDER_USER (object)"
      }
    ],
    "total": "PLACEHOLDER_TOTAL (integer)",
    "page": "PLACEHOLDER_PAGE (integer)",
    "page_size": "PLACEHOLDER_PAGE_SIZE (integer)",
    "pages": "PLACEHOLDER_PAGES (integer)"
  }
}

Xususiyatlar: Barcha shaxsiy ma’lumotlar va obyektlar JWT subyekti bilan cheklangan.

Xususiyatlar: javob maxfiy key’ni o‘z ichiga oladi; haqiqiy qiymatlarni e’lon qilmang.

POST /api/v1/keys — API kalitini yaratish

Kirish: Boshqaruv paneli tokeni

POST/api/v1/keys

JSON / forma maydonlari

Maydon: TurMajburiyTekshiruv / tavsif
namestringharequired
custom_keystringyo‘q; Kalitning ixtiyoriy o‘z qiymati; null bo‘lishi mumkin
ip_whitelistarrayyo‘q; Ruxsat etilgan IP’lar ro‘yxati
ip_blacklistarrayyo‘q; Taqiqlangan IP’lar ro‘yxati
quotanumberyo‘q; Kalitning USD’dagi sarf limiti; null bo‘lishi mumkin
expires_in_daysintegeryo‘q; Amal qilish muddati kunlarda; null bo‘lishi mumkin
rate_limit_5hnumberyo‘q; null bo‘lishi mumkin
rate_limit_1dnumberyo‘q; null bo‘lishi mumkin
rate_limit_7dnumberyo‘q; null bo‘lishi mumkin
So‘rov tanasi shabloni
{
  "name": "PLACEHOLDER_NAME (string)",
  "custom_key": "PLACEHOLDER_CUSTOM_KEY (string)",
  "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
  "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
  "quota": "PLACEHOLDER_QUOTA (number)",
  "expires_in_days": "PLACEHOLDER_EXPIRES_IN_DAYS (integer)",
  "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
  "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
  "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)"
}

PLACEHOLDER siz kiritadigan qiymat va uning turini bildiradi. Qiymatlarni almashtiring va faqat kerakli ixtiyoriy maydonlarni qoldiring; sonlar, boolean, obyektlar yoki massivlar o‘rniga matnli belgilar yuborilmaydi.

So‘rov sxemasi: CreateAPIKeyRequest

Javob

JSON javobi code, message va data maydonlarini o‘z ichiga oladi. data mazmuni quyidagi sxemalarda tasvirlangan.

Javob ma’lumotlari sxemalari: APIKey. Maydonlar va turlar “Ma’lumotlar sxemalari” sahifalarida.

Javob sxemasi, qiymatlar shartli
{
  "code": 0,
  "message": "success",
  "data": {
    "id": "PLACEHOLDER_ID (integer)",
    "user_id": "PLACEHOLDER_USER_ID (integer)",
    "key": "PLACEHOLDER_KEY (string)",
    "name": "PLACEHOLDER_NAME (string)",
    "status": "PLACEHOLDER_STATUS (string)",
    "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
    "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
    "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
    "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
    "quota": "PLACEHOLDER_QUOTA (number)",
    "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
    "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
    "created_at": "PLACEHOLDER_CREATED_AT (string)",
    "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
    "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
    "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
    "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
    "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
    "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
    "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
    "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
    "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
    "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
    "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
    "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
    "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
    "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
    "user": "PLACEHOLDER_USER (object)"
  }
}

Xususiyatlar: Barcha shaxsiy ma’lumotlar va obyektlar JWT subyekti bilan cheklangan.

Xususiyatlar: operatsiya holatni o‘zgartiradi yoki bir martalik avtorizatsiyani davom ettiradi; misol API interfeysining shartlarini tavsiflaydi va bajarilmaydi.

Xususiyatlar: Idempotency-Key qo‘llab-quvvatlanadi; takroriy so‘rov X-Idempotency-Replayed bilan saqlangan javobni qaytaradi.

Xususiyatlar: javob maxfiy key’ni o‘z ichiga oladi; haqiqiy qiymatlarni e’lon qilmang.

DELETE /api/v1/keys/:id — O‘chirish — API kalitlari

Kirish: Boshqaruv paneli tokeni

DELETE/api/v1/keys/:id

Yo‘l parametrlari

Maydon: TurMajburiyTekshiruv / tavsif
idintegerha

So‘rov tanasi talab qilinmaydi.

Javob

JSON javobi code, message va data maydonlarini o‘z ichiga oladi. data mazmuni quyidagi sxemalarda tasvirlangan.

Javob sxemasi, qiymatlar shartli
{
  "code": 0,
  "message": "success",
  "data": {
    "message": "VALUE_FROM_RESPONSE"
  }
}

Xususiyatlar: Barcha shaxsiy ma’lumotlar va obyektlar JWT subyekti bilan cheklangan.

Xususiyatlar: operatsiya holatni o‘zgartiradi yoki bir martalik avtorizatsiyani davom ettiradi; misol API interfeysining shartlarini tavsiflaydi va bajarilmaydi.

Xususiyatlar: javob maxfiy key’ni o‘z ichiga oladi; haqiqiy qiymatlarni e’lon qilmang.

GET /api/v1/keys/:id — Identifikator bo‘yicha olish — API kalitlari

Kirish: Boshqaruv paneli tokeni

GET/api/v1/keys/:id
O‘qish; ID oldingi javobingizdan olinadi
curl --fail-with-body "https://ailoot.ai/api/v1/keys/$ID" \
  -H "Authorization: Bearer $TOKEN"

Yo‘l parametrlari

Maydon: TurMajburiyTekshiruv / tavsif
idintegerha

So‘rov tanasi talab qilinmaydi. Yuqoridagi parametrlarni URL orqali uzating.

Javob

JSON javobi code, message va data maydonlarini o‘z ichiga oladi. data mazmuni quyidagi sxemalarda tasvirlangan.

Javob ma’lumotlari sxemalari: APIKey. Maydonlar va turlar “Ma’lumotlar sxemalari” sahifalarida.

Javob sxemasi, qiymatlar shartli
{
  "code": 0,
  "message": "success",
  "data": {
    "id": "PLACEHOLDER_ID (integer)",
    "user_id": "PLACEHOLDER_USER_ID (integer)",
    "key": "PLACEHOLDER_KEY (string)",
    "name": "PLACEHOLDER_NAME (string)",
    "status": "PLACEHOLDER_STATUS (string)",
    "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
    "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
    "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
    "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
    "quota": "PLACEHOLDER_QUOTA (number)",
    "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
    "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
    "created_at": "PLACEHOLDER_CREATED_AT (string)",
    "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
    "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
    "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
    "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
    "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
    "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
    "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
    "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
    "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
    "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
    "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
    "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
    "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
    "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
    "user": "PLACEHOLDER_USER (object)"
  }
}

Xususiyatlar: Barcha shaxsiy ma’lumotlar va obyektlar JWT subyekti bilan cheklangan.

Xususiyatlar: javob maxfiy key’ni o‘z ichiga oladi; haqiqiy qiymatlarni e’lon qilmang.

PUT /api/v1/keys/:id — API kalitini o‘zgartirish

Kirish: Boshqaruv paneli tokeni

PUT/api/v1/keys/:id

Yo‘l parametrlari

Maydon: TurMajburiyTekshiruv / tavsif
idintegerha

JSON / forma maydonlari

Maydon: TurMajburiyTekshiruv / tavsif
namestringyo‘q
statusstringyo‘qomitempty,oneof=active inactive
ip_whitelistarrayyo‘q; Ruxsat etilgan IP’lar: null ro‘yxatni o‘zgartirmaydi, bo‘sh massiv uni tozalaydi; null bo‘lishi mumkin
ip_blacklistarrayyo‘q; Taqiqlangan IP’lar: null ro‘yxatni o‘zgartirmaydi, bo‘sh massiv uni tozalaydi; null bo‘lishi mumkin
quotanumberyo‘q; Kalitning USD’dagi sarf limiti; 0 — limitsiz; null bo‘lishi mumkin
expires_atstringyo‘q; Amal qilish muddati tugash vaqti ISO 8601 formatida; null bo‘lishi mumkin
reset_quotabooleanyo‘q; Sarf limitining sarflangan qismini nolga tushirish; null bo‘lishi mumkin
rate_limit_5hnumberyo‘q; null bo‘lishi mumkin
rate_limit_1dnumberyo‘q; null bo‘lishi mumkin
rate_limit_7dnumberyo‘q; null bo‘lishi mumkin
reset_rate_limit_usagebooleanyo‘q; Sarf davrlari limitlarida hisoblangan sarfni nolga tushirish; null bo‘lishi mumkin
So‘rov tanasi shabloni
{
  "name": "PLACEHOLDER_NAME (string)",
  "status": "PLACEHOLDER_STATUS (string)",
  "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
  "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
  "quota": "PLACEHOLDER_QUOTA (number)",
  "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
  "reset_quota": "PLACEHOLDER_RESET_QUOTA (boolean)",
  "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
  "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
  "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
  "reset_rate_limit_usage": "PLACEHOLDER_RESET_RATE_LIMIT_USAGE (boolean)"
}

PLACEHOLDER siz kiritadigan qiymat va uning turini bildiradi. Qiymatlarni almashtiring va faqat kerakli ixtiyoriy maydonlarni qoldiring; sonlar, boolean, obyektlar yoki massivlar o‘rniga matnli belgilar yuborilmaydi.

So‘rov sxemasi: UpdateAPIKeyRequest

Javob

JSON javobi code, message va data maydonlarini o‘z ichiga oladi. data mazmuni quyidagi sxemalarda tasvirlangan.

Javob ma’lumotlari sxemalari: APIKey. Maydonlar va turlar “Ma’lumotlar sxemalari” sahifalarida.

Javob sxemasi, qiymatlar shartli
{
  "code": 0,
  "message": "success",
  "data": {
    "id": "PLACEHOLDER_ID (integer)",
    "user_id": "PLACEHOLDER_USER_ID (integer)",
    "key": "PLACEHOLDER_KEY (string)",
    "name": "PLACEHOLDER_NAME (string)",
    "status": "PLACEHOLDER_STATUS (string)",
    "ip_whitelist": "PLACEHOLDER_IP_WHITELIST (array)",
    "ip_blacklist": "PLACEHOLDER_IP_BLACKLIST (array)",
    "last_used_at": "PLACEHOLDER_LAST_USED_AT (string)",
    "last_used_ip": "PLACEHOLDER_LAST_USED_IP (string)",
    "quota": "PLACEHOLDER_QUOTA (number)",
    "quota_used": "PLACEHOLDER_QUOTA_USED (number)",
    "expires_at": "PLACEHOLDER_EXPIRES_AT (string)",
    "created_at": "PLACEHOLDER_CREATED_AT (string)",
    "updated_at": "PLACEHOLDER_UPDATED_AT (string)",
    "current_concurrency": "PLACEHOLDER_CURRENT_CONCURRENCY (integer)",
    "rate_limit_5h": "PLACEHOLDER_RATE_LIMIT_5H (number)",
    "rate_limit_1d": "PLACEHOLDER_RATE_LIMIT_1D (number)",
    "rate_limit_7d": "PLACEHOLDER_RATE_LIMIT_7D (number)",
    "usage_5h": "PLACEHOLDER_USAGE_5H (number)",
    "usage_1d": "PLACEHOLDER_USAGE_1D (number)",
    "usage_7d": "PLACEHOLDER_USAGE_7D (number)",
    "window_5h_start": "PLACEHOLDER_WINDOW_5H_START (string)",
    "window_1d_start": "PLACEHOLDER_WINDOW_1D_START (string)",
    "window_7d_start": "PLACEHOLDER_WINDOW_7D_START (string)",
    "reset_5h_at": "PLACEHOLDER_RESET_5H_AT (string)",
    "reset_1d_at": "PLACEHOLDER_RESET_1D_AT (string)",
    "reset_7d_at": "PLACEHOLDER_RESET_7D_AT (string)",
    "user": "PLACEHOLDER_USER (object)"
  }
}

Xususiyatlar: Barcha shaxsiy ma’lumotlar va obyektlar JWT subyekti bilan cheklangan.

Xususiyatlar: operatsiya holatni o‘zgartiradi yoki bir martalik avtorizatsiyani davom ettiradi; misol API interfeysining shartlarini tavsiflaydi va bajarilmaydi.

Xususiyatlar: javob maxfiy key’ni o‘z ichiga oladi; haqiqiy qiymatlarni e’lon qilmang.

Xususiyatlar: kalit bo‘yicha zaxirali yakunlanmagan so‘rovlar bor ekan, uning sarf limitini kamaytirish yoki sarf hisoblagichlarini nolga tushirish mumkin emas. Faqat o‘zgartirayotgan maydonlaringizni yuboring.

Savollaringiz qoldimi? Request ID va tavsifni yuboring — tushunishga yordam beramiz.Yordam xizmatiga yozish