Klíče API
MarkdownMetody, pole požadavků a odpovědi.
Úplný průvodce
V této sekci je 5 metod. Otevřete metodu a prohlédněte si podmínky přístupu, pole požadavku a odpověď.
| Metoda a cesta | Popis | Přístup |
|---|---|---|
GET /api/v1/keys | Seznam – Klíče API | Token uživatelského panelu |
POST /api/v1/keys | Vytvoření klíče API | Token uživatelského panelu |
DELETE /api/v1/keys/:id | Odstranění – Klíče API | Token uživatelského panelu |
GET /api/v1/keys/:id | Načtení podle identifikátoru – Klíče API | Token uživatelského panelu |
PUT /api/v1/keys/:id | Úprava klíče API | Token uživatelského panelu |
GET /api/v1/keys – Seznam – Klíče API
Přístup: token uživatelského panelu
/api/v1/keyscurl --fail-with-body "https://ailoot.ai/api/v1/keys" \
-H "Authorization: Bearer $TOKEN"Parametry dotazu (query)
| Pole | Typ | Povinné | Kontrola / popis |
|---|---|---|---|
sort_by | string | ne | ; výchozí hodnota: created_at |
sort_order | string | ne | ; výchozí hodnota: desc |
search | string | ne | |
status | string | ne | |
page | integer | ne | ; výchozí hodnota: 1; kladné číslo; page_size/limit <=1000 |
page_size | integer | ne | ; výchozí hodnota: 20; kladné číslo; page_size/limit <=1000 |
limit | integer | ne | ; výchozí hodnota: 20; kladné číslo; page_size/limit <=1000 |
Tělo požadavku není potřeba. Výše uvedené parametry předávejte v URL.
Odpověď
Odpověď JSON obsahuje code, message a data. Obsah data je popsán ve schématech níže.
Datová schémata odpovědi: APIKey. Pole a typy najdete na stránkách „Datová schémata“.
{
"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)"
}
}Specifika: všechny osobní údaje a objekty jsou omezeny na subjekt JWT.
Specifika: Odpověď obsahuje tajný key; skutečné hodnoty nezveřejňujte.
POST /api/v1/keys – Vytvoření klíče API
Přístup: token uživatelského panelu
/api/v1/keysPole JSON / formuláře
| Pole | Typ | Povinné | Kontrola / popis |
|---|---|---|---|
name | string | ano | required |
custom_key | string | ne | ; Nepovinná vlastní hodnota klíče; může být null |
ip_whitelist | array | ne | ; Seznam povolených IP adres |
ip_blacklist | array | ne | ; Seznam zakázaných IP adres |
quota | number | ne | ; Limit útraty klíče v USD; může být null |
expires_in_days | integer | ne | ; Doba platnosti ve dnech; může být null |
rate_limit_5h | number | ne | ; může být null |
rate_limit_1d | number | ne | ; může být null |
rate_limit_7d | number | ne | ; může být null |
{
"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 označuje váš vstup a jeho typ. Nahraďte hodnoty a ponechte pouze potřebná nepovinná pole; řetězcové zástupné značky se neodesílají místo čísel, hodnot typu boolean, objektů nebo polí.
Schéma požadavku: CreateAPIKeyRequest
Odpověď
Odpověď JSON obsahuje code, message a data. Obsah data je popsán ve schématech níže.
Datová schémata odpovědi: APIKey. Pole a typy najdete na stránkách „Datová schémata“.
{
"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)"
}
}Specifika: všechny osobní údaje a objekty jsou omezeny na subjekt JWT.
Specifika: operace mění stav nebo pokračuje v jednorázové autorizaci; příklad popisuje kontrakt a neprovádí se.
Specifika: Idempotency-Key je podporován; opakovaný požadavek vrátí uloženou odpověď s X-Idempotency-Replayed.
Specifika: Odpověď obsahuje tajný key; skutečné hodnoty nezveřejňujte.
DELETE /api/v1/keys/:id – Odstranění – Klíče API
Přístup: token uživatelského panelu
/api/v1/keys/:idParametry cesty
| Pole | Typ | Povinné | Kontrola / popis |
|---|---|---|---|
id | integer | ano |
Tělo požadavku není potřeba.
Odpověď
Odpověď JSON obsahuje code, message a data. Obsah data je popsán ve schématech níže.
{
"code": 0,
"message": "success",
"data": {
"message": "VALUE_FROM_RESPONSE"
}
}Specifika: všechny osobní údaje a objekty jsou omezeny na subjekt JWT.
Specifika: operace mění stav nebo pokračuje v jednorázové autorizaci; příklad popisuje kontrakt a neprovádí se.
Specifika: Odpověď obsahuje tajný key; skutečné hodnoty nezveřejňujte.
GET /api/v1/keys/:id – Načtení podle identifikátoru – Klíče API
Přístup: token uživatelského panelu
/api/v1/keys/:idcurl --fail-with-body "https://ailoot.ai/api/v1/keys/$ID" \
-H "Authorization: Bearer $TOKEN"Parametry cesty
| Pole | Typ | Povinné | Kontrola / popis |
|---|---|---|---|
id | integer | ano |
Tělo požadavku není potřeba. Výše uvedené parametry předávejte v URL.
Odpověď
Odpověď JSON obsahuje code, message a data. Obsah data je popsán ve schématech níže.
Datová schémata odpovědi: APIKey. Pole a typy najdete na stránkách „Datová schémata“.
{
"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)"
}
}Specifika: všechny osobní údaje a objekty jsou omezeny na subjekt JWT.
Specifika: Odpověď obsahuje tajný key; skutečné hodnoty nezveřejňujte.
PUT /api/v1/keys/:id – Úprava klíče API
Přístup: token uživatelského panelu
/api/v1/keys/:idParametry cesty
| Pole | Typ | Povinné | Kontrola / popis |
|---|---|---|---|
id | integer | ano |
Pole JSON / formuláře
| Pole | Typ | Povinné | Kontrola / popis |
|---|---|---|---|
name | string | ne | |
status | string | ne | omitempty,oneof=active inactive |
ip_whitelist | array | ne | ; Povolené IP adresy: null seznam nemění, prázdné pole seznam vyprázdní; může být null |
ip_blacklist | array | ne | ; Zakázané IP adresy: null seznam nemění, prázdné pole seznam vyprázdní; může být null |
quota | number | ne | ; Limit útraty klíče v USD; 0 – bez limitu; může být null |
expires_at | string | ne | ; Čas vypršení platnosti ve formátu ISO 8601; může být null |
reset_quota | boolean | ne | ; Vynulovat již vyčerpanou část limitu útraty; může být null |
rate_limit_5h | number | ne | ; může být null |
rate_limit_1d | number | ne | ; může být null |
rate_limit_7d | number | ne | ; může být null |
reset_rate_limit_usage | boolean | ne | ; Vynulovat čerpání limitů za časová okna; může být null |
{
"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 označuje váš vstup a jeho typ. Nahraďte hodnoty a ponechte pouze potřebná nepovinná pole; řetězcové zástupné značky se neodesílají místo čísel, hodnot typu boolean, objektů nebo polí.
Schéma požadavku: UpdateAPIKeyRequest
Odpověď
Odpověď JSON obsahuje code, message a data. Obsah data je popsán ve schématech níže.
Datová schémata odpovědi: APIKey. Pole a typy najdete na stránkách „Datová schémata“.
{
"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)"
}
}Specifika: všechny osobní údaje a objekty jsou omezeny na subjekt JWT.
Specifika: operace mění stav nebo pokračuje v jednorázové autorizaci; příklad popisuje kontrakt a neprovádí se.
Specifika: Odpověď obsahuje tajný key; skutečné hodnoty nezveřejňujte.
Specifika: Dokud má klíč nedokončené požadavky s rezervovanou částkou, nelze jeho limit útraty snížit ani vynulovat. Odesílejte pouze pole, která měníte.