{ "openapi": "3.0.0", "info": { "title": "Supermemory API", "version": "1.0", "description": "API for Supermemory personal knowledge management system" }, "servers": [ { "url": "https://api.supermemory.ai/v1", "description": "Supermemory Production API" } ], "components": { "securitySchemes": { "bearerAuth": { "type": "http", "scheme": "bearer" } }, "schemas": { "User": { "type": "object", "properties": { "id": { "type": "string" }, "uuid": { "type": "string" }, "email": { "type": "string" }, "firstName": { "type": "string" }, "lastName": { "type": "string" }, "profilePictureUrl": { "type": "string" }, "hasOnboarded": { "type": "boolean" } } }, "Space": { "type": "object", "properties": { "uuid": { "type": "string" }, "name": { "type": "string" }, "ownerId": { "type": "string" }, "isPublic": { "type": "boolean" }, "createdAt": { "type": "string", "format": "date-time" }, "permissions": { "type": "object", "properties": { "canRead": { "type": "boolean" }, "canEdit": { "type": "boolean" }, "isOwner": { "type": "boolean" } } } } }, "Document": { "type": "object", "properties": { "uuid": { "type": "string" }, "content": { "type": "string" }, "type": { "type": "string" }, "url": { "type": "string" }, "title": { "type": "string" }, "createdAt": { "type": "string", "format": "date-time" } } } } }, "paths": { "/user": { "get": { "summary": "Get current user", "security": [ { "bearerAuth": [] } ], "responses": { "200": { "description": "User details", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/User" } } } }, "401": { "description": "Unauthorized" } } } }, "/spaces": { "get": { "summary": "List spaces", "security": [ { "bearerAuth": [] } ], "responses": { "200": { "description": "List of spaces", "content": { "application/json": { "schema": { "type": "object", "properties": { "spaces": { "type": "array", "items": { "$ref": "#/components/schemas/Space" } } } } } } } } } }, "/spaces/create": { "post": { "summary": "Create space", "security": [ { "bearerAuth": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "spaceName": { "type": "string", "minLength": 1, "maxLength": 100 }, "isPublic": { "type": "boolean" } } } } } }, "responses": { "200": { "description": "Space created" }, "401": { "description": "Unauthorized" } } } }, "/spaces/addContent": { "post": { "summary": "Add content to space", "security": [ { "bearerAuth": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "spaceId": { "type": "string" }, "documentId": { "type": "string" } }, "required": ["spaceId", "documentId"] } } } }, "responses": { "200": { "description": "Content added to space successfully" }, "401": { "description": "Unauthorized" } } } }, "/memories": { "get": { "summary": "List memories", "security": [ { "bearerAuth": [] } ], "parameters": [ { "name": "start", "in": "query", "schema": { "type": "integer", "default": 0 } }, { "name": "count", "in": "query", "schema": { "type": "integer", "default": 10 } }, { "name": "spaceId", "in": "query", "schema": { "type": "string" } } ], "responses": { "200": { "description": "List of memories", "content": { "application/json": { "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/Document" } }, "total": { "type": "integer" } } } } } } } } }, "/chat": { "post": { "summary": "Chat with memory assistant", "security": [ { "bearerAuth": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "messages": { "type": "array", "items": { "type": "object" } }, "threadId": { "type": "string" } } } } } }, "responses": { "200": { "description": "Chat response stream", "content": { "text/event-stream": { "schema": { "type": "string" } } } } } } }, "/v1/add": { "post": { "summary": "Add new content", "security": [ { "bearerAuth": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "content": { "type": "string", "minLength": 1 }, "spaces": { "type": "array", "maxItems": 5, "items": { "type": "string" } }, "prefetched": { "type": "object", "properties": { "contentToVectorize": { "type": "string" }, "contentToSave": { "type": "string" }, "title": { "type": "string" }, "type": { "type": "string" }, "description": { "type": "string" }, "ogImage": { "type": "string" } } } } } } } }, "responses": { "200": { "description": "Content added successfully" }, "400": { "description": "Invalid request" }, "401": { "description": "Unauthorized" } } } }, "/search": { "post": { "summary": "Search content", "security": [ { "bearerAuth": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "query": { "type": "string", "minLength": 1 }, "limit": { "type": "number", "minimum": 1, "maximum": 50, "default": 10 }, "threshold": { "type": "number", "minimum": 0, "maximum": 1, "default": 0 } } } } } }, "responses": { "200": { "description": "Search results" } } } }, "/user/spaces": { "get": { "summary": "Get user spaces", "security": [ { "bearerAuth": [] } ], "responses": { "200": { "description": "List of user spaces" }, "401": { "description": "Unauthorized" } } } }, "/integrations/notion/import": { "get": { "summary": "Import Notion content", "security": [ { "bearerAuth": [] } ], "responses": { "200": { "description": "Stream of import progress", "content": { "text/event-stream": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" } } } } }, "security": [ { "bearerAuth": [] } ] }