mirror of
https://github.com/supermemoryai/supermemory.git
synced 2026-05-18 14:48:12 +00:00
379 lines
11 KiB
JSON
379 lines
11 KiB
JSON
{
|
|
"openapi": "3.1.0",
|
|
"info": {
|
|
"title": "Supermemory API",
|
|
"description": "best memory api on 🌍",
|
|
"version": "2.0.0"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "https://v2.api.supermemory.ai",
|
|
"description": "Production Server"
|
|
}
|
|
],
|
|
"paths": {
|
|
"/add": {
|
|
"post": {
|
|
"responses": {
|
|
"200": {
|
|
"description": "Memory added successfully",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"status": { "type": "string" }
|
|
},
|
|
"required": ["id", "status"]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": { "type": "string" },
|
|
"details": { "type": "string" }
|
|
},
|
|
"required": ["error"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"operationId": "postAdd",
|
|
"tags": ["Memory Management"],
|
|
"parameters": [],
|
|
"description": "Add a new memory with content and metadata",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"content": { "type": "string" },
|
|
"metadata": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"anyOf": [
|
|
{ "type": "string" },
|
|
{ "type": "number" },
|
|
{ "type": "boolean" }
|
|
]
|
|
}
|
|
},
|
|
"spaceIds": {
|
|
"type": "array",
|
|
"items": { "type": "string" }
|
|
},
|
|
"id": { "type": "string" }
|
|
},
|
|
"required": ["content"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/update/{id}": {
|
|
"put": {
|
|
"responses": {
|
|
"200": {
|
|
"description": "Memory updated successfully",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"status": { "type": "string" }
|
|
},
|
|
"required": ["id", "status"]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Memory not found",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": { "type": "string" },
|
|
"details": { "type": "string" }
|
|
},
|
|
"required": ["error"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"operationId": "putUpdateById",
|
|
"tags": ["Memory Management"],
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"schema": { "type": "string" },
|
|
"required": true
|
|
}
|
|
],
|
|
"description": "Update an existing memory",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"content": { "type": "string" },
|
|
"metadata": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"anyOf": [
|
|
{ "type": "string" },
|
|
{ "type": "number" },
|
|
{ "type": "boolean" }
|
|
]
|
|
}
|
|
},
|
|
"spaceIds": { "type": "array", "items": { "type": "string" } }
|
|
},
|
|
"required": ["content"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/delete/{id}": {
|
|
"delete": {
|
|
"responses": {
|
|
"200": {
|
|
"description": "Memory deleted successfully",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": { "success": { "type": "boolean" } },
|
|
"required": ["success"]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Memory not found",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": { "type": "string" },
|
|
"details": { "type": "string" }
|
|
},
|
|
"required": ["error"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"operationId": "deleteDeleteById",
|
|
"tags": ["Memory Management"],
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"schema": { "type": "string" },
|
|
"required": true
|
|
}
|
|
],
|
|
"description": "Delete a memory"
|
|
}
|
|
},
|
|
"/search": {
|
|
"post": {
|
|
"responses": {
|
|
"200": {
|
|
"description": "Search results",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"results": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"documentId": { "type": "string" },
|
|
"chunks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"content": { "type": "string" },
|
|
"isRelevant": { "type": "boolean" }
|
|
},
|
|
"required": ["content", "isRelevant"]
|
|
}
|
|
},
|
|
"score": { "type": "number" }
|
|
},
|
|
"required": ["documentId", "chunks", "score"]
|
|
}
|
|
}
|
|
},
|
|
"required": ["results"]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid request parameters",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": { "type": "string" },
|
|
"details": { "type": "string" }
|
|
},
|
|
"required": ["error"]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Server error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": { "type": "string" },
|
|
"details": { "type": "string" }
|
|
},
|
|
"required": ["error"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"operationId": "postSearch",
|
|
"tags": ["Search"],
|
|
"parameters": [],
|
|
"description": "Search through documents with metadata filtering",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"q": { "type": "string", "minLength": 1 },
|
|
"limit": {
|
|
"type": "integer",
|
|
"exclusiveMinimum": 0,
|
|
"default": 10
|
|
},
|
|
"filters": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"OR": { "type": "array", "items": {} },
|
|
"AND": { "type": "array", "items": {} }
|
|
}
|
|
},
|
|
{ "type": "object", "additionalProperties": {} }
|
|
]
|
|
},
|
|
"chunkSize": {
|
|
"type": "integer",
|
|
"exclusiveMinimum": 0,
|
|
"default": 3
|
|
},
|
|
"minScore": {
|
|
"type": "number",
|
|
"minimum": 0,
|
|
"maximum": 1,
|
|
"default": 0.5
|
|
}
|
|
},
|
|
"required": ["q"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/fastsearch": {
|
|
"get": {
|
|
"responses": {
|
|
"200": {
|
|
"description": "Fast search results",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"results": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"content": { "type": "string" },
|
|
"similarity": { "type": "number" }
|
|
},
|
|
"required": ["id", "content", "similarity"]
|
|
}
|
|
}
|
|
},
|
|
"required": ["results"]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Server error",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": { "type": "string" },
|
|
"details": { "type": "string" }
|
|
},
|
|
"required": ["error"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"operationId": "getFastsearch",
|
|
"tags": ["Search"],
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "q",
|
|
"schema": { "type": "string", "minLength": 1 },
|
|
"required": true
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"schema": { "type": "string", "pattern": "^\\d+$" },
|
|
"required": false
|
|
}
|
|
],
|
|
"description": "Fast, lossy search using quantized embeddings"
|
|
}
|
|
}
|
|
},
|
|
"components": { "schemas": {} }
|
|
}
|