Skip to main content
GET
/
v1
/
memory
/
about-me
List facts about me
curl --request GET \
  --url https://api.hq.zone/v1/memory/about-me \
  --header 'Authorization: Bearer <token>'
{
  "fact_types_available": [
    "<string>"
  ],
  "facts": [
    {
      "agent_slug": "<string>",
      "asserted_at": "2023-11-07T05:31:56Z",
      "confidence": 123,
      "fact": "<string>",
      "fact_type": "<string>",
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "source_conv_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
    }
  ],
  "next_cursor": "<string>",
  "persona_generated_at": "2023-11-07T05:31:56Z",
  "persona_paragraph": "<string>"
}

Authorizations

Authorization
string
header
required

Personal Access Token. Send as Authorization: Bearer hq_pat_....

Query Parameters

agent
string | null

Restrict to one agent's view. Slug; omit for all agents in the workspace that have facts about the caller.

fact_type
string | null

Restrict to one fact_type. Omit for all.

limit
integer<int64> | null

Default 25, max 200. Paginate via cursor rather than bumping this for "show more" - limit is meant to size each page.

cursor
string | null

Opaque cursor returned by the previous page. URL-safe base64 of {asserted_at, id} - fed back as the WHERE bound so concurrent inserts don't shift the page boundary.

Response

200 - application/json

Facts the assistant remembers about you

fact_types_available
string[]
required

Distinct fact_types present in the caller's full set (not the filtered page). Used by the UI to render filter chips - caller doesn't have to scan the whole set to know what's in there.

facts
object[]
required
next_cursor
string | null

Cursor to pass on the next page. None once the caller has reached the tail of the result set.

persona_generated_at
string<date-time> | null

When persona_paragraph was last refreshed. UI shows "updated X minutes ago" so the user can request a re-distill if the paragraph is stale relative to recent activity.

persona_paragraph
string | null

Per docs/agent-runtime.md §System prompt envelope, layer 4 (the user persona). Rendered once per (tenant, user, ~day) from the structured user_profile.profile JSONB by hq-reflection-worker. Surfaced FIRST in this response so the user reads + corrects the one-paragraph view in a single screen before diving into the per-fact list. None when the persona hasn't been distilled yet.