POST /v1/sessions/{session_id}/resources
Session にリソースを追加します。ファイルと GitHub リポジトリの両方をサポートしています。追加後、Agent はメッセージ処理時にこれらのリソースにアクセスできるようになります。
パスパラメータ
| パラメータ | 型 | 説明 |
|---|---|---|
session_id | string | Session ID(sess_ プレフィックス) |
ヘッダー
| 名称 | 必須 | 値 |
|---|---|---|
| Authorization | はい | Bearer $QODER_PAT |
| Content-Type | はい | application/json |
リクエストボディ
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
resources | array | はい | リソースオブジェクトの配列。少なくとも 1 つのファイルまたは GitHub リポジトリリソースを含む必要があります。 |
resources[].type | string | いいえ | "file" または "github_repository"。省略時のデフォルトは "file" です。 |
type が "file" の場合:
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
file_id | string | はい | ファイル ID(Files API でアップロード後に取得)。ファイルは ready ステータスである必要があります。 |
path | string | いいえ | マウントパス。デフォルトは /data/{file_id}。相対パスの場合、サーバーが /data/ プレフィックスを付与します。正規化されたパスは /data/ 配下かつ最大 512 文字である必要があります。 |
mount_path | string | いいえ | path のエイリアス。path と mount_path の両方を指定する場合、値が一致している必要があります。レスポンスでは正規化された値が path として格納されます。 |
type が "github_repository" の場合:
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
url | string | はい | リポジトリ URL |
mount_path | string | いいえ | コンテナ内のクローン先パス |
authorization_token | string | いいえ | プライベートリポジトリアクセス用の認可トークン。指定した場合、Session リソースオブジェクトに格納されます。 |
リクエスト例
ファイルの追加
GitHub リポジトリの追加
レスポンス例
HTTP 200 OK 更新後のresources リストを返します(完全な Session オブジェクトではありません)。
レスポンスフィールド
| フィールド | 型 | 説明 |
|---|---|---|
resources | array | 追加後の正規化された完全なリソースリスト |
resources[].type | string | "file" または "github_repository" |
resources[].file_id | string | ファイルリソースに存在 |
resources[].path | string | ファイルリソースに存在。/data/ 配下の正規化されたマウントパス |
resources[].url | string | GitHub リポジトリリソースに存在 |
resources[].mount_path | string | GitHub リポジトリの任意のマウントパス |
resources[].authorization_token | string | GitHub リポジトリの任意のトークン(指定された場合のみ存在) |
エラーレスポンス
| HTTP | type | 説明 |
|---|---|---|
| 400 | invalid_request_error | リクエスト形式エラー、resources が空、type が無効、必須フィールドの欠落、無効なファイルパス、またはリクエスト内のリソース重複 |
| 401 | authentication_error | PAT が無効または期限切れ |
| 404 | not_found_error | Session またはファイルが存在しない |
| 409 | conflict_error | Session がアーカイブまたは終了済み、ファイルが ready でない、またはファイル ID/パス/リポジトリ URL がこの Session に既にアタッチ済み |
エラー例
type が不正:
file_id が欠落:
関連項目
Session の起動
Agent を環境で実行し、ステートフルな対話を行う。