Skip to content
ドキュメントのセクション

認証

計算ツールの呼び出しには、どのプランでも API キーが必要です。無料のキーは費用がかかりません。計算ツールのルート、ジョブのルート、使用状況のエンドポイントは、どちらのヘッダーでもキーを受け付けます。

キーは rfc_ で始まります。キーが表示されるのは作成時の一度だけで、二度と表示されません。保存されるのはハッシュだけです。

キーを送信する

キーは X-API-Key ヘッダー、または Authorization: Bearer rfc_… として送信します。キーのないリクエストは 401 で拒否され、keyUrl が返されます。発行されていないキーや失効したキーも 401 で拒否されます。401 が利用枠に関するものであることはありません。利用枠を使い切った場合は 402 です(エラーをご覧ください)。

利用枠はアカウントに属します

アカウントのすべてのキー(失効したキーを含む)の呼び出しは、1 つの月間の値に計上されます。この値は UTC で毎月の初めにリセットされ、各呼び出しは引き続き、それを行ったキーに記録されます。

プランごとの月間利用枠とキーの上限
プラン月間の呼び出し回数とキー
Free月 5 回、API キー 1 個
Pro月 100 回、API キー 3 個
API月 10,000 回、API キー 5 個

キーを取得する

人はダッシュボードでキーを取得します。プログラムが利用者にキーを渡す方法は 2 つあり、どちらも通常の rfc_ キーになります。ほかのキーと同様に計上され、一覧に表示され、失効させることができます。

デバイス認可(ブラウザーのないプログラム向け)

OAuth 2.0 デバイス認可グラント(RFC 8628)を使うと、利用者が何も貼り付けなくても、プログラム(プラグイン、CLI、ローカルの MCP サーバー)がキーを受け取れます。プログラムはコードを要求し、そのコードと https://rftools.io/device/ を利用者に示してから、ポーリングします。利用者はそこでログインし、プログラムが名乗った名前を確認して、承認または拒否します。承認されると、プログラムの次のポーリングでキーが一度だけ返されます。どちらのエンドポイントも JSON またはフォーム形式のボディを受け付けます。

  • コードは BCDFGHJKLMNPQRSTVWXZ から選んだ 8 文字で、XXXX-XXXX の形で表示され、発行から 10 分で期限切れになります。
  • ポーリングは interval(最初は 5 秒)より速くしないでください。
  • このキーはアカウントのキーの上限に数えられます。上限に達したアカウントは、先にキーを失効させるよう求められます。
  • 利用者に見せるのはコードだけにしてください。device_code は交換されるまでプログラムの秘密情報です。
  • Python ライブラリはこれらをすべて行います:rftools login または rftools.Client().login()。

待っている間、トークンのエンドポイントは RFC 8628 の error 付きで 400 を返します:

デバイス認可のエラー
error意味
authorization_pending利用者がまだ判断していません。間隔を守ってポーリングを続けてください。
slow_down間隔より速くポーリングしました。間隔が 5 秒延び、ボディに新しい間隔が入ります。
access_denied利用者がコードを拒否したか、キーを受け取る前にアカウントがキーの上限に達しました。ポーリングを止めてください。
expired_tokenコードの有効期限が切れた(発行から 10 分)か、そのキーはすでに受け取られています。最初からやり直してください。
invalid_grantデバイスコードが別の client_id に対して発行されています。
invalid_request / unsupported_grant_typeパラメーターが欠けているか、grant_type が正しくありません。

デバイス認可のエンドポイントは、何を送っても、認証情報なしのレート制限が適用されます。