Skip to main content
Memory Stores

Memory Store の作成

新しい Forward Memory Store を作成します。

Memory Store コンテナを作成します。Store のみを作成するか、省略可能な mount フィールドを指定して、作成後に (identity, template) に直接マウントできます。

パス

POST /api/v1/forward/memory_stores

ヘッダー

ヘッダー必須説明
AuthorizationはいBearer <PAT or admin SAT>
Idempotency-Keyはい作成リクエストの冪等性キー。同じキーは同じリクエストボディでのみ再利用できます。省略すると 400 が返されます。
Content-Typeはいapplication/json

リクエストボディ

フィールド型必須説明
namestringはい空でない表示名。改行 \n、復帰 \r、タブ \t を除く非表示制御文字(U+0000~U+001F、U+007F)は使用できません。
descriptionstringいいえ自由記述の説明。非表示制御文字は使用できません。
metadataobjectいいえ値が文字列のキー・バリューメタデータ。最大 15 キー、キーは 1~64 文字、値は 512 文字以下です。created_by は Forward の予約キーで、サーバーが "forward" を設定します。呼び出し元が指定すると 400 invalid_request_error が返されます。Store メタデータの制約を参照してください。
mountobjectいいえ作成後に設定するマウント関係。指定する場合は identity_id と template_id の両方が必要です。
mount.identity_idstring条件付きIdentity ID(idn_...)。mount を指定する場合は必須。
mount.template_idstring条件付きTemplate ID(tmpl_...)。mount を指定する場合は必須。
直接マウントにもMemory Store のマウントと同じルールが適用されます。Store はユーザーが作成した active 状態の Store である必要があります。権限は常に read_only で、同じ (identity, template) に明示的にマウントできる Store は最大 10 個です。作成した Store は system_managed=false のままで、システムの Default Memory Store にはなりません。

リクエスト例

curl -X POST "https://api.qoder.com/api/v1/forward/memory_stores" \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: create-alpha-store-v1" \
  -d '{
    "name": "project-alpha-memory",
    "description": "Agent knowledge base for project Alpha",
    "metadata": {"team": "backend"},
    "mount": {
      "identity_id": "idn_63ee28747a35cff93771c491",
      "template_id": "tmpl_eb3377fb74ad413e17b3d755"
    }
  }'
Store のみ作成する場合は mount を省略します。

レスポンス例

HTTP 200 OK
{
  "id": "memstore_00mc7mukn7lkxr454tjd",
  "type": "memory_store",
  "name": "project-alpha-memory",
  "description": "Agent knowledge base for project Alpha",
  "status": "active",
  "entry_count": 0,
  "total_size": 0,
  "metadata": {
    "team": "backend",
    "created_by": "forward"
  },
  "system_managed": false,
  "identity_id": null,
  "created_at": "2026-08-14T10:00:00Z",
  "updated_at": "2026-08-14T10:00:00Z",
  "archived_at": null,
  "binding_info": {
    "identity_template_count": 1
  }
}
mount を指定すると、レスポンスを返す前にマウントが完了するため、binding_info.identity_template_count には新しいマウントが含まれます。同じ Idempotency-Key とリクエストボディで再試行すると、同じ Store のマウント処理を継続し、Store やマウント関係を重複して作成しません。

レスポンス

Memory Store オブジェクトを返します。

エラー

HTTPType発生条件
400invalid_request_errorリクエストボディが無効です。name がないか制御文字を含む、metadata が 15 キーを超えるか created_by を含む、Idempotency-Key がない、mount のいずれかの ID がない、または明示的なマウント数が上限の 10 に達しています。
401authentication_error認証トークンがないか無効です。
403permission_error呼び出し元にリソースの作成権限がありません。
404not_found_errormount で指定した Identity または Template が存在しないか、呼び出し元から参照できません。
409conflict_error同じ Idempotency-Key が異なるリクエストボディで使用されたか、作成処理の復旧に手動対応が必要です。
500/502/503api_errorForward または依存サービスでエラーが発生しました。
Memory Store の作成 - Qoder