Skip to main content

GET /v1/memories/{id}

Fetch a single memory by its UUID. This is the only endpoint that returns the content field in a non-search context — the list endpoint excludes content for payload efficiency. Required scope: memory:read

Request

curl https://api.thrindex.com/v1/memories/3f2e1d0c-1234-5678-abcd-ef0123456789 \
  -H "Authorization: Bearer th_live_..."

Path parameters

ParameterTypeRequiredDescription
idstring (UUID)yesThe memory’s unique identifier, as returned by POST /v1/memories.

Response

200 OK

{
  "id": "3f2e1d0c-1234-5678-abcd-ef0123456789",
  "org_id": "org_abc...",
  "agent_id": "support-agent",
  "user_id": "user-42",
  "content": "User prefers weekly email digests over push notifications.",
  "level": 0,
  "status": "active",
  "importance": 0.82,
  "confidence": 1.0,
  "source": "agent",
  "created_at": "2026-05-24T17:00:00.000Z",
  "updated_at": "2026-05-24T17:00:00.000Z"
}

Fields

FieldTypeDescription
idstring (UUID)Memory identifier
org_idstringYour organization identifier
agent_idstringAgent that owns the memory
user_idstringUser the memory belongs to
contentstringThe full memory text
levelinteger0 = raw, 1 = abstraction
statusstring"active" or "deprecated" (soft-deleted)
importancefloat (0–1)Importance score assigned by the cognition worker
confidencefloat (0–1)Confidence score (provided on write, defaults to 1.0)
sourcestringOrigin of the memory (e.g. "agent")
created_atISO 8601 stringWhen the memory was created
updated_atISO 8601 stringWhen the memory was last updated

Examples

from thrindex import Thrindex, NotFoundError, MemoryDetail

client = Thrindex(api_key="th_live_...")

try:
    memory: MemoryDetail = client.get("3f2e1d0c-1234-5678-abcd-ef0123456789")
    print(memory.content)
    print(f"Level: {memory.level}, Importance: {memory.importance:.2f}")
except NotFoundError:
    print("Memory not found.")

Errors

StatusCodeDescription
401unauthorizedMissing or invalid API key
401forbiddenAPI key lacks memory:read scope
404not_foundMemory does not exist, has been hard-deleted, or belongs to a different organization
429rate_limitedRate limit exceeded
500internal_errorServer error
A 404 is returned both when the memory does not exist and when it exists but belongs to a different organization. These cases are intentionally indistinguishable.