リセラー/エンドユーザー ID と制限
エンドユーザー ID
1 つのアカウントや 1 つの API キーで多数のエンドユーザーにサービスを提供している場合は、すべてのリクエストに X-End-User-Id ヘッダーを付けて、どのエンドユーザーのリクエストかを示してください。あるエンドユーザーが違反を繰り返した場合、Wokey はそのエンドユーザーだけを制限し、ほかのユーザーはそのまま利用を続けられます。どのユーザーだったかはアプリ内通知でお知らせします。
ヘッダーの送信link
cURL
curl https://api.wokey.ai/v1/messages \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "X-End-User-Id: u_3f8a2c1e9b7d" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5-5",
"max_tokens": 1024,
"messages": [
{ "role": "user", "content": "Hello" }
]
}'- 値はご自身のエンドユーザー ID で、表示可能な ASCII 文字 1〜128 文字(英字、数字、記号。スペースや非 ASCII 文字は不可)です。UUID、内部 ID、またはそのハッシュを使い、メールアドレスや電話番号などの個人情報は使わないでください。OpenAI の safety_identifier や Anthropic の metadata.user_id として既に送っている値はそのまま使えます。ログインしていないユーザーにはセッション ID を送るか、ヘッダーを省略してください。anonymous や guest のような固定値を使うと、多くの人が 1 人のエンドユーザーとして扱われ、まとめて制限されます。
- Chat Completions、Responses、Messages のいずれも受け付けます。このヘッダーは Wokey 専用で、アップストリームには転送されません。SDK では、default_headers(Python)または defaultHeaders(Node.js)でクライアント全体に追加するか、extra_headers でリクエストごとに追加します。
制限link
- ルールはアカウント単位の制限と同じですが、そのエンドユーザーだけに適用されます。1 人のエンドユーザーが 1 つのモデルで短時間に違反を繰り返すと、まずそのモデルでレート制限されます(同時リクエスト 1、1 分あたり 10 リクエスト)。違反が続くと、そのエンドユーザーのそのモデルは 24 時間停止され、その後自動的に再開します。30 日以内に複数のモデルが停止されると、サポートが復旧するまで、そのエンドユーザーのすべてのモデル呼び出しが停止されます。
- エンドユーザーのレート制限を超えたリクエストには HTTP 429 rate_limit_exceeded が、停止中のエンドユーザーからのリクエストには HTTP 403 request_blocked が返ります。どちらもアップストリームには届かず、課金されません。エンドユーザーが停止されると、エンドユーザー ID、モデル、再開時刻を記載したアプリ内通知が届きます。1 時間以内の通知は 1 件にまとめられます。
- このヘッダーでアカウントの制限が緩和されることはありません。違反はヘッダーの有無にかかわらず、アカウント単位の制限のもとでアカウントに加算されます。停止中のエンドユーザーからのリクエストはアップストリームに届かなくなるため、アカウントには加算されなくなります。実際に違反となったリクエストには、通常どおり違反処理手数料が課金されます。
コンソールでの管理link
エンタープライズおよびリセラーのアカウントは、API コンソールの「エンドユーザー」タブで、過去 7 日間に制限されたエンドユーザーとその拒否理由を確認し、レート制限や停止を自分で解除できます。この方法での解除は、エンドユーザーごとに 24 時間に 1 回までです。すべてのモデルで停止されたエンドユーザーは、引き続きサポートによる対応が必要です。タブを有効にするにはサポートにお問い合わせください。
無効な値link
無効な値(長すぎる、スペースや非 ASCII 文字を含む、1 つのリクエストでヘッダーが 2 回送られた)は、ヘッダーがないものとして扱われます。リクエストは通常どおり完了し、API キーごとに 1 日 1 回アプリ内でお知らせします。