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 bearer token 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

Get User

Request

Get user details by user_id (_User.objectId) and developer association

Path
user_idstring(User Id)required
Headers
X-API-Keystring(X-Api-Key)required
curl -i -X GET \
  'https://memory.papr.ai/v1/user/{user_id}' \
  -H 'X-API-Key: string'

Responses

Successful Response

Bodyapplication/json
codeinteger(Code)required

HTTP status code

Example: 200
statusstring(Status)required

'success' or 'error'

Example: "success"
user_idUser Id (string) or User Id (null)(User Id)
Example: "abc123"
Any of:
string(User Id)
emailEmail (string) or Email (null)(Email)
Example: "user@example.com"
Any of:
string(Email)
external_idExternal Id (string) or External Id (null)(External Id)
Example: "user123"
Any of:
string(External Id)
metadataMetadata (object) or Metadata (null)(Metadata)
Example: {"name":"John Doe","preferences":{"theme":"dark"}}
Any of:
created_atCreated At (string) or Created At (null)(Created At)
Example: "2024-03-20T10:00:00.000Z"
Any of:
string(Created At)
updated_atUpdated At (string) or Updated At (null)(Updated At)
Example: "2024-03-20T10:00:00.000Z"
Any of:
string(Updated At)
errorError (string) or Error (null)(Error)
Any of:
string(Error)
detailsDetails (any) or Details (null)(Details)
Any of:
any(Details)
Response
application/json
{ "code": 200, "created_at": "2024-03-20T10:00:00.000Z", "email": "user@example.com", "external_id": "user123", "metadata": { "name": "John Doe", "preferences": {} }, "status": "success", "updated_at": "2024-03-20T10:00:00.000Z", "user_id": "abc123" }

Update User

Request

Update user details by user_id (_User.objectId) and developer association

Path
user_idstring(User Id)required
Headers
X-API-Keystring(X-Api-Key)required
Bodyapplication/jsonrequired
emailEmail (string) or Email (null)(Email)
Example: "updated.user@example.com"
Any of:
string(Email)
external_idExternal Id (string) or External Id (null)(External Id)
Example: "updated_user_123"
Any of:
string(External Id)
metadataMetadata (object) or Metadata (null)(Metadata)
Example: {"name":"Updated User","preferences":{"theme":"light"}}
Any of:
typeUserType (string) or null
Example: "developerUser"
Any of:
string(UserType)
Enum"developerUser""user""agent"
curl -i -X PUT \
  'https://memory.papr.ai/v1/user/{user_id}' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: string' \
  -d '{
    "email": "updated.user@example.com",
    "external_id": "updated_user_123",
    "metadata": {
      "name": "Updated User",
      "preferences": {
        "theme": "light"
      }
    },
    "type": "developerUser"
  }'

Responses

Successful Response

Bodyapplication/json
codeinteger(Code)required

HTTP status code

Example: 200
statusstring(Status)required

'success' or 'error'

Example: "success"
user_idUser Id (string) or User Id (null)(User Id)
Example: "abc123"
Any of:
string(User Id)
emailEmail (string) or Email (null)(Email)
Example: "user@example.com"
Any of:
string(Email)
external_idExternal Id (string) or External Id (null)(External Id)
Example: "user123"
Any of:
string(External Id)
metadataMetadata (object) or Metadata (null)(Metadata)
Example: {"name":"John Doe","preferences":{"theme":"dark"}}
Any of:
created_atCreated At (string) or Created At (null)(Created At)
Example: "2024-03-20T10:00:00.000Z"
Any of:
string(Created At)
updated_atUpdated At (string) or Updated At (null)(Updated At)
Example: "2024-03-20T10:00:00.000Z"
Any of:
string(Updated At)
errorError (string) or Error (null)(Error)
Any of:
string(Error)
detailsDetails (any) or Details (null)(Details)
Any of:
any(Details)
Response
application/json
{ "code": 200, "created_at": "2024-03-20T10:00:00.000Z", "email": "user@example.com", "external_id": "user123", "metadata": { "name": "John Doe", "preferences": {} }, "status": "success", "updated_at": "2024-03-20T10:00:00.000Z", "user_id": "abc123" }

Delete User

Request

Delete user association with developer and the user itself by , assume external user_id is provided, and resolve to internal user_id (_User.objectId)

Path
user_idstring(User Id)required
Query
is_externalboolean(Is External)

Is this an external user ID?

Default false
Headers
X-API-Keystring(X-Api-Key)required
curl -i -X DELETE \
  'https://memory.papr.ai/v1/user/{user_id}?is_external=false' \
  -H 'X-API-Key: string'

Responses

Successful Response

Bodyapplication/json
codeinteger(Code)required

HTTP status code

Example: 200
statusstring(Status)required

'success' or 'error'

Example: "success"
user_idUser Id (string) or User Id (null)(User Id)

ID of the user attempted to delete

Example: "abc123"
Any of:

ID of the user attempted to delete

string(User Id)

ID of the user attempted to delete

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

Success or error message

Example: "User and association deleted successfully"
Any of:

Success or error message

string(Message)

Success or error message

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, "message": "User and association deleted successfully", "status": "success", "user_id": "abc123" }

Memory

Operations

User

Operations

Feedback

Operations