Skip to main content
POST
Page through the sources stored in one database and collection, for example to find IDs or audit what was ingested. type selects what to list: knowledge (the default: documents and app sources), memory, or all for both. Narrow results with ids and filters, and return only the fields you need with include_fields. See Metadata Filters for the metadata workflow.

Filters

filters accepts three categories:
  • metadata: schema-backed metadata fields.
  • additional_metadata: free-form metadata. No schema declaration is required.
  • source_fields: built-in and connector fields. Supported keys are type, title, description, url, timestamp, app_provider, app_kind, app_external_id, and app_parent_id. Unsupported keys return 400. Pair external IDs with app_provider.
Matching rules:
  • Values must match exactly, except source_fields.title, which matches a case-insensitive prefix.
  • All filter pairs combine with AND. When ids is non-empty, filters apply only to those IDs, and pagination still applies.
  • Range, contains, and OR operators are not supported. For OR behavior, run separate calls and combine the results in your application.
  • A null filter value returns 400.

Field projection

Pass include_fields to keep response payloads small. Only the listed fields are populated, plus id, database, and collection, which are always returned. Treat omitted fields as unavailable in that response. Omit include_fields or pass null to return everything.
  • Allowed values are title, type, description, note, timestamp, metadata, additional_metadata, and relations, plus the deprecated aliases tenant_metadata and document_metadata.
  • content, url, and attachments are not valid values. They are stripped from list responses, and requesting one returns 400. Fetch them per source with Inspect Context.
  • Projection applies only to type=knowledge.

Behavior notes

  • Memories: For type=memory, read data.user_memories[]. Each entry includes a memory_id, source details, and metadata. Read the memory text and inferred_content with Inspect Context.
  • Memory listing unavailable: If the memory store cannot be read, the call still returns 200 with an empty user_memories and message set to "Memories temporarily unavailable". Check message before you treat an empty list as “no memories”.
  • Access control: acl lists the principals to list as. Omitting it, or sending [] or ["*"], disables caller-supplied filtering. It is ignored for type=memory. For enforced connectors, the authenticated caller is used instead; see ACL enforcement.
  • Limits: ids accepts at most 100 IDs. page_size ranges from 1 to 100 (default 50), and page starts at 1.

Authorizations

Authorization
string
header
required

Send your API key as Authorization: Bearer <your_api_key>.

Body

application/json

List request

acl
string[]

Principals to answer as: only context they may see is listed. Omit it for no access scoping.

collection
string

Collection to list. Omit it to use the database's default collection.

Example:

"team_docs"

database
string

Database to list. Required. Formerly tenant_id; the alias is still accepted.

Example:

"acme_corp"

filters
ListContentFilter · object

Exact-match filters on metadata, additional_metadata and built-in source_fields. All pairs must match.

Example:
group_threads
boolean

Nest each thread's comments and replies under their parent row as comments, newest first, instead of listing them as separate rows. Default false.

Example:

true

ids
string[]

List only these context IDs, at most 100. Pagination and filters still apply.

Example:
include_fields
string[]

Return only these fields plus id, database and collection. Supported fields are title, type, description, note, timestamp, metadata, additional_metadata and relations.

Example:
page
integer

Page number, starting at 1. Default 1.

Example:

1

page_size
integer

Rows per page, from 1 to 100. Default 50.

Example:

50

sub_tenant_id
string
deprecated

Deprecated: use collection.

Example:

"sub_tenant_4567"

tenant_id
string
deprecated

Deprecated: use database.

Example:

"tenant_1234"

type
enum<string>

Corpus to list, knowledge, memory or all for both. Defaults to knowledge.

Available options:
knowledge,
memory,
all
Example:

"knowledge"

Response

OK

data
ListV2ListResponse · object
Example:
error
HandlerApiError · object | null

Error details on failure, or null on success.

Example:

null

meta
HandlerResponseMeta · object
Example:
success
boolean

Whether the request succeeded.

Example:

true