AI API入門:プロトコル、API Key、最初のリクエスト
正しいAI API protocolを選び、keyを安全に保管して最小リクエストを送り、response、routing、usage recordを確認する手順です。
AI APIへ接続する前に、クライアントが想定するcontractを確認してください。選択肢はOpenAI-compatibleまたはAnthropic-compatibleです。次にproviderが文書化したBase URLを使い、API Keyをsource codeの外へ保存し、短いリクエストを1件送信して、レスポンスとusage recordの両方を確認します。設定画面で保存に成功しただけでは、意図したendpointへリクエストが届いた証明にはなりません。
Vendor固有のweb subscriptionではなくAPI gatewayが必要なら、BetterToken AI APIの概要から始めてください。BetterTokenには、OpenAI-compatibleとAnthropic-compatibleの独立したinterfaceがあります。使用するのは自分のBetterTokenアカウントとAPI Keyであり、OpenAIまたはAnthropic Consoleのkeyではありません。
API access、web subscription、shared accountの違い
これらは別のproductです。
通常のdevelopmentでは、自分で管理できるアカウントとkeyを使ってください。購入したloginやshared loginを前提にintegrationを構築してはいけません。
1. クライアントに合わせてprotocolを選ぶ
Modelを選ぶ前に、クライアントまたはSDKのドキュメントを読みます。ToolがOpenAI SDK、Chat Completions、Responses API、またはOPENAI_BASE_URLのようなfieldを想定している場合はOpenAI-compatibleを選びます。Messages requestを作成し、ANTHROPIC_BASE_URLまたはx-api-keyを必要とする場合はAnthropic-compatibleを選びます。
Model名でprotocolは決まりません。クライアントが、endpointの受け付けるrequest contractを作成できる必要があります。
BetterTokenのBase URLは次のとおりです。
OpenAI-compatibleの値には/v1がすでに含まれています。Anthropic-compatibleの値には含まれず、raw Messages requestでは完全なresource pathとして/v1/messagesを使います。
2. Base URLとrequest pathを区別する
SDKやtoolは通常Base URLを受け取り、resource pathを自動で追加します。Direct HTTP callでは完全なpathが必要です。
Base URLだけを求めるfieldへ完全なrequest pathを貼り付けないでください。クライアントがresourceを二重に追加し、404を返す可能性があります。
3. API Keyをcodeの外に置く
最初のlocal testではenvironment variableを使い、production credentialは利用するplatformのsecret managerへ移します。
実際のkeyをsource code、.env.example、prompt、issue、screenshot、support messageへ書かないでください。Marketing nameから推測せず、providerのドキュメントまたはmodel catalogから現在の正確なModel IDをコピーします。
4. 最小のOpenAI-compatibleリクエストを送る
Streamingやtoolsを有効にする前に、短いtext-only requestを使います。
他人と共有するlogではcurl -vを使わないでください。Verbose outputにsensitive headerが含まれる場合があります。
5. 最小のAnthropic-compatibleリクエストを送る
Messages requestでは、authentication headerとbodyの形式が異なります。
CURRENT_SUPPORTED_VERSIONはplaceholderです。テスト前にAPI referenceで現在サポートされるheaderを確認してください。Claude-compatible accessが目的なら、最小リクエストへ戻る前にClaude APIのsetupとaccess boundariesを確認します。
6. レスポンスとusage recordを確認する
最初のテストが完了したと言えるのは、次のsignalがすべて一致したときです。
- HTTP statusが成功を示す。
- レスポンスにexpected Model IDまたは文書化されたdisplay valueが含まれる。
- 選択したcontractがexpected contentと
usagefieldを返す。 - BetterToken Workspaceに同時刻のrecordがあり、model、status、該当するinput/output/cache tokens、chargeが表示される。
Workspaceはusageとbillingの記録です。完全なpromptやresponse bodyが保存されるとは想定しないでください。Dynamicな一覧をintegration noteへコピーするのではなく、availabilityとpricingは現在のmodel catalogで確認します。
7. Response layerごとにトラブルシューティングする
- 401または403: key、key group、whitespace、Base URL、選択したprotocolで必要なauthentication headerを確認します。
- 404: Base URLと完全なpathを比較し、
/v1、/chat/completions、/messagesが重複していないか調べます。 - model not found: 現在の正確なModel IDをコピーし、選択したkey groupとprotocolで利用できることを確認します。
- 429: response bodyを読み、指定されたretry delayを守ります。もう1件送る前に、現在のconcurrencyまたはrate limitsを確認してください。
- TimeoutまたはTLS error: local proxy、firewall、DNS、certificateの状態とAPI responseを切り分けます。TLS verificationを恒久的に無効化してはいけません。
- Workspace recordがない: 古いenvironment variableによって別providerへrouteされていないか確認します。
Configurationを変更したら、短いリクエストをもう1件送ってWorkspaceと照合します。成功後はstreaming、tools、longer context、agent loopを1層ずつ追加してください。そうすれば、新しいfailureごとのdiagnostic surfaceを小さく保てます。
次のステップ:OpenAI-compatible API
自分の key と OpenAI-compatible route を使う practical setup については、OpenAI API ページを確認してください。これは BetterToken の compatible API であり、official OpenAI key ではありません。