{"openapi":"3.1.0","info":{"title":"Mem0 (BYOK) API","version":"0.1.0","description":"Mem0 (BYOK) lets an AI assistant read your own Mem0 data through the Mem0 API with a key you supply (API key). Read-only: 9 tools (check_key, list_memories, get_memory, get_memory_history, list_entities, list_events, get_stats, list_organizations, list_projects). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it is only ever sent to...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-mem0.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-mem0/docs"},"termsOfService":"https://connectorbay.com/byok-mem0/terms"},"servers":[{"url":"https://byok-mem0.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-mem0/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/check_key":{"post":{"operationId":"check_key","summary":"Check the API key and show the organization, project and account email it resolves to. Use for \"Is my Mem0 API key valid","description":"Check the API key and show the organization, project and account email it resolves to. Use for \"Is my Mem0 API key valid and which project is it for\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"check_keyArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_memories":{"post":{"operationId":"list_memories","summary":"List stored memories of one user, agent, app or run, with the memory text, categories, metadata and timestamps; page wit","description":"List stored memories of one user, agent, app or run, with the memory text, categories, metadata and timestamps; page with page and page_size. At least one of user_id, agent_id, app_id or run_id is needed. Use for \"What does Mem0 remember about user alice\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"user_id":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only memories of this user ID (for example 'alice').","title":"User Id"},"agent_id":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only memories of this agent ID.","title":"Agent Id"},"app_id":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only memories of this app ID.","title":"App Id"},"run_id":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only memories of this run ID.","title":"Run Id"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"page_size":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many memories per page (1 to 100).","title":"Page Size"}},"title":"list_memoriesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_memory":{"post":{"operationId":"get_memory","summary":"Get one memory by ID with its text, owner, categories, metadata, expiry and timestamps. Use for \"Show one Mem0 memory by","description":"Get one memory by ID with its text, owner, categories, metadata, expiry and timestamps. Use for \"Show one Mem0 memory by its ID\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"memory_id":{"description":"Memory ID as returned by list_memories (id), a UUID.","maxLength":80,"title":"Memory Id","type":"string"}},"required":["memory_id"],"title":"get_memoryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_memory_history":{"post":{"operationId":"get_memory_history","summary":"Show the change history of one memory: each add, update or delete with old and new text and time. Use for \"How did this ","description":"Show the change history of one memory: each add, update or delete with old and new text and time. Use for \"How did this Mem0 memory change over time\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"memory_id":{"description":"Memory ID as returned by list_memories (id), a UUID.","maxLength":80,"title":"Memory Id","type":"string"}},"required":["memory_id"],"title":"get_memory_historyArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_entities":{"post":{"operationId":"list_entities","summary":"List the users, agents, apps and runs that have memories in the project, with counts of each type. Use for \"Which users ","description":"List the users, agents, apps and runs that have memories in the project, with counts of each type. Use for \"Which users and agents does my Mem0 project know about\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org_id":{"anyOf":[{"maxLength":80,"type":"string"},{"type":"null"}],"default":null,"description":"Organization ID (only needed when the key covers several).","title":"Org Id"},"project_id":{"anyOf":[{"maxLength":80,"type":"string"},{"type":"null"}],"default":null,"description":"Project ID (only needed when the key covers several).","title":"Project Id"}},"title":"list_entitiesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_events":{"post":{"operationId":"list_events","summary":"List recent memory operation events (adds, searches and so on) with type, status, latency and timing; useful to find fai","description":"List recent memory operation events (adds, searches and so on) with type, status, latency and timing; useful to find failed operations. Use for \"Did any Mem0 memory operations fail recently\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_stats":{"post":{"operationId":"get_stats","summary":"Show usage statistics: total memories, add and retrieval events and users, agents and runs with memories. Use for \"How m","description":"Show usage statistics: total memories, add and retrieval events and users, agents and runs with memories. Use for \"How many memories do I have stored in Mem0 and how many retrievals did I use\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_statsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_organizations":{"post":{"operationId":"list_organizations","summary":"List the organizations the key's user belongs to with plan, role and default flag. Use for \"Which Mem0 organizations am ","description":"List the organizations the key's user belongs to with plan, role and default flag. Use for \"Which Mem0 organizations am I in\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_organizationsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_projects":{"post":{"operationId":"list_projects","summary":"List the projects of one organization with description, memory settings, graph flag and timestamps. Use for \"Which proje","description":"List the projects of one organization with description, memory settings, graph flag and timestamps. Use for \"Which projects exist in my Mem0 organization\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org_id":{"description":"Organization ID as returned by list_organizations (org_id).","maxLength":80,"title":"Org Id","type":"string"}},"required":["org_id"],"title":"list_projectsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}