TOKEN BOAT / 2026

開発者ドキュメント / API リファレンス

JA / GLOBAL

API キーから本番リクエストまで。

すぐに使える導入ガイドです。例は共通の Base URL を使い、エンドポイント一覧はリポジトリの relay OpenAPI 契約に準拠しています。

01 / START

クイックスタート

  1. コンソールで API キーを作成します。
  2. 公開モデルカタログからモデル ID をコピーします。
  3. キーをサーバー側の環境変数に保存し、最初のリクエストを送信します。

02 / AUTH

認証と Base URL

保護されたエンドポイントは Bearer Token を使います。API キーをブラウザーコード、公開リポジトリ、ログ、スクリーンショットに保存しないでください。

Base URLhttps://tokenboat.com/v1
リクエストヘッダーAuthorization: Bearer $TOKEN_BOAT_API_KEY

03 / CALL

3つの呼び出し方法

Curl
export TOKEN_BOAT_API_KEY="your_api_key"
export MODEL_ID="choose_from_the_model_catalog"

curl https://tokenboat.com/v1/chat/completions \
  -H "Authorization: Bearer $TOKEN_BOAT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "'"$MODEL_ID"'",
    "messages": [{"role": "user", "content": "Hello from Token Boat"}]
  }'
Python
from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ["TOKEN_BOAT_API_KEY"],
    base_url="https://tokenboat.com/v1",
)

response = client.chat.completions.create(
    model=os.environ["MODEL_ID"],
    messages=[{"role": "user", "content": "Hello from Token Boat"}],
)
print(response.choices[0].message.content)
JavaScript
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.TOKEN_BOAT_API_KEY,
  baseURL: "https://tokenboat.com/v1",
});

const response = await client.chat.completions.create({
  model: process.env.MODEL_ID,
  messages: [{ role: "user", content: "Hello from Token Boat" }],
});
console.log(response.choices[0].message.content);

04 / STREAM

ストリーミング

ストリーミング対応モデルでは stream: true を設定し、Server-Sent Events を順次処理します。切断と不完全な最終チャンクを処理できるようにしてください。

const stream = await client.chat.completions.create({
  model: process.env.MODEL_ID,
  messages: [{ role: "user", content: "Stream a short answer" }],
  stream: true,
});

for await (const chunk of stream) {
  process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}

05 / RECOVER

エラーと再試行

エラー応答には HTTP ステータスとメッセージが含まれます。リクエスト時刻、エンドポイント、モデル ID、ステータスを記録し、完全なキーや機密プロンプトは記録しないでください。

Status意味対応
400リクエスト項目またはモデルパラメーターが無効修正してから再試行
401API キーがない、無効、または失効Authorization ヘッダーとキー状態を確認
403アカウントまたはモデルへのアクセス不可権限とモデルの利用可否を確認
429リクエストまたはトークン制限Retry-After に従いジッター付き指数バックオフを使用
5xxゲートウェイまたは上流が一時的に利用不可安全に再送できるリクエストだけを限定的に再試行

06 / LIMITS

レート制限

RPM、TPM、同時実行数はアカウント、モデル、現在のポリシーにより異なるため、変動する数値は固定表示しません。429 では応答ヘッダーとアカウントコンソールを確認してください。

  • 同時実行数を制限し、クライアントタイムアウトを設定します。
  • 429 と一時的な 5xx にはジッター付き指数バックオフを使います。
  • 生成タスクを無条件に再送せず、先にタスク状態を確認します。
  • 本番負荷で上限引き上げが必要な場合はサポートセンターへ連絡します。

07 / REFERENCE

主要エンドポイント

主要な公開エンドポイントです。各モデルが実際に対応する形式はモデル詳細で確認してください。

メソッドパス用途
GET/v1/modelsAPI キーで利用できるモデルを一覧表示
POST/v1/responsesツールと複数ターンのワークフロー向け Responses API
POST/v1/chat/completionsOpenAI 互換チャット補完
POST/v1/messagesAnthropic Messages 互換エンドポイント
POST/v1/embeddingsテキスト埋め込みを生成
POST/v1/images/generations画像生成リクエストを送信
POST/v1/audio/speechテキスト読み上げ
POST/v1/audio/transcriptions音声文字起こし
POST/v1/videos動画生成タスクを送信

API 契約の参照元:docs/openapi/relay.json