GatifyAI
ドキュメント

APIリファレンス

GatifyAIはOpenAI SDKと互換性のあるチャット補完(chat completions)エンドポイントを提供しています — 既存のOpenAIクライアントをGatifyAIに向けるだけで、特別なクライアントライブラリなしにそのまま動作します。

ベースURL

すべてのリクエストは次の宛先に送信されます。

https://gatifyai.com/api/v1

認証

APIキーページでキーを作成し、Authorizationヘッダーにベアラートークンとして送信してください。保存されるのはキーのハッシュのみです — 作成時に必ずコピーしてください。GatifyAIは後から再表示できません。

クイックスタート

curl、Python、TypeScriptでの最小限のリクエスト例です。

curl https://gatifyai.com/api/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_NAME",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

キーを特定のモデルに制限する

デフォルトでは、新しいキーはGatifyAIのどの無料モデルでも使用でき、モデルが利用できない場合はWebチャットと同じ自動フェイルオーバーが適用されます。代わりに、キーを特定のモデルまたは短いリストに制限することもできます — その場合、リクエストがどのモデルを指定していても、キーは指定した順序でそのリストのモデルのみを使用します。リストにないモデルをリクエストすると、キーが実際に使用できるモデルを示す400エラーが返されます。

ペルソナとしてチャットする

model: "persona/<slug>"を指定すると、コミュニティギャラリーで公開されているペルソナとしてチャットできます — そのペルソナの性格と優先モデルが自動的に使用され、キーに許可モデルを設定している場合はその制限も引き続き適用されます。ペルソナのslugとすぐに使えるサンプルは、そのペルソナ自身のページのAPIタブに掲載されています。

{
  "model": "persona/senior-engineer",
  "messages": [{"role": "user", "content": "Review my code."}]
}

ストリーミングと非ストリーミング

stream: trueを設定すると、OpenAIのストリーミング形式(Server-Sent Events、[DONE]で終了)とまったく同じ方式で、トークンが生成されるたびに受信できます。省略するかfalseに設定すると、完全な回答を待って1つのJSONレスポンスとして受け取ります — これがデフォルトの動作です。

エラー

エラーはOpenAIのエラー形式に従います:{"error": {"message": "...", "type": "..."}}。401はキーが未指定、無効、または失効していることを意味します。400はリクエスト自体が無効であることを意味します — 多くの場合、認識できないモデル、未公開または不明なペルソナのslug、あるいはキーの許可リストに含まれないモデルが原因です。502はどの候補モデルも応答しなかったことを意味します。

{
  "error": {
    "message": "This API key may only use: llama-3.1-8b:free",
    "type": "invalid_request_error"
  }
}

レート制限

APIリクエストは、Webアプリと同じアカウント単位のチャットレート制限にカウントされます — 現時点ではAPIトラフィック専用の別枠クォータはありません。