API 概要
Token 管理 API では、コンソールでキーを 1 つずつクリックして操作する代わりに、APIキーのライフサイクル全体をコードで管理できます。 最も一般的なユースケースは 一括発行 です。各チームメンバー、下流の顧客、またはプロジェクトにそれぞれ専用のキーを割り当て、利用できる金額の上限、呼び出せるモデル、有効な期間 にそれぞれ制限を設定します。クォータ上限
remain_quota は、このキーが合計で利用できる金額の上限を設定しますモデル上限
models は許可リストを設定し、それ以外への呼び出しは拒否されます有効期限上限
expired_time は有効期限のタイムスタンプを設定し、その後はキーが動作しなくなります1つか2つのキーだけ必要なら、コンソールのほうが速いです。APIキーの作成方法を参照してください。この API は、自動発行、定期ローテーション、またはキー管理を自社システムに組み込む用途に向いています。
システムトークンの取得方法
トークン管理 API は システムトークン で認証します。これは API キーとは別物です。1
コンソールにアクセス
プロフィールページにアクセスするには
api.apiyi.com/account/profile を開いてください2
システムトークンを見つける
ページ下部の「アカウントオプション - システムトークン」セクションを見つけてください
3
アクセストークンを生成
アカウントのパスワードを入力すると、その後の API クエリに使用できるアクセストークンを取得できます

エンドポイント
すべてのエンドポイントは同じ方法で認証します。生のシステム token をAuthorization ヘッダーに入れ、Bearer プレフィックスは付けません。
ベース URL は
https://api.apiyi.com です。
トークンの作成
リクエスト例
リクエスト項目
レスポンス例
バッチ作成
サーバー側にバッチ用エンドポイントはありません — リクエストボディにcount のようなものを渡しても
効果はなく、単一の token が作成されるだけです。バッチ発行はクライアント側でループして行います。
- Python
- Node.js
- cURL
3つのリミットの使い方
クォータ制限
remain_quota は token が使える金額の上限を設定します。換算は
残高照会 API と一致します:
換算ルール
500,000 クォータ = $1.00 USD
remain_quota を
5000000 に、unlimited_quota を false に設定します。これまでの消費量は、token の
used_quota フィールドから読み取れます。
モデル制限
models は、カンマ区切りの許可リストです。一度設定すると、リスト外の model を呼び出すと拒否されます:
models を省略すると、制限なしを意味します。
有効期限制限
expired_time は Unix 秒のタイムスタンプで、-1 は期限なしを意味します。たとえば、30日後に期限切れになるキー:
トークン一覧
token の更新
無効化と削除
無効化(記録は保持されます)
無効化すると、キーは直ちに動作しなくなります — そのキーを使った呼び出しは 401 を返します — ただし token の記録とその利用履歴は保持されます。削除(元に戻せません)
削除は元に戻せません。key を一時的に停止したいだけなら、代わりに無効化してください —
利用履歴は照合用に引き続き利用できます。
よくある質問
作成時に返されたキーが使えないのはなぜですか?
作成時に返されたキーが使えないのはなぜですか?
レスポンス内の
keyにはsk-プレフィックスが含まれていません。自分で先頭に付けてください:
利用可能なAPIキーは、返された値の前にsk-を付けたものです。新しく作成した token がクォータ不足と表示されるのはなぜですか?
新しく作成した token がクォータ不足と表示されるのはなぜですか?
おそらく、作成時に
remain_quotaが設定されておらず、unlimited_quotaもtrueに設定されていなかったためです。
そのデフォルトの組み合わせでは、クォータ 0 の token が作成されます。2つのうちどちらか一方を
明示的に指定して、再作成してください。model_limits または allow_ips が効かないのはなぜですか?
model_limits または allow_ips が効かないのはなぜですか?
これらのフィールドは、
model_limits_enabledとともに、現時点では有効になりません。渡しても
エラーにはなりませんが、何も保存されません。利用可能なモデルを制限するにはmodelsを使用してください。送信元IP
の制限は、当面はお客様側で対応する必要があります。1回のリクエストで複数の token を作成できますか?
1回のリクエストで複数の token を作成できますか?
サーバー側のバッチエンドポイントはなく、body に
countのようなものを渡しても
効果はありません。代わりに、クライアント側で create 呼び出しをループしてください。上の一括作成セクションをご覧ください。update 後に他のフィールドが消えてしまいました
update 後に他のフィールドが消えてしまいました
update エンドポイントでは完全なオブジェクトが必要です。まず完全なオブジェクトを
GETし、変更してから、
変更されたフィールドだけを送るのではなく、全体をPUTしてください。無効化と削除の違いは何ですか?
無効化と削除の違いは何ですか?
無効化(
status: 2)するとキーはすぐに使えなくなりますが、レコードと利用履歴は保持され、
いつでも1に戻せます。削除は元に戻せず、レコードも削除されます。一時停止には無効化を
お勧めします。各キーの使用額を確認するにはどうすればよいですか?
各キーの使用額を確認するにはどうすればよいですか?
token の
used_quotaフィールドは、そのキーの累計使用額です(÷ 500,000 = USD)。期間ごとの内訳や呼び出し単位の詳細を確認するには、
token_nameフィルター付きで Log Query API を使用してください。重要な注意事項
運用のヒント
- 一括で作成する場合は、呼び出し間に適度な遅延を入れて、一時的な高い同時実行数を避けてください
- 各 key に意味のある
name(たとえばteam-aliceやprod-webhook)を付けておくと、後でログ上でtoken_name別に使用状況を把握できます - ローテーション時は、新しい key を作成し、トラフィックを切り替え、古い key を無効化し、しばらく様子を見てから、 呼び出しが残っていないことを確認した時点で削除してください
関連ドキュメント
- Log Query API — key ごとの呼び出し詳細と課金
- Balance Query API — 残りのアカウント残高
- API key の作成方法 — コンソールでの手動作成
- Tokens とグループ — グループの役割と選び方