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://memoryserver-staging-223473570766.us-west1.run.app/

v1

Operations

List available holographic domains

Request

Returns all available frequency schemas organized by domain. Use the schema_id or domain shortname in transform/rerank calls.

curl -i -X GET \
  https://memoryserver-staging-223473570766.us-west1.run.app/v1/holographic/domains \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Successful Response

Bodyapplication/json
statusstring(Status)
Default "success"
domainsArray of objects(Domains)required
domains[].​schema_idstring(Schema Id)required
domains[].​namestring(Name)required
domains[].​domainstring(Domain)required
domains[].​descriptionstring(Description)
Default ""
domains[].​num_frequenciesinteger(Num Frequencies)required
domains[].​is_customboolean(Is Custom)

True if created by developer via POST

Default false
totalinteger(Total)required
shortcutsobject(Shortcuts)

Shorthand aliases (e.g. 'cosqa' -> 'code_search:cosqa:2.0.0')

Response
application/json
{ "status": "success", "domains": [ {} ], "total": 0, "shortcuts": { "property1": "string", "property2": "string" } }

Create a custom frequency schema

Request

Define a custom frequency schema for your specific domain. Maps your metadata fields to the 14 standard brain-inspired frequency bands. Custom schemas are scoped to your API key.

Bodyapplication/jsonrequired
namestring(Name)required

Schema name in format 'company:domain:version' (e.g. 'acme:support_tickets:1.0.0')

Example: "acme:support_tickets:1.0.0"
descriptionDescription (string) or Description (null)(Description)

Human-readable description

Example: "Support ticket classification schema"
Any of:

Human-readable description

string(Description)

Human-readable description

fieldsArray of objects(Fields)[ 1 .. 14 ] itemsrequired

Frequency field definitions (1-14 fields, one per frequency band)

Example: [{"frequency":4,"name":"priority","type":"enum","values":["P0","P1","P2","P3"],"weight":0.9},{"frequency":6,"name":"component","type":"free_text","weight":0.7},{"frequency":12,"name":"resolution_type","type":"enum","values":["bug_fix","config","wontfix"],"weight":0.8}]
fields[].​frequencynumber(Frequency)required

Hz value (must be one of the 14 standard frequencies: 0.1, 0.5, 2.0, 4.0, 6.0, 10.0, 12.0, 18.0, 19.0, 24.0, 30.0, 40.0, 50.0, 70.0)

fields[].​namestring(Name)required

Field name (e.g. 'ticket_priority', 'component')

fields[].​typestring(FrequencyFieldType)required

Field type

Enum"enum""free_text""numeric""boolean""date""sequence""multi_value_text"
fields[].​valuesArray of Values (strings) or Values (null)(Values)

Allowed values for enum type

Any of:

Allowed values for enum type

fields[].​descriptionDescription (string) or Description (null)(Description)

Field description

Any of:

Field description

string(Description)

Field description

fields[].​weightnumber(Weight)[ 0 .. 1 ]

Importance weight

Default 1
curl -i -X POST \
  https://memoryserver-staging-223473570766.us-west1.run.app/v1/holographic/domains \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "description": "Support ticket classification schema",
    "fields": [
      {
        "frequency": 4,
        "name": "priority",
        "type": "enum",
        "values": [
          "P0",
          "P1",
          "P2",
          "P3"
        ],
        "weight": 0.9
      },
      {
        "frequency": 6,
        "name": "component",
        "type": "free_text",
        "weight": 0.7
      },
      {
        "frequency": 12,
        "name": "resolution_type",
        "type": "enum",
        "values": [
          "bug_fix",
          "config",
          "wontfix"
        ],
        "weight": 0.8
      }
    ],
    "name": "acme:support_tickets:1.0.0"
  }'

Responses

Successful Response

Bodyapplication/json
statusstring(Status)
Default "success"
schema_idstring(Schema Id)required

Generated schema ID

domainstring(Domain)required
num_frequenciesinteger(Num Frequencies)required
Response
application/json
{ "status": "success", "schema_id": "string", "domain": "string", "num_frequencies": 0 }

Set Namespace Instance Config

Request

Set dedicated instance configuration for a namespace.

Path
namespace_idstring(Namespace Id)required
Query
validateboolean(Validate)

Test connection before saving

Default false
Headers
X-API-Keystring(X-Api-Key)required
Bodyapplication/jsonrequired
neo4jNeo4jInstanceConfigInput (object) or null

Neo4j AuraDB instance configuration

Example: {"bolt_url":"neo4j+s://abc12345.databases.neo4j.io","graphql_endpoint":"https://abc12345-graphql.production-orch-0042.neo4j.io/graphql","password":"my-secret-password","username":"neo4j"}
Any of:

Neo4j AuraDB instance configuration

providerstring(Provider)

Cloud provider (only 'gcp' supported today)

Default "gcp"
Example: "gcp"
regionstring(Region)

Cloud region (only 'us-west1' supported today)

Default "us-west1"
Example: "us-west1"
curl -i -X PUT \
  'https://memoryserver-staging-223473570766.us-west1.run.app/v1/namespace/{namespace_id}/instance?validate=false' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: string' \
  -d '{
    "neo4j": {
      "bolt_url": "neo4j+s://abc12345.databases.neo4j.io",
      "graphql_endpoint": "https://abc12345-graphql.production-orch-0042.neo4j.io/graphql",
      "password": "my-secret-password",
      "username": "neo4j"
    },
    "provider": "gcp",
    "region": "us-west1"
  }'

Responses

Successful Response

Bodyapplication/json
codeinteger(Code)

HTTP status code

Default 200
statusstring(Status)

'success' or 'error'

Default "success"
dataInstanceConfigItem (object) or null

Instance config if successful

Any of:

Instance config 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 context

Any of:

Additional context

any(Details)

Additional context

Response
application/json
{ "code": 200, "status": "success", "data": { "neo4j": {}, "provider": "string", "region": "string", "scope": "string" }, "error": "string", "details": {} }

Memory

Operations

Memory Status

Operations

User

Operations

Feedback

Operations

Schema Management

Operations

Messages

Operations

omo

Operations

Namespace

Operations

Frequency Schemas

Operations

Holographic Transform

Operations

Instance Configuration

Operations

AI Proxy

Operations

Sync

Operations

Telemetry

Operations

Document

Operations

GraphQL

Operations

Authentication

Operations