Papr Memory API (1.0.0)

API for managing personal memory items with authentication and user-specific data.

Authentication

This API supports three authentication methods:

  • API Key: Include your API key in the X-API-Key header
    X-API-Key: <your-api-key>
  • Session Token: Include your session token in the X-Session-Token header
    X-Session-Token: <your-session-token>
  • Bearer Token: Include your OAuth2 token from Auth0 in the Authorization header
    Authorization: Bearer <token>

All endpoints require one of these authentication methods.

Download OpenAPI description
Languages
Servers
Production server
https://memory.papr.ai/

v1

Operations

Memory

Operations

Memory Status

Operations

User

Operations

Feedback

Operations

Schema Management

Operations

Messages

Operations

omo

Operations

Namespace

Operations

Create Namespace

Request

Create a new namespace within the developer's organization.

Headers
X-API-Keystring(X-Api-Key)required
Bodyapplication/jsonrequired
namestring(Name)[ 1 .. 128 ] charactersrequired

Namespace name (e.g., 'acme-production')

Example: "acme-production"
environment_typestring(EnvironmentType)

Environment type: development, staging, production

Default "production"
Enum"development""staging""production"
Example: "production"
is_activeboolean(Is Active)

Whether this namespace is active

Default true
Example: true
rate_limitsRate Limits (object) or Rate Limits (null)(Rate Limits)

Rate limits for this namespace (None values inherit from organization)

Any of:

Rate limits for this namespace (None values inherit from organization)

default_policyDefault Policy (object) or Default Policy (null)(Default Policy)

Default memory policy for add/search when request omits policy.

Any of:

Default memory policy for add/search when request omits policy.

curl -i -X POST \
  https://memory.papr.ai/v1/namespace \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: string' \
  -d '{
    "environment_type": "production",
    "is_active": true,
    "name": "acme-production"
  }'

Responses

Namespace created

Bodyapplication/json
codeinteger(Code)

HTTP status code

Default 200
statusstring(Status)

'success' or 'error'

Default "success"
dataNamespaceItem (object) or null

Namespace data if successful

Any of:

Namespace data if successful

errorError (string) or Error (null)(Error)

Error message if failed

Any of:

Error message if failed

string(Error)

Error message if failed

detailsDetails (any) or Details (null)(Details)

Additional error details or context

Any of:

Additional error details or context

any(Details)

Additional error details or context

Response
application/json
{ "code": 200, "status": "success", "data": { "objectId": "string", "name": "string", "environment_type": "string", "is_active": true, "rate_limits": {}, "organization_id": "string", "instance_config": {}, "default_policy": {}, "storageCount": 0, "memoriesCount": 0, "createdAt": "string", "updatedAt": "string" }, "error": "string", "details": {} }

List Namespaces

Request

List namespaces for the developer's organization.

Query
skipinteger(Skip)>= 0

Number of items to skip

Default 0
limitinteger(Limit)[ 1 .. 100 ]

Max items to return

Default 20
Headers
X-API-Keystring(X-Api-Key)required
curl -i -X GET \
  'https://memory.papr.ai/v1/namespace?limit=20&skip=0' \
  -H 'X-API-Key: string'

Responses

Namespaces listed

Bodyapplication/json
codeinteger(Code)

HTTP status code

Default 200
statusstring(Status)

'success' or 'error'

Default "success"
dataArray of Data (objects) or Data (null)(Data)

List of namespaces

Any of:

List of namespaces

totalTotal (integer) or Total (null)(Total)

Total matching namespaces

Any of:

Total matching namespaces

integer(Total)

Total matching namespaces

pagePage (integer) or Page (null)(Page)

Current page (0-indexed skip)

Any of:

Current page (0-indexed skip)

integer(Page)

Current page (0-indexed skip)

page_sizePage Size (integer) or Page Size (null)(Page Size)

Items per page

Any of:

Items per page

integer(Page Size)

Items per page

errorError (string) or Error (null)(Error)

Error message if failed

Any of:

Error message if failed

string(Error)

Error message if failed

detailsDetails (any) or Details (null)(Details)

Additional error details or context

Any of:

Additional error details or context

any(Details)

Additional error details or context

Response
application/json
{ "code": 200, "status": "success", "data": [ {} ], "total": 0, "page": 0, "page_size": 0, "error": "string", "details": {} }

Get Namespace

Request

Retrieve a single namespace by ID.

Path
namespace_idstring(Namespace Id)required
Headers
X-API-Keystring(X-Api-Key)required
curl -i -X GET \
  'https://memory.papr.ai/v1/namespace/{namespace_id}' \
  -H 'X-API-Key: string'

Responses

Namespace retrieved

Bodyapplication/json
codeinteger(Code)

HTTP status code

Default 200
statusstring(Status)

'success' or 'error'

Default "success"
dataNamespaceItem (object) or null

Namespace data if successful

Any of:

Namespace data if successful

errorError (string) or Error (null)(Error)

Error message if failed

Any of:

Error message if failed

string(Error)

Error message if failed

detailsDetails (any) or Details (null)(Details)

Additional error details or context

Any of:

Additional error details or context

any(Details)

Additional error details or context

Response
application/json
{ "code": 200, "status": "success", "data": { "objectId": "string", "name": "string", "environment_type": "string", "is_active": true, "rate_limits": {}, "organization_id": "string", "instance_config": {}, "default_policy": {}, "storageCount": 0, "memoriesCount": 0, "createdAt": "string", "updatedAt": "string" }, "error": "string", "details": {} }

Update Namespace

Request

Update an existing namespace.

Path
namespace_idstring(Namespace Id)required
Headers
X-API-Keystring(X-Api-Key)required
Bodyapplication/jsonrequired
nameName (string) or Name (null)(Name)

Updated namespace name

Example: "acme-staging"
Any of:

Updated namespace name

[ 1 .. 128 ] characters
string(Name)[ 1 .. 128 ] characters

Updated namespace name

environment_typeEnvironmentType (string) or null

Updated environment type

Example: "staging"
Any of:

Updated environment type

string(EnvironmentType)

Updated environment type

Enum"development""staging""production"
is_activeIs Active (boolean) or Is Active (null)(Is Active)

Whether this namespace is active

Example: true
Any of:

Whether this namespace is active

boolean(Is Active)

Whether this namespace is active

rate_limitsRate Limits (object) or Rate Limits (null)(Rate Limits)

Updated rate limits (None values inherit from organization)

Any of:

Updated rate limits (None values inherit from organization)

default_policyDefault Policy (object) or Default Policy (null)(Default Policy)

Default memory policy for add/search when request omits policy.

Any of:

Default memory policy for add/search when request omits policy.

curl -i -X PUT \
  'https://memory.papr.ai/v1/namespace/{namespace_id}' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: string' \
  -d '{
    "environment_type": "staging",
    "is_active": true,
    "name": "acme-staging"
  }'

Responses

Namespace updated

Bodyapplication/json
codeinteger(Code)

HTTP status code

Default 200
statusstring(Status)

'success' or 'error'

Default "success"
dataNamespaceItem (object) or null

Namespace data if successful

Any of:

Namespace data if successful

errorError (string) or Error (null)(Error)

Error message if failed

Any of:

Error message if failed

string(Error)

Error message if failed

detailsDetails (any) or Details (null)(Details)

Additional error details or context

Any of:

Additional error details or context

any(Details)

Additional error details or context

Response
application/json
{ "code": 200, "status": "success", "data": { "objectId": "string", "name": "string", "environment_type": "string", "is_active": true, "rate_limits": {}, "organization_id": "string", "instance_config": {}, "default_policy": {}, "storageCount": 0, "memoriesCount": 0, "createdAt": "string", "updatedAt": "string" }, "error": "string", "details": {} }

Delete Namespace

Request

Delete a namespace and optionally cascade-delete all memories, Neo4j nodes, and ACL references associated with it.

Path
namespace_idstring(Namespace Id)required
Query
delete_memoriesboolean(Delete Memories)

Delete all memories in this namespace

Default true
delete_neo4j_nodesboolean(Delete Neo4J Nodes)

Delete all Neo4j nodes in this namespace

Default true
remove_acl_referencesboolean(Remove Acl References)

Remove namespace from ACL arrays on remaining nodes

Default true
Headers
X-API-Keystring(X-Api-Key)required
curl -i -X DELETE \
  'https://memory.papr.ai/v1/namespace/{namespace_id}?delete_memories=true&delete_neo4j_nodes=true&remove_acl_references=true' \
  -H 'X-API-Key: string'

Responses

Namespace deleted

Bodyapplication/json
codeinteger(Code)

HTTP status code

Default 200
statusstring(Status)

'success' or 'error'

Default "success"
namespace_idNamespace Id (string) or Namespace Id (null)(Namespace Id)

ID of deleted namespace

Any of:

ID of deleted namespace

string(Namespace Id)

ID of deleted namespace

messageMessage (string) or Message (null)(Message)

Human-readable message

Any of:

Human-readable message

string(Message)

Human-readable message

cascadeCascadeDeletionResult (object) or null

Cascade deletion details

Any of:

Cascade deletion details

errorError (string) or Error (null)(Error)

Error message if failed

Any of:

Error message if failed

string(Error)

Error message if failed

detailsDetails (any) or Details (null)(Details)

Additional error details or context

Any of:

Additional error details or context

any(Details)

Additional error details or context

Response
application/json
{ "code": 200, "status": "success", "namespace_id": "string", "message": "string", "cascade": { "memories_deleted": 0, "memories_failed": 0, "neo4j_nodes_deleted": 0, "acl_read_cleaned": 0, "acl_write_cleaned": 0 }, "error": "string", "details": {} }

Create Namespace Api Key

Request

Mint a new API key bound to the given namespace. Caller must authenticate with any API key belonging to the same organization (typically the org-wide / default-namespace key).

Security: The full key is returned exactly once in this response. Store it immediately — it cannot be retrieved later. Subsequent reads expose only the masked key_prefix.

Path
namespace_idstring(Namespace Id)required
Headers
X-API-Keystring(X-Api-Key)required
Bodyapplication/jsonrequired
namestring(Name)[ 1 .. 128 ] charactersrequired

Human-readable name for the API key (shown in admin UIs).

Example: "Acme Production API Key"
environmentstring(Environment)

Environment label: development, staging, or production.

Default "production"
Enum"development""staging""production"
Example: "production"
permissionsArray of strings(Permissions)[ 1 .. 3 ] items

Permissions granted by this key. Must be a subset of ['read', 'write', 'delete'].

Items Enum"read""write""delete"
Example: ["read","write","delete"]
curl -i -X POST \
  'https://memory.papr.ai/v1/namespace/{namespace_id}/api-keys' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: string' \
  -d '{
    "environment": "production",
    "name": "Acme Production API Key",
    "permissions": [
      "read",
      "write",
      "delete"
    ]
  }'

Responses

API key created

Bodyapplication/json
codeinteger(Code)

HTTP status code

Default 200
statusstring(Status)

'success' or 'error'

Default "success"
dataNamespaceApiKeyItem (object) or null

The newly created API key, including the full key string (only on creation).

Any of:

The newly created API key, including the full key string (only on creation).

errorError (string) or Error (null)(Error)

Error message if failed

Any of:

Error message if failed

string(Error)

Error message if failed

detailsDetails (any) or Details (null)(Details)

Additional error details. NEVER contains the API key.

Any of:

Additional error details. NEVER contains the API key.

any(Details)

Additional error details. NEVER contains the API key.

Response
application/json
{ "code": 200, "status": "success", "data": { "objectId": "string", "key": "string", "key_prefix": "string", "name": "string", "namespace_id": "string", "organization_id": "string", "environment": "string", "permissions": [], "is_active": true, "createdAt": "string" }, "error": "string", "details": {} }

Frequency Schemas

Operations

Holographic Transform (Deprecated)

Operations

Graph (CAESAR-8)

Operations

Graph Domains

Operations

Instance Configuration

Operations

AI Proxy

Operations

Sync

Operations

Telemetry

Operations

Document

Operations

GraphQL

Operations

Authentication

Operations