エラーとレート制限
エラー形式
すべてのエラーはJSON本文を返します。
json
{
"message": "Human-readable description",
"code": "MACHINE_READABLE_CODE"
}認証エラーには追加で authenticated フィールドが含まれます。
json
{
"message": "Invalid API key",
"code": "INVALID_API_KEY_EXCEPTION",
"authenticated": false
}HTTPステータスコード
| Status | Meaning |
|---|---|
400 Bad Request | 必須フィールドの不足、無効な値、または制約違反 |
401 Unauthorized | APIキーがない、または無効 |
403 Forbidden | 認証済みだが、この操作を実行する権限がない |
404 Not Found | リソースが存在しない、または現在の権限では到達できない |
429 Too Many Requests | レート制限を超過 |
500 Internal Server Error | 予期しないサーバーエラー |
レート制限
各エンドポイントには、レート制限を決めるtierが割り当てられます。カウンターはルートごとで、同じアカウントが所有するすべてのAPIキー間で共有されます。
| Tier | Limit | Window | Block duration |
|---|---|---|---|
| Tier 1 | 5 requests | 5 minutes | 30 minutes |
| Tier 2 | 5 requests | 1 minute | 10 minutes |
| Tier 3 | 20 requests | 1 minute | 10 minutes |
| Tier 4 | 60 requests | 1 minute | 10 minutes |
すべてのレスポンスには次のヘッダーが含まれます。
| Header | Description |
|---|---|
x-ratelimit-limit | 1分あたりの最大リクエスト数 |
x-ratelimit-remaining | 現在のウィンドウで残っているリクエスト数 |
x-ratelimit-reset | ウィンドウがリセットされるタイムスタンプ |
ブロック中は、429 ステータスとともに x-ratelimit-reset のみ返されます。