HTTP API

すべてのエンドポイントを、ひとつのベース URL で。

SDK は不要で、任意の HTTP クライアントで動きます。ベース URL は https://api.wontopos.com、認証は X-API-Key ヘッダー、入出力は JSON です。記憶の操作は POST、ストアの管理は /collection への POST / GET / DELETE です。ストアが先に存在しないと(ストア を参照)、ストア内の操作は 404 を返します。

ヘッダー

ヘッダーはたらき
X-API-Keyすべての呼び出しに必須です。コンソールで発行した、あなたのキーです。
X-WOS-Model任意です。どのエンジンが答えるかを選びます。省略するとアカウントの既定値が使われます。GET /api/v1/models でこのキーが選べるモデルの一覧が得られ、それより前のエンジンが対応できないエンドポイントは 501 を返し、そのモデルの名前を伝えます。
Idempotency-Key書き込みでは任意です。同じキーで同じ本文なら、再保存せず最初の応答を再生します - 下の注記を参照してください。

エンドポイント

エンドポイント用途ボディフィールド
POST /api/v1/memory/collectionストアを作成user_id
GET /api/v1/memory/collectionsストアを一覧(なし)
DELETE /api/v1/memory/collectionストアとその記憶を削除user_id
/api/v1/memory/store記憶を 1 件保存user_id · content · metadata? (event_date · speaker) · image?
/api/v1/memory/store-turn会話ターンを保存user_id · user_msg · assistant_msg
POST /api/v1/memory/speakers話者を登録(明示的、50 人まで)user_id · speaker
GET /api/v1/memory/speakers登録済み話者の一覧 + 記憶数user_id
DELETE /api/v1/memory/speakers話者の登録解除(記憶は残る)user_id · speaker
/api/v1/memory/by-speakerある人が言ったこと、新しい順(「me」= エージェント自身)user_id · speaker · limit? · before? · skip_ids?
POST /api/v1/memory/image画像メモリについてこちらが保持している画像(原本ではありません)user_id · memory_id
DELETE /api/v1/memory/image画像だけ削除し、キャプションは残すuser_id · memory_id · preview?
/api/v1/memory/imagesストアの画像、新しい順(+ 全体件数)user_id · limit? · before? · skip_ids?
/api/v1/memory/lineage1 件のメモリの編集履歴、古い順user_id · memory_id
GET /api/v1/won/usageこのキーの利用額と残高 — モデルが続行を判断するための数値。無料。days?
GET /api/v1/memory/usageこのキーの利用額と残高 — モデルが続行を判断するための数値。無料。days?
/api/v1/won/revisionsストアがどれだけ書き換えられたか。無料user_id · include? · limit? · before? · skip_ids?
/api/v1/memory/revisions同じ呼び出しを memory 側の名前で。無料user_id · include? · limit? · before? · skip_ids?
/api/v1/memory/bulk-storeテキストの塊を一括投入user_id · content · category? · timestamp?
/api/v1/memory/searchセマンティック検索user_id · query · max_results? · speaker? · cache_control? · filters? · verify? · max_images?
/api/v1/memory/recall短期 + 長期 + コンテキストuser_id · query · limit? · context_limit?
/api/v1/memory/getid で記憶 1 件user_id · memory_id
/api/v1/memory/listストアをページ送りで一覧user_id · limit? · cursor?
/api/v1/memory/history直近のターンuser_id
/api/v1/memory/stats記憶数user_id
/api/v1/memory/supersede変わった事実を置き換えuser_id · old_memory_id · new_content
/api/v1/memory/forget1 件(または全件)を削除user_id · memory_id? (省略 = 全件削除)
GET /api/v1/engramこのモデルが実行できるエングラム(なし)
POST /api/v1/engram/runエングラムを 1 つ実行name · user_id · query · form? · tz?
GET /api/v1/models利用可能なモデル(なし)
書き込みは Idempotency-Key ヘッダーを受け付けます。同じキーで同じ本文なら再保存せず最初の応答を再生し(10 分)、同じキーで異なる本文なら 422 を返します。キャッシュされるのは 2xx のみなので、失敗した呼び出しはすぐに再試行できます。
# create the store once (stores are explicit)
curl -X POST https://api.wontopos.com/api/v1/memory/collection \
  -H "X-API-Key: $WOS_API_KEY" -H "Content-Type: application/json" \
  -d '{"user_id":"alice"}'

# store a memory
curl -X POST https://api.wontopos.com/api/v1/memory/store \
  -H "X-API-Key: $WOS_API_KEY" -H "Content-Type: application/json" \
  -d '{"user_id":"alice","content":"she prefers tea over coffee"}'

# recall - one call, ready for your prompt
curl -X POST https://api.wontopos.com/api/v1/memory/recall \
  -H "X-API-Key: $WOS_API_KEY" -H "Content-Type: application/json" \
  -d '{"user_id":"alice","query":"what does alice drink?"}'
実際のレスポンス - store
{"id": "576700aa-f0e0-4c26-99a0-10e2d5b0d624", "status": "stored (1 chunks)"}