---
title: "Get Memory V1"
method: GET
path: "/v1/memory/{memory_id}"
tags: ["v1", "Memory"]
---

# Get Memory V1

`GET /v1/memory/{memory_id}`

Retrieve a memory item by ID.
    
    **Authentication Required**:
    One of the following authentication methods must be used:
    - Bearer token in `Authorization` header
    - API Key in `X-API-Key` header
    - Session token in `X-Session-Token` header
    
    **Required Headers**:
    - X-Client-Type: (e.g., 'papr_plugin', 'browser_extension')

## Path parameters

- `memory_id` string, required

## Response `200`

Memory successfully retrieved

- SearchResponse
  - `code` integer — HTTP status code
  - `status` string — 'success' or 'error'
  - `data` SearchResult — Return type for SearchResult
    - `memories` Memory[], required
      - `id` string, required
      - `content` string, required
      - `title` string, nullable
      - `type` string, required
      - `metadata` union
        - string
        - object
      - `external_user_id` string, nullable
      - `customMetadata` object, nullable
      - `source_type` string
      - `context` ContextItem[], nullable
        - `role` 'user' | 'assistant', required
        - `content` string, required
      - `location` string, nullable
      - `tags` string[]
      - `hierarchical_structures` string
      - `source_url` string
      - `conversation_id` string
      - `topics` string[]
      - `steps` string[]
      - `current_step` string, nullable
      - `role` string, nullable — Role that generated this memory (user or assistant)
      - `category` string, nullable — Memory category based on role
      - `created_at` string, date-time, nullable
      - `updated_at` string, date-time, nullable
      - `acl` object, required
      - `user_id` string, required
      - `workspace_id` string, nullable
      - `organization_id` string, nullable — Organization ID that owns this memory
      - `namespace_id` string, nullable — Namespace ID this memory belongs to
      - `source_document_id` string, nullable
      - `source_message_id` string, nullable
      - `page_number` integer, nullable
      - `total_pages` integer, nullable
      - `file_url` string, nullable
      - `filename` string, nullable
      - `page` string, nullable
      - `external_user_read_access` string[], nullable
      - `external_user_write_access` string[], nullable
      - `user_read_access` string[], nullable
      - `user_write_access` string[], nullable
      - `workspace_read_access` string[], nullable
      - `workspace_write_access` string[], nullable
      - `role_read_access` string[], nullable
      - `role_write_access` string[], nullable
    - `nodes` Node[], required
      - `label` string, required — Node type label - can be system type (Memory, Person, etc.) or custom type from UserGraphSchema
      - `properties` object, required — Node properties - structure depends on node type and schema
      - `schema_id` string, nullable — Reference to UserGraphSchema ID for custom nodes. Use GET /v1/schemas/{schema_id} to get full schema definition. Null for system nodes.
    - `schemas_used` string[], nullable — List of UserGraphSchema IDs used in this response. Use GET /v1/schemas/{id} to get full schema definitions.
  - `error` string, nullable — Error message if failed
  - `details` unknown
  - `search_id` string, nullable — Unique identifier for this search query, maps to QueryLog objectId in Parse Server

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `404` — Memory not found
- `422` — Validation Error
- `500` — Internal server error

## Changes

- **2025-11-07** `14ff13755871` — 5 breaking, 80 info
  - the `data/anyOf[subschema #1: SearchResult]/nodes/items/properties` response's property type changed from no type to `object` for status `200`
  - the `data/anyOf[subschema #1: SearchResult]/nodes/items/properties` response's property type changed from no type to `object` for status `400`
  - the `data/anyOf[subschema #1: SearchResult]/nodes/items/properties` response's property type changed from no type to `object` for status `401`
  - the `data/anyOf[subschema #1: SearchResult]/nodes/items/properties` response's property type changed from no type to `object` for status `404`
  - …81 more

[Change history](https://skmtc.dev/papr-ai/apis/papr-memory-api/changes/v1/memory/:memory_id/get.md)

---

[API](https://skmtc.dev/papr-ai/apis/papr-memory-api.md) · [All operations](https://skmtc.dev/papr-ai/apis/papr-memory-api/llms.txt) · [OpenAPI document](https://skmtc.dev/papr-ai/apis/papr-memory-api/revisions/34b5e739fd20?raw)
