このページは、AIエージェントや自動実行ツールがRECO Rail経由で外部APIを呼び出すための入力仕様を定めるものです。
RECO Railでは、AIエージェント側に外部APIキーを保存しません。
AIエージェント側には、RECO Railの実行先URLとRECO Rail実行キーを設定します。外部APIキーは、RECO Railの接続管理ページで保存・管理します。
AIエージェントは、外部APIへ直接リクエストを送るのではなく、RECO Railの実行先URLへリクエストを送ります。
AIエージェント
↓
RECO Rail
↓
接続管理ページで設定された外部API
RECO Railは、次の処理を行います。
1. RECO Rail実行キーを確認する
2. 対象の接続が有効か確認する
3. 接続ガード設定を確認する
4. RECO Rail内部で保存済みの外部APIキーを取り出す
5. 外部APIへ中継する
AIエージェントから外部APIキーを送る必要はありません。
実行URLは、接続ごとに発行される接続IDを含みます。
https://hook.recorail.com/v1/execute/<execution_binding_id>
<execution_binding_id> には、接続管理ページで表示される対象接続の接続IDを入れます。
例:
https://hook.recorail.com/v1/execute/eb_xxxxxxxxxxxxxxxx
RECO Rail実行キーは、Authorization ヘッダーに指定します。
Authorization: Bearer <RECO Rail実行キー>
外部APIキーをここに入れないでください。
ここに入れるのは、RECO Railが発行した実行キーです。
現時点の実行中継は、OpenAI互換のチャット補完形式を基本とします。
POST /v1/execute/<execution_binding_id> HTTP/1.1
Host: hook.recorail.com
Content-Type: application/json
Authorization: Bearer <RECO Rail実行キー>
リクエスト本文の例:
{
"messages": [
{
"role": "user",
"content": "短く要約してください。"
}
],
"temperature": 0.2
}
利用モデルは、接続管理ページで保存されたモデル設定が使用されます。
AIエージェント側で model を指定しても、RECO Rail側の接続設定が優先される場合があります。
AIエージェント側に保存するのは、次の2つです。
1. RECO Rail実行先URL
2. RECO Rail実行キー
外部APIキーは、AIエージェント側に保存しません。
外部APIキーは、RECO Railの接続管理ページで保存します。
以下の項目は、RECO Rail内部用です。
AIエージェント側から本文に含める必要はありません。
execution_token
execution_binding_id
binding_id
auth_secret_ref
reco_ で始まる項目
RECO_ で始まる項目
これらは、RECO Rail側の内部制御・監査・接続管理に使うための項目です。
外部APIへ渡す通常のリクエスト本文には含めないでください。
RECO Railが接続ガードを通過させた場合、外部APIからの応答を返します。
RECO Rail側で拒否した場合は、ok: false とエラー内容を返すことがあります。
代表的なエラー例:
{
"ok": false,
"error": "execution_token_required"
}
{
"ok": false,
"error": "binding_not_found"
}
{
"ok": false,
"error": "delivery_auth_missing"
}
RECO Rail実行キーは、外部APIキーではありません。
RECO Rail経由で対象接続を実行するためのキーです。
RECO Rail実行キーが漏えいした疑いがある場合は、接続管理ページで実行キーを削除または再発行してください。
外部APIキーをAIエージェント側、作業ログ、プロンプト、公開リポジトリ、実行設定ファイルへ直接保存しないでください。
現時点では、OpenAI互換方式の中継を基本対象とします。
Anthropic互換方式、Google/Gemini系、汎用HTTP方式については、接続確認方式と中継方式を整理した上で順次対応予定です。