すべてのRAIL APIリクエストはAPIキーで認証されます。キーはあなたのアカウントに紐づいており、クレジット残高を保持し、使用ログに表示されます。
APIキーの取得
キーを生成
キーを生成をクリックします。キーはrail_で始まり、一度だけ表示されます。すぐにコピーしてください。ダイアログを閉じた後、キーは再表示されません。ページを離れる前に安全に保存してください。
APIキーの使用
リクエストごとにAuthorizationヘッダーにBearerトークンとしてキーを渡します:
Authorization: Bearer YOUR_RAIL_API_KEY
完全なcURLの例:
curl -X POST https://api.responsibleailabs.ai/railscore/v1/eval \
-H "Authorization: Bearer YOUR_RAIL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"content": "あなたのAI生成テキスト", "mode": "basic"}'
SDK認証
両方のSDKはクライアント構築時にAPIキーを受け取り、ヘッダーを自動的に追加します:
from rail_score_sdk import RailScoreClient
import os
# キーを直接渡す(スクリプトには適しています)
client = RailScoreClient(api_key="YOUR_RAIL_API_KEY")
# 推奨:環境変数から読み取る
client = RailScoreClient(api_key=os.environ["RAIL_API_KEY"])
環境変数
ソースファイルにAPIキーをハードコーディングしないでください。環境変数を使用し、キーをバージョン管理から除外してください。
ローカル(dotenv)
Vercel / Edge
Docker
# .env — .gitignoreに追加し、このファイルをコミットしないでください
RAIL_API_KEY=YOUR_RAIL_API_KEY
from dotenv import load_dotenv
import os
load_dotenv()
api_key = os.environ["RAIL_API_KEY"]
Vercel Dashboard > 設定 > 環境変数から追加します。変数名:RAIL_API_KEY変数をNEXT_PUBLIC_でプレフィックスしないでください。そうするとブラウザバンドルに露出します。
// サーバーサイドのみ
const apiKey = process.env.RAIL_API_KEY;
# 実行時に渡す — 秘密をイメージレイヤーに焼き込まないでください
docker run -e RAIL_API_KEY=YOUR_RAIL_API_KEY my-app
# docker-compose.yml
services:
app:
image: my-app
environment:
- RAIL_API_KEY=${RAIL_API_KEY}
キー管理
異なる環境(本番、ステージング、CI)用に複数のキーを作成できます。すべてのキーはダッシュボードから管理します。
| アクション | 使用するタイミング |
|---|
| キーを生成 | 新しい環境、新しいサービスのオンボーディング、またはスケジュールに従った資格情報のローテーション |
| キーをリネーム | 使用状況追跡のために「production-chatbot」や「staging-ci」などのコンテキストを追加 |
| キーを無効化 | 漏洩が疑われる場合、従業員のオフボーディング、またはサービスの廃止。即時に有効になります。 |
ゼロダウンタイムローテーション: 新しいキーを生成し、それをサービスにデプロイして動作を確認した後、古いキーを無効化します。スワッピングは数秒で完了します。
レート制限
レート制限はAPIキーごとに適用されます。制限を超えるとHTTP 429が返されます。
| プラン | リクエスト / 分 | リクエスト / 日 |
|---|
| 無料 | 10 | 100 |
| プロ | 60 | 5,000 |
| ビジネス | 300 | 50,000 |
| エンタープライズ | カスタム | カスタム |
セキュリティのベストプラクティス
- クライアントサイドコードにキーを露出しないでください。 ブラウザは公開されています。常にバックエンドまたはサーバーレス関数からAPIを呼び出してください。
- キーを環境変数に保存し、 ソースファイルやDockerイメージにハードコーディングしないでください。
- 最初のコミットの前に
.envを.gitignoreに追加し、キーが誤ってプッシュされないようにします。
- 環境ごとに別々のキーを使用してください。 ステージングが侵害された場合でも、本番は安全です。
- 露出した場合は即座に無効化してください。 まずは代替を生成し、その後無効化します。
- スケジュールに従ってローテーションしてください。 定期的にキーを再生成することで、未検出の漏洩の影響範囲を制限します。
認証エラー応答
| ステータス | エラー | 修正 |
|---|
401 | Authorizationヘッダーが欠落または不正 | Authorization: Bearer …を追加 |
401 | 無効なAPIキー | キーがrail_で始まり、正しくコピーされていることを確認 |
403 | APIキーが無効または非アクティブ | ダッシュボードから新しいキーを生成 |
429 | レート制限を超えました | リクエスト頻度を減らすか、プランをアップグレード |
次は何をするか
クイックスタート
5分以内に最初の評価リクエストを行います。
クレジットと料金
呼び出しごとのクレジットの請求方法を理解します。
APIリファレンス
すべてのエンドポイントの完全なパラメータリファレンス。
ダッシュボード
キーを管理し、使用状況を確認し、クレジット残高を監視します。