APIキー
Markdownメソッド、リクエストのフィールド、レスポンス。
完全ガイド
このセクションには5メソッドがあります。メソッドを開くと、アクセス条件、リクエストのフィールド、レスポンスを確認できます。
| メソッドとパス | 説明 | アクセス |
|---|---|---|
GET /api/v1/keys | APIキーの一覧 | ダッシュボードのトークン |
POST /api/v1/keys | APIキーの作成 | ダッシュボードのトークン |
DELETE /api/v1/keys/:id | APIキーの削除 | ダッシュボードのトークン |
GET /api/v1/keys/:id | IDによるAPIキーの取得 | ダッシュボードのトークン |
PUT /api/v1/keys/:id | APIキーの変更 | ダッシュボードのトークン |
GET /api/v1/keys — APIキーの一覧
アクセス:ダッシュボードのトークン
/api/v1/keyscurl --fail-with-body "https://ailoot.ai/api/v1/keys" \
-H "Authorization: Bearer $TOKEN"クエリパラメータ
| フィールド | タイプ | 必須 | 検証/説明 |
|---|---|---|---|
sort_by | string | いいえ | ;デフォルト:created_at |
sort_order | string | いいえ | ;デフォルト:desc |
search | string | いいえ | |
status | string | いいえ | |
page | integer | いいえ | ;デフォルト:1;正の整数;page_size/limit <=1000 |
page_size | integer | いいえ | ;デフォルト:20;正の整数;page_size/limit <=1000 |
limit | integer | いいえ | ;デフォルト:20;正の整数;page_size/limit <=1000 |
リクエストボディは不要です。上記のパラメータはURLで渡してください。
レスポンス
JSONレスポンスにはcode、message、dataが含まれます。dataの内容は、以下のスキーマで説明します。
レスポンスのデータスキーマ:APIKey。フィールドと型は、「データスキーマ」の各ページに記載されています。
{
"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)"
}
}補足:すべての個人データとオブジェクトは、JWTの主体に限定されます。
補足:レスポンスには秘密情報であるkeyが含まれます。実際の値を公開しないでください。
POST /api/v1/keys — APIキーの作成
アクセス:ダッシュボードのトークン
/api/v1/keysJSON/フォームのフィールド
| フィールド | タイプ | 必須 | 検証/説明 |
|---|---|---|---|
name | string | はい | required |
custom_key | string | いいえ | ;任意の独自キー値;null可 |
ip_whitelist | array | いいえ | ;許可IPのリスト |
ip_blacklist | array | いいえ | ;禁止IPのリスト |
quota | number | いいえ | ;キーの支出上限(USD);null可 |
expires_in_days | integer | いいえ | ;有効期間(日数);null可 |
rate_limit_5h | number | いいえ | ;null可 |
rate_limit_1d | number | いいえ | ;null可 |
rate_limit_7d | number | いいえ | ;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は、入力する値とその型を示します。値を置き換え、必要な任意フィールドだけを残してください。数値、boolean、オブジェクト、配列の代わりに、文字列のマーカーを送信しないでください。
リクエストのスキーマ:CreateAPIKeyRequest
レスポンス
JSONレスポンスにはcode、message、dataが含まれます。dataの内容は、以下のスキーマで説明します。
レスポンスのデータスキーマ:APIKey。フィールドと型は、「データスキーマ」の各ページに記載されています。
{
"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)"
}
}補足:すべての個人データとオブジェクトは、JWTの主体に限定されます。
補足:この操作は状態を変更するか、一度限りの認証手続きを継続します。例は契約仕様を説明するもので、実行されません。
補足:Idempotency-Keyに対応しています。再送すると、保存済みのレスポンスがX-Idempotency-Replayedとともに返されます。
補足:レスポンスには秘密情報であるkeyが含まれます。実際の値を公開しないでください。
DELETE /api/v1/keys/:id — APIキーの削除
アクセス:ダッシュボードのトークン
/api/v1/keys/:idパスパラメータ
| フィールド | タイプ | 必須 | 検証/説明 |
|---|---|---|---|
id | integer | はい |
リクエストボディは不要です。
レスポンス
JSONレスポンスにはcode、message、dataが含まれます。dataの内容は、以下のスキーマで説明します。
{
"code": 0,
"message": "success",
"data": {
"message": "VALUE_FROM_RESPONSE"
}
}補足:すべての個人データとオブジェクトは、JWTの主体に限定されます。
補足:この操作は状態を変更するか、一度限りの認証手続きを継続します。例は契約仕様を説明するもので、実行されません。
補足:レスポンスには秘密情報であるkeyが含まれます。実際の値を公開しないでください。
GET /api/v1/keys/:id — IDによるAPIキーの取得
アクセス:ダッシュボードのトークン
/api/v1/keys/:idcurl --fail-with-body "https://ailoot.ai/api/v1/keys/$ID" \
-H "Authorization: Bearer $TOKEN"パスパラメータ
| フィールド | タイプ | 必須 | 検証/説明 |
|---|---|---|---|
id | integer | はい |
リクエストボディは不要です。上記のパラメータはURLで渡してください。
レスポンス
JSONレスポンスにはcode、message、dataが含まれます。dataの内容は、以下のスキーマで説明します。
レスポンスのデータスキーマ:APIKey。フィールドと型は、「データスキーマ」の各ページに記載されています。
{
"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)"
}
}補足:すべての個人データとオブジェクトは、JWTの主体に限定されます。
補足:レスポンスには秘密情報であるkeyが含まれます。実際の値を公開しないでください。
PUT /api/v1/keys/:id — APIキーの変更
アクセス:ダッシュボードのトークン
/api/v1/keys/:idパスパラメータ
| フィールド | タイプ | 必須 | 検証/説明 |
|---|---|---|---|
id | integer | はい |
JSON/フォームのフィールド
| フィールド | タイプ | 必須 | 検証/説明 |
|---|---|---|---|
name | string | いいえ | |
status | string | いいえ | omitempty,oneof=active inactive |
ip_whitelist | array | いいえ | ;許可IP:nullではリストを変更せず、空の配列では消去します;null可 |
ip_blacklist | array | いいえ | ;禁止IP:nullではリストを変更せず、空の配列では消去します;null可 |
quota | number | いいえ | ;キーの支出上限(USD);0は無制限;null可 |
expires_at | string | いいえ | ;有効期限(ISO 8601形式);null可 |
reset_quota | boolean | いいえ | ;支出上限の使用済み金額をリセット;null可 |
rate_limit_5h | number | いいえ | ;null可 |
rate_limit_1d | number | いいえ | ;null可 |
rate_limit_7d | number | いいえ | ;null可 |
reset_rate_limit_usage | boolean | いいえ | ;時間ウィンドウの使用済み金額をリセット;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は、入力する値とその型を示します。値を置き換え、必要な任意フィールドだけを残してください。数値、boolean、オブジェクト、配列の代わりに、文字列のマーカーを送信しないでください。
リクエストのスキーマ:UpdateAPIKeyRequest
レスポンス
JSONレスポンスにはcode、message、dataが含まれます。dataの内容は、以下のスキーマで説明します。
レスポンスのデータスキーマ:APIKey。フィールドと型は、「データスキーマ」の各ページに記載されています。
{
"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)"
}
}補足:すべての個人データとオブジェクトは、JWTの主体に限定されます。
補足:この操作は状態を変更するか、一度限りの認証手続きを継続します。例は契約仕様を説明するもので、実行されません。
補足:レスポンスには秘密情報であるkeyが含まれます。実際の値を公開しないでください。
補足:キーに仮確保中の未完了リクエストがある間は、その支出上限を引き下げたりリセットしたりできません。変更するフィールドだけを送信してください。