REST API 參考
這頁給要把 MeMesh 接進自己系統的人使用。你可以在這裡找到工作區、執行控制、審核與團隊相關的 API。
https://api.memesh.ai/v1不確定你現在該不該看這頁?
如果你只是第一次試用 MeMesh,建議先看總覽文件或先完成 Setup。等你要自動化、整合,或從自己的系統呼叫 runtime 時,再回來看這頁。
驗證 Header
x-api-key: mk_your_api_key_here所有請求都需要有效的 API key。你可以在 Setup > Agent Access Keys 建立。
Agent 工作區
工作區範圍內的 dispatch targets 與 target 級治理真相。
/agents/dispatch-targets列出這個工作區可用的本地與遠端 dispatch targets,包含可否分派、runtime policy、控制狀態與相容性摘要。
Query: search?, targetKind? (LOCAL_AGENT|REMOTE_A2A), state?, limit?, offset?
/agents/dispatch-targets/:id查看單一 dispatch target,包含遠端控制能力或本地 runtime 摘要。
/agents/dispatch-targets/:id/governance查看治理細節,例如 runtime policy、review 狀態、incident handoff、近期 runs、稽核與受影響工作。
/agents/dispatch-targets/:id/hold對 dispatch target 施加人工 hold。需要最新的 runtime CAS token。
Body: { reason, releaseAfter?, expectedRuntimeUpdatedAt }
/agents/dispatch-targets/:id/release解除人工 hold,並在同一次 CAS 保護的 mutation 裡重新計算有效 policy。
Body: { note?, expectedRuntimeUpdatedAt }
/agents/dispatch-targets/:id/review/acknowledge確認目前 policy epoch 上的治理 review 已被處理。
Body: { note?, expectedRuntimeUpdatedAt }
/agents/dispatch-targets/:id/incident/handoff記錄目前 incident epoch 的 provider incident handoff。
Body: { externalIncidentId, owner, note?, expectedRuntimeUpdatedAt }
記憶體
儲存與搜尋記憶內容,支援語意搜尋。
/memory/write寫入單筆記憶內容,可附帶 metadata。
Body: { content, space?, summary?, tags?, sensitivity?, source? }
/memory/search用自然語言查詢記憶內容的 GET 版本。
Query: query (required), spaces?, limit?
/memory/search用結構化 POST body 搜尋記憶,適合比較複雜的查詢。
Body: { query, spaces?, limit? }
/memory/count取得目前登入使用者的記憶總數。
/memory/batch一次寫入最多 100 筆記憶,可選擇交易式或部分成功模式。
Body: { memories[], transactional? }
/memory/batch/search平行執行最多 50 組記憶搜尋,並可選擇去重。
Body: { queries[], deduplicate? }
/memory/spaces列出目前使用者所有記憶 spaces。
/memory/query以語意、標籤與時間條件做混合記憶查詢。
Body: { query, limit?, offset?, similarityThreshold? }
/memory/context-window在 token 預算內,挑選適合放進 LLM context window 的記憶。
Body: { query, tokenBudget }
/memory/stream/export透過 Server-Sent Events 串流匯出記憶資料,適合大型匯出。
Query: spaces?
Orchestrator Runtime
持久化 runs、控制真相、reconcile、retry-cancel 與 runtime health。
/orchestrator/runs列出近期 runs,包含 target 類型、控制真相、approval 連結與 operator guidance。
/orchestrator/runs/:id查看 run 詳情,包含 events、approvals、遠端控制狀態與建議操作。
/orchestrator/runs/:id/control回傳單一 run 的控制能力真相、阻擋原因與 operator guidance。
/orchestrator/runs/:id/reconcile強制重新抓取遠端狀態,對齊延後到達的 terminal truth。
/orchestrator/runs/:id/retry-cancel在遠端 cancel 因逾時或暫時性失敗時重新嘗試。
/orchestrator/runs/:id/resolve-remote當遠端 recovery 已耗盡後,執行受保護的 operator resolution。
/orchestrator/runtime-health查看 local compatibility、remote escalation、target governance 與 attention backlog 的健康摘要。
本地 Agent 執行
以 claim token 為基礎的本地執行佇列,包含 lease、heartbeat、recovery 與 cancel acknowledgement。
/agents/executions列出目前 agent 可領取的待處理本地 executions。
/agents/executions/:id/claim用呼叫方提供的 claim token 領取一筆本地 execution。
Body: { claimToken, workerId? }
/agents/executions/:id/heartbeat延長目前 lease,並可選擇回報進度。
Body: { claimToken, progressMessage? }
/agents/executions/:id/complete完成已領取的 execution。
Body: { claimToken, result?, idempotencyKey? }
/agents/executions/:id/ack-cancel在 runtime 要求本地中斷後,回報 cancel 已被接收。
Body: { claimToken, note? }
團隊
團隊成員管理、邀請與角色權限控制。
/team/members列出目前 tenant 的所有團隊成員。
/team/members/invite用 email 邀請新成員。需要 OWNER 或 ADMIN 權限。
Body: { email, role? }
/team/members/:userId/role修改團隊成員角色。
Body: { role }
/team/members/:userId將成員移出團隊。
稽核
提供安全檢查與合規流程用的 audit logs 查詢。
/audit/logs依 action、resource、日期區間與 limit 條件查詢 audit logs。
Query: action?, resource?, startDate?, endDate?, limit? (default: 100)
計費與用量
查看訂閱方案、使用量統計與配額狀態。
/billing/plan取得目前使用者的訂閱方案。
/usage/summary查看記憶體、API keys、agents、席次與 rate limits 的使用量統計。
API Keys
建立、列出與撤銷程式化存取用的 API keys。
/keys建立新的 API key。原始 key 值只會在回應中顯示一次。
Body: { name }
/keys列出目前使用者所有 API keys。值會被遮罩。
/keys/:id永久撤銷一組 API key。
裝置授權
給 CLI 與 MCP clients 使用的 OAuth 2.0 Device Authorization flow。
/auth/device啟動 device authorization flow,回傳 device_code、user_code 與 verification_uri。
Body: { client_id, scope? }
/auth/device/token在使用者完成授權後輪詢 token。
Body: { grant_type: "urn:ietf:params:oauth:grant-type:device_code", device_code }
範例請求
curl "https://api.memesh.ai/v1/agents/dispatch-targets?targetKind=REMOTE_A2A&limit=10" \
-H "x-api-key: mk_your_api_key"curl -X POST https://api.memesh.ai/v1/orchestrator/runs/run_123/reconcile \
-H "x-api-key: mk_your_api_key" \
-H "Content-Type: application/json"curl -X POST https://api.memesh.ai/v1/agents/dispatch-targets/{targetId}/hold \
-H "x-api-key: mk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"reason": "provider maintenance",
"releaseAfter": "2026-03-22T09:00:00.000Z",
"expectedRuntimeUpdatedAt": "2026-03-20T09:00:00.000Z"
}'HTTP 狀態碼
| 代碼 | 說明 |
|---|---|
| 200 | 成功 |
| 201 | 已建立(resource created) |
| 400 | 請求格式錯誤(驗證失敗、無效 Agent Card) |
| 401 | 未授權(API key 無效或缺少) |
| 403 | 禁止存取(self-review blocked、權限不足) |
| 404 | 找不到資源(agent 或 resource 不存在) |
| 409 | 衝突(stale policy epoch、stale runtime snapshot、duplicate claim) |
| 429 | 請求過多(超過 rate limit) |