---
title: "Get user profile"
method: POST
path: "/v4/profile"
tags: ["Profiles"]
---

# Get user profile

`POST /v4/profile`

Get user profile with optional search results

## Request body

- object
  - `q` string — Optional search query to include search results in the response
  - `containerTag` string, required — Tag to filter the profile by. This can be an ID for your user, a project ID, or any other identifier you wish to use to filter memories.
  - `threshold` number — Threshold for search results. Only results with a score above this threshold will be included.
  - `filters` union — Root query object that must contain either an AND or OR array of filter expressions
    - object
      - `OR` LogicalExpression[], required — Array of OR filter expressions
        - union — A single filter condition or a nested AND/OR expression. The API validates up to 5 levels of nesting.
          - FilterCondition — A single filter condition based on metadata, numeric values, array contents, or string matching
            - `filterType` 'metadata' | 'numeric' | 'array_contains' | 'string_contains'
            - `key` string, required
            - `negate` union
              - …
            - `ignoreCase` union
              - …
            - `numericOperator` '>' | '<' | '>=' | '<=' | '='
            - `value` string, required
          - object
            - `OR` LogicalExpression[], required — OR: Array of conditions or nested expressions
          - object
            - `AND` LogicalExpression[], required — AND: Array of conditions or nested expressions
    - object
      - `AND` LogicalExpression[], required — Array of AND filter expressions
        - union — A single filter condition or a nested AND/OR expression. The API validates up to 5 levels of nesting.
          - FilterCondition — A single filter condition based on metadata, numeric values, array contents, or string matching
            - `filterType` 'metadata' | 'numeric' | 'array_contains' | 'string_contains'
            - `key` string, required
            - `negate` union
              - …
            - `ignoreCase` union
              - …
            - `numericOperator` '>' | '<' | '>=' | '<=' | '='
            - `value` string, required
          - object
            - `OR` LogicalExpression[], required — OR: Array of conditions or nested expressions
          - object
            - `AND` LogicalExpression[], required — AND: Array of conditions or nested expressions
  - `include` string[] — Profile sections to return. Omit to return all sections. Pass a subset to reduce payload — e.g. ["buckets"] skips static and dynamic entirely.
  - `buckets` string[] — Specific bucket keys to return. Omit to return all configured buckets. Only relevant when "buckets" is included.

## Response `200`

User profile with optional search results

- object
  - `profile` object, required
    - `static` string[] — Static profile information that remains relevant long-term
    - `dynamic` string[] — Dynamic profile information (recent memories)
    - `buckets` object — Per-bucket memory lists, keyed by bucket key
  - `searchResults` object — Search results if a search query was provided
    - `results` object[], required — Search results for the provided query
      - `id` string, required — Memory entry ID or chunk ID
      - `memory` string — The memory content (only present for memory results)
      - `chunk` string — The chunk content (only present for chunk results from hybrid search)
      - `metadata` object, nullable, required — Memory metadata
      - `updatedAt` string, datetime, required — Memory last update date
      - `similarity` number, required — Similarity score between the query and memory entry
      - `filepath` string, nullable — Filepath of the source document this memory or chunk came from
      - `version` number, nullable — Version number of this memory entry
      - `rootMemoryId` string, nullable — ID of the root (first version) memory entry this one descends from. Null for memories that have never been superseded. Only present on memory results, not on standalone chunk results.
      - `context` object — Object containing version history (parents/children via updates) and related memories (extends/derives)
        - `parents` object[]
          - `relation` 'updates' | 'extends' | 'derives', required — Relation type between this memory and its parent/child
          - `version` number, nullable — Relative version distance from the primary memory (-1 for direct parent, -2 for grand-parent, etc.)
          - `memory` string, required — The contextual memory content
          - `metadata` object, nullable — Contextual memory metadata
          - `updatedAt` string, datetime, required — Contextual memory last update date
        - `children` object[]
          - `relation` 'updates' | 'extends' | 'derives', required — Relation type between this memory and its parent/child
          - `version` number, nullable — Relative version distance from the primary memory (+1 for direct child, +2 for grand-child, etc.)
          - `memory` string, required — The contextual memory content
          - `metadata` object, nullable — Contextual memory metadata
          - `updatedAt` string, datetime, required — Contextual memory last update date
        - `related` object[]
          - `relation` 'extends' | 'derives', required — Relation type
          - `memory` string, required — The related memory content
          - `metadata` object, nullable — Related memory metadata
          - `updatedAt` string, required — Related memory last update date
      - `documents` object[] — Associated documents for this memory entry
        - `id` string, required — Document ID
        - `title` string — Document title (only included when documents=true)
        - `type` string — Document type (only included when documents=true)
        - `metadata` object, nullable — Document metadata (only included when documents=true)
        - `summary` string, nullable — Document summary (only included when summaries=true)
        - `createdAt` string, datetime, required — Document creation date
        - `updatedAt` string, datetime, required — Document last update date
      - `chunks` object[] — Relevant chunks from associated documents (only included when chunks=true)
        - `content` string, required — Content of the chunk
        - `position` number, required — Position of chunk in the document (0-indexed)
        - `documentId` string, required — ID of the document this chunk belongs to
      - `isAggregated` boolean — Indicates if this memory was created by aggregating multiple source memories
    - `total` number, required — Total number of search results
    - `timing` number, required — Search timing in milliseconds

## Other responses

- `400` — Invalid request parameters
- `401` — Unauthorized
- `402` — Search quota or credits exhausted (when search query is provided)
- `500` — Server error

---

[API](https://skmtc.dev/supermemory/apis/supermemory-api.md) · [All operations](https://skmtc.dev/supermemory/apis/supermemory-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/supermemory/supermemory-api/revisions/b8c2dbc8f2b5/schema)
