# Documents ## Add document `client.documents.add(DocumentAddParamsbody, RequestOptionsoptions?): DocumentAddResponse` **post** `/v3/documents` Add a document with any content type (text, url, file, etc.) and metadata ### Parameters - `body: DocumentAddParams` - `content: string` The content to extract and process into a document. This can be a URL to a website, a PDF, an image, or a video. - `containerTag?: string` Optional tag this document should be containerized by. Max 100 characters, alphanumeric with hyphens, underscores, and dots only. - `containerTags?: Array` - `customId?: string` Optional custom ID of the document. Max 100 characters, alphanumeric with hyphens, underscores, and dots only. - `entityContext?: string` Optional entity context for this container tag. Max 1500 characters. Used during document processing to guide memory extraction. - `filepath?: string` Optional file path for the document. Used by supermemoryfs to store the full path of the file. - `filterByMetadata?: Record>` Optional metadata filter to apply when pulling related memories and profile during ingestion. Only memories matching these filters will be used as context. - `string` - `number` - `boolean` - `Array` - `metadata?: Record>` Optional metadata for the document. - `string` - `number` - `boolean` - `Array` - `taskType?: "memory" | "superrag"` Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service. - `"memory"` - `"superrag"` ### Returns - `DocumentAddResponse` - `id: string` Unique identifier of the document - `status: string` Status of the document ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const response = await client.documents.add({ content: 'content' }); console.log(response.id); ``` #### Response ```json { "id": "id", "status": "status" } ``` ## List documents `client.documents.list(DocumentListParamsbody, RequestOptionsoptions?): DocumentListResponse` **post** `/v3/documents/list` Retrieves a paginated list of documents with their metadata and workflow status ### Parameters - `body: DocumentListParams` - `containerTags?: Array` Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `filepath?: string` Filter documents by filepath. Exact match for full paths, prefix match if ending with / - `filters?: Or | And` Optional filters to apply to the search. Can be a JSON string or Query object. - `Or` - `OR: Array` Array of OR filter expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` Array of AND filter expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions or nested expressions - `UnionMember0` A single filter condition based on metadata, numeric values, array contents, or string matching - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `Or` - `OR: Array` OR: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `And` - `AND: Array` AND: Array of conditions - `key: string` - `value: string` - `filterType?: "metadata" | "numeric" | "array_contains" | "string_contains"` - `"metadata"` - `"numeric"` - `"array_contains"` - `"string_contains"` - `ignoreCase?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `negate?: boolean | "true" | "false"` - `boolean` - `"true" | "false"` - `"true"` - `"false"` - `numericOperator?: ">" | "<" | ">=" | 2 more` - `">"` - `"<"` - `">="` - `"<="` - `"="` - `includeContent?: boolean` Whether to include the content field in the response. Warning: This can make responses significantly larger. - `limit?: string | number` Number of items per page - `string` - `number` - `order?: "asc" | "desc"` Sort order - `"asc"` - `"desc"` - `page?: string | number` Page number to fetch - `string` - `number` - `sort?: "createdAt" | "updatedAt"` Field to sort by - `"createdAt"` - `"updatedAt"` ### Returns - `DocumentListResponse` List of documents - `memories: Array` - `id: string` Unique identifier of the document. - `connectionId: string | null` Optional ID of connection the document was created from. This is useful for identifying the source of the document. - `createdAt: string` Creation timestamp - `customId: string | null` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `filepath: string | null` - `metadata: string | number | boolean | 2 more | null` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Record` - `Array` - `status: "unknown" | "queued" | "extracting" | 5 more` Status of the document - `"unknown"` - `"queued"` - `"extracting"` - `"chunking"` - `"embedding"` - `"indexing"` - `"done"` - `"failed"` - `summary: string | null` Summary of the document content - `title: string | null` Title of the document - `type: "text" | "pdf" | "tweet" | 10 more` Type of the document - `"text"` - `"pdf"` - `"tweet"` - `"google_doc"` - `"google_slide"` - `"google_sheet"` - `"image"` - `"video"` - `"audio"` - `"notion_doc"` - `"webpage"` - `"onedrive"` - `"github_markdown"` - `updatedAt: string` Last update timestamp - `containerTags?: Array` Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `content?: string` Content of the document (only included when includeContent=true) - `url?: string | null` URL of the document - `pagination: Pagination` Pagination metadata - `currentPage: number` - `totalItems: number` - `totalPages: number` - `limit?: number` ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const documents = await client.documents.list(); console.log(documents.memories); ``` #### Response ```json { "memories": [ { "id": "acxV5LHMEsG2hMSNb4umbn", "connectionId": "xxxxxxxxxxxxxxxxxxxxxx", "createdAt": "2025-04-15T09:30:00.000Z", "customId": "doc-api-rate-limits", "filepath": "filepath", "metadata": { "source": "bar", "language": "bar" }, "status": "done", "summary": "API rate limit policy: 100 req/min free, 1000 req/min pro.", "title": "API Rate Limiting Policy", "type": "text", "updatedAt": "2025-04-15T09:31:00.000Z", "containerTags": [ "string" ], "content": "This is the content of the document...", "url": "https://docs.example.com/guides/rate-limits" } ], "pagination": { "currentPage": 1, "totalItems": 100, "totalPages": 10, "limit": 10 } } ``` ## Update document `client.documents.update(stringid, DocumentUpdateParamsbody, RequestOptionsoptions?): DocumentUpdateResponse` **patch** `/v3/documents/{id}` Update a document with any content type (text, url, file, etc.) and metadata ### Parameters - `id: string` - `body: DocumentUpdateParams` - `containerTag?: string` Optional tag this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `containerTags?: Array` (DEPRECATED: Use containerTag instead) Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `content?: string` The content to extract and process into a document. This can be a URL to a website, a PDF, an image, or a video. Plaintext: Any plaintext format URL: A URL to a website, PDF, image, or video We automatically detect the content type from the url's response format. - `customId?: string` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `filepath?: string` Optional file path for the document (e.g., '/documents/reports/file.pdf'). Used by supermemoryfs to map documents to filesystem paths. - `filterByMetadata?: Record>` Optional metadata filter scoping which existing memories are pulled as context during ingestion. Scalar values match exactly (AND across keys); array values match ANY (OR within key). Only memories whose source documents match this filter are used as context. - `string` - `number` - `boolean` - `Array` - `metadata?: Record>` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Array` - `taskType?: "memory" | "superrag"` Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service. - `"memory"` - `"superrag"` ### Returns - `DocumentUpdateResponse` - `id: string` Unique identifier of the document - `status: string` Status of the document ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const document = await client.documents.update('id'); console.log(document.id); ``` #### Response ```json { "id": "id", "status": "status" } ``` ## Get document `client.documents.get(stringid, RequestOptionsoptions?): DocumentGetResponse` **get** `/v3/documents/{id}` Get a document by ID ### Parameters - `id: string` ### Returns - `DocumentGetResponse` Document object - `id: string` Unique identifier of the document. - `connectionId: string | null` Optional ID of connection the document was created from. This is useful for identifying the source of the document. - `content: string | null` The content to extract and process into a document. This can be a URL to a website, a PDF, an image, or a video. Plaintext: Any plaintext format URL: A URL to a website, PDF, image, or video We automatically detect the content type from the url's response format. - `createdAt: string` Creation timestamp - `customId: string | null` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `dreamingStatus: "dreaming" | "done"` - `"dreaming"` - `"done"` - `filepath: string | null` - `metadata: string | number | boolean | 2 more | null` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Record` - `Array` - `ogImage: string | null` - `raw: unknown` Raw content of the document - `source: string | null` Source of the document - `status: "unknown" | "queued" | "extracting" | 5 more` Status of the document - `"unknown"` - `"queued"` - `"extracting"` - `"chunking"` - `"embedding"` - `"indexing"` - `"done"` - `"failed"` - `summary: string | null` Summary of the document content - `taskType: "memory" | "superrag"` Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service. - `"memory"` - `"superrag"` - `title: string | null` Title of the document - `type: "text" | "pdf" | "tweet" | 10 more` Type of the document - `"text"` - `"pdf"` - `"tweet"` - `"google_doc"` - `"google_slide"` - `"google_sheet"` - `"image"` - `"video"` - `"audio"` - `"notion_doc"` - `"webpage"` - `"onedrive"` - `"github_markdown"` - `updatedAt: string` Last update timestamp - `containerTags?: Array` Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `url?: string | null` URL of the document ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const document = await client.documents.get('id'); console.log(document.id); ``` #### Response ```json { "id": "acxV5LHMEsG2hMSNb4umbn", "connectionId": "xxxxxxxxxxxxxxxxxxxxxx", "content": "Our API rate limits are 100 req/min on free and 1000 on pro.", "createdAt": "2025-04-15T09:30:00.000Z", "customId": "doc-api-rate-limits", "dreamingStatus": "dreaming", "filepath": "filepath", "metadata": { "source": "bar", "language": "bar" }, "ogImage": "ogImage", "raw": "Our API rate limits are 100 req/min on free and 1000 on pro. Clients should use exponential backoff on 429s.", "source": "text", "status": "done", "summary": "API rate limit policy: 100 req/min free, 1000 req/min pro.", "taskType": "memory", "title": "API Rate Limiting Policy", "type": "text", "updatedAt": "2025-04-15T09:31:00.000Z", "containerTags": [ "string" ], "url": "https://docs.example.com/guides/rate-limits" } ``` ## Delete document by ID or customId `client.documents.delete(stringid, RequestOptionsoptions?): void` **delete** `/v3/documents/{id}` Delete a document by ID or customId ### Parameters - `id: string` ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); await client.documents.delete('id'); ``` ## Bulk delete documents `client.documents.deleteBulk(DocumentDeleteBulkParamsbody, RequestOptionsoptions?): DocumentDeleteBulkResponse` **delete** `/v3/documents/bulk` Bulk delete documents by IDs or container tags ### Parameters - `body: DocumentDeleteBulkParams` - `containerTags?: Array` Array of container tags - all documents in these containers will be deleted - `filepath?: string` Delete documents matching this filepath. Exact match for full paths, prefix match if ending with / - `ids?: Array` Array of document IDs to delete (max 100 at once) ### Returns - `DocumentDeleteBulkResponse` Response for bulk document deletion - `deletedCount: number` Number of documents successfully deleted - `success: boolean` Whether the bulk deletion was successful - `containerTags?: Array` Container tags that were processed (only applicable when deleting by container tags) - `errors?: Array` Array of errors for documents that couldn't be deleted (only applicable when deleting by IDs) - `id: string` - `error: string` ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const response = await client.documents.deleteBulk(); console.log(response.deletedCount); ``` #### Response ```json { "deletedCount": 2, "success": true, "containerTags": [ "string" ], "errors": [ { "id": "id", "error": "error" } ] } ``` ## Upload a file `client.documents.uploadFile(DocumentUploadFileParamsbody, RequestOptionsoptions?): DocumentUploadFileResponse` **post** `/v3/documents/file` Upload a file to be processed ### Parameters - `body: DocumentUploadFileParams` - `file: Uploadable` File to upload and process - `containerTag?: string` Optional container tag (e.g., 'user_123'). Use this for a single tag. - `containerTags?: string` Optional container tags. Can be either a JSON string of an array (e.g., '["user_123", "project_123"]') or a single string (e.g., 'user_123'). Single strings will be automatically converted to an array. - `customId?: string` Optional custom ID of the document. Max 100 characters, alphanumeric with hyphens, underscores, and colons only. - `entityContext?: string` Optional entity context for this container tag. Max 1500 characters. Used during document processing to guide memory extraction. - `filepath?: string` Optional file path for the uploaded file (e.g., '/documents/reports/file.pdf'). Used by supermemoryfs to map documents to filesystem paths. - `fileType?: string` Optional file type override to force specific processing behavior. Valid values: text, pdf, tweet, google_doc, google_slide, google_sheet, image, video, notion_doc, webpage, onedrive - `filterByMetadata?: string` Optional metadata filter as a JSON string. Scopes which existing memories are pulled as context during ingestion. Scalar values match exactly (AND across keys); array values match ANY (OR within key). - `metadata?: string` Optional metadata for the document as a JSON string. This is used to store additional information about the document. Keys must be strings and values can be strings, numbers, or booleans. - `mimeType?: string` Required when fileType is 'image' or 'video'. Specifies the exact MIME type to use (e.g., 'image/png', 'image/jpeg', 'video/mp4', 'video/webm') - `taskType?: "memory" | "superrag"` Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service. - `"memory"` - `"superrag"` - `useAdvancedProcessing?: string` DEPRECATED: This field is no longer used. Advanced PDF processing is now automatic with our hybrid Mistral OCR + Gemini pipeline. This parameter will be accepted but ignored for backwards compatibility. ### Returns - `DocumentUploadFileResponse` - `id: string` Unique identifier of the document - `status: string` Status of the document ### Example ```typescript import fs from 'fs'; import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const response = await client.documents.uploadFile({ file: fs.createReadStream('path/to/file') }); console.log(response.id); ``` #### Response ```json { "id": "id", "status": "status" } ``` ## Batch add documents `client.documents.batchAdd(DocumentBatchAddParamsbody, RequestOptionsoptions?): DocumentBatchAddResponse` **post** `/v3/documents/batch` Add multiple documents in a single request. Each document can have any content type (text, url, file, etc.) and metadata ### Parameters - `body: DocumentBatchAddParams` - `documents: Array | Array` - `Array` - `content: string` The content to extract and process into a document. This can be a URL to a website, a PDF, an image, or a video. Plaintext: Any plaintext format URL: A URL to a website, PDF, image, or video We automatically detect the content type from the url's response format. - `containerTag?: string` Optional tag this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `containerTags?: Array` (DEPRECATED: Use containerTag instead) Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `customId?: string` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `entityContext?: string` Optional entity context for this container tag. Max 1500 characters. Used during document processing to guide memory extraction. - `filepath?: string` Optional file path for the document (e.g., '/documents/reports/file.pdf'). Used by supermemoryfs to map documents to filesystem paths. - `filterByMetadata?: Record>` Optional metadata filter scoping which existing memories are pulled as context during ingestion. Scalar values match exactly (AND across keys); array values match ANY (OR within key). Only memories whose source documents match this filter are used as context. - `string` - `number` - `boolean` - `Array` - `metadata?: Record>` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Array` - `taskType?: "memory" | "superrag"` Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service. - `"memory"` - `"superrag"` - `Array` - `containerTag?: string` Optional tag this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `containerTags?: Array` (DEPRECATED: Use containerTag instead) Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `content?: unknown` - `entityContext?: string` Optional entity context for this container tag. Max 1500 characters. Used during document processing to guide memory extraction. - `filepath?: string` Optional file path for the document (e.g., '/documents/reports/file.pdf'). Used by supermemoryfs to map documents to filesystem paths. - `filterByMetadata?: Record>` Optional metadata filter scoping which existing memories are pulled as context during ingestion. Scalar values match exactly (AND across keys); array values match ANY (OR within key). Only memories whose source documents match this filter are used as context. - `string` - `number` - `boolean` - `Array` - `metadata?: Record>` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Array` - `taskType?: "memory" | "superrag"` Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service. - `"memory"` - `"superrag"` ### Returns - `DocumentBatchAddResponse` - `failed: number` Count of documents that failed to add - `results: Array` Array of results for each document in the batch - `id: string` Unique identifier of the document (empty string for failed items) - `status: string` Status of the document (e.g. 'done', 'queued', 'error') - `details?: string` Additional error details when status is 'error' - `error?: string` Error message when status is 'error' - `success: number` Count of documents successfully added ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const response = await client.documents.batchAdd({ documents: [ { content: 'Our API rate limits are 100 req/min on free and 1000 on pro. Clients should use exponential backoff on 429s.', }, ], }); console.log(response.failed); ``` #### Response ```json { "failed": 0, "results": [ { "id": "id", "status": "status", "details": "details", "error": "error" } ], "success": 0 } ``` ## Get processing documents `client.documents.listProcessing(RequestOptionsoptions?): DocumentListProcessingResponse` **get** `/v3/documents/processing` Get documents that are currently being processed ### Returns - `DocumentListProcessingResponse` List of documents currently being processed - `documents: Array` - `id: string` Unique identifier of the document. - `createdAt: string` Creation timestamp - `customId: string | null` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `metadata: string | number | boolean | 2 more | null` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Record` - `Array` - `status: "unknown" | "queued" | "extracting" | 5 more` Status of the document - `"unknown"` - `"queued"` - `"extracting"` - `"chunking"` - `"embedding"` - `"indexing"` - `"done"` - `"failed"` - `title: string | null` Title of the document - `type: "text" | "pdf" | "tweet" | 10 more` Type of the document - `"text"` - `"pdf"` - `"tweet"` - `"google_doc"` - `"google_slide"` - `"google_sheet"` - `"image"` - `"video"` - `"audio"` - `"notion_doc"` - `"webpage"` - `"onedrive"` - `"github_markdown"` - `updatedAt: string` Last update timestamp - `containerTags?: Array` Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `totalCount: number` Total number of processing documents ### Example ```typescript import Supermemory from 'supermemory'; const client = new Supermemory({ apiKey: process.env['SUPERMEMORY_API_KEY'], // This is the default and can be omitted }); const response = await client.documents.listProcessing(); console.log(response.documents); ``` #### Response ```json { "documents": [ { "id": "xxxxxxxxxxxxxxxxxxxxxx", "createdAt": "2024-12-27T12:00:00Z", "customId": "doc-api-rate-limits", "metadata": { "source": "bar", "language": "bar" }, "status": "extracting", "title": "My Document", "type": "text", "updatedAt": "2024-12-27T12:01:00Z", "containerTags": [ "string" ] } ], "totalCount": 5 } ``` ## Domain Types ### Document Add Response - `DocumentAddResponse` - `id: string` Unique identifier of the document - `status: string` Status of the document ### Document List Response - `DocumentListResponse` List of documents - `memories: Array` - `id: string` Unique identifier of the document. - `connectionId: string | null` Optional ID of connection the document was created from. This is useful for identifying the source of the document. - `createdAt: string` Creation timestamp - `customId: string | null` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `filepath: string | null` - `metadata: string | number | boolean | 2 more | null` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Record` - `Array` - `status: "unknown" | "queued" | "extracting" | 5 more` Status of the document - `"unknown"` - `"queued"` - `"extracting"` - `"chunking"` - `"embedding"` - `"indexing"` - `"done"` - `"failed"` - `summary: string | null` Summary of the document content - `title: string | null` Title of the document - `type: "text" | "pdf" | "tweet" | 10 more` Type of the document - `"text"` - `"pdf"` - `"tweet"` - `"google_doc"` - `"google_slide"` - `"google_sheet"` - `"image"` - `"video"` - `"audio"` - `"notion_doc"` - `"webpage"` - `"onedrive"` - `"github_markdown"` - `updatedAt: string` Last update timestamp - `containerTags?: Array` Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `content?: string` Content of the document (only included when includeContent=true) - `url?: string | null` URL of the document - `pagination: Pagination` Pagination metadata - `currentPage: number` - `totalItems: number` - `totalPages: number` - `limit?: number` ### Document Update Response - `DocumentUpdateResponse` - `id: string` Unique identifier of the document - `status: string` Status of the document ### Document Get Response - `DocumentGetResponse` Document object - `id: string` Unique identifier of the document. - `connectionId: string | null` Optional ID of connection the document was created from. This is useful for identifying the source of the document. - `content: string | null` The content to extract and process into a document. This can be a URL to a website, a PDF, an image, or a video. Plaintext: Any plaintext format URL: A URL to a website, PDF, image, or video We automatically detect the content type from the url's response format. - `createdAt: string` Creation timestamp - `customId: string | null` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `dreamingStatus: "dreaming" | "done"` - `"dreaming"` - `"done"` - `filepath: string | null` - `metadata: string | number | boolean | 2 more | null` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Record` - `Array` - `ogImage: string | null` - `raw: unknown` Raw content of the document - `source: string | null` Source of the document - `status: "unknown" | "queued" | "extracting" | 5 more` Status of the document - `"unknown"` - `"queued"` - `"extracting"` - `"chunking"` - `"embedding"` - `"indexing"` - `"done"` - `"failed"` - `summary: string | null` Summary of the document content - `taskType: "memory" | "superrag"` Task type: "memory" (default) for full context layer with SuperRAG built in, "superrag" for managed RAG as a service. - `"memory"` - `"superrag"` - `title: string | null` Title of the document - `type: "text" | "pdf" | "tweet" | 10 more` Type of the document - `"text"` - `"pdf"` - `"tweet"` - `"google_doc"` - `"google_slide"` - `"google_sheet"` - `"image"` - `"video"` - `"audio"` - `"notion_doc"` - `"webpage"` - `"onedrive"` - `"github_markdown"` - `updatedAt: string` Last update timestamp - `containerTags?: Array` Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `url?: string | null` URL of the document ### Document Delete Bulk Response - `DocumentDeleteBulkResponse` Response for bulk document deletion - `deletedCount: number` Number of documents successfully deleted - `success: boolean` Whether the bulk deletion was successful - `containerTags?: Array` Container tags that were processed (only applicable when deleting by container tags) - `errors?: Array` Array of errors for documents that couldn't be deleted (only applicable when deleting by IDs) - `id: string` - `error: string` ### Document Upload File Response - `DocumentUploadFileResponse` - `id: string` Unique identifier of the document - `status: string` Status of the document ### Document Batch Add Response - `DocumentBatchAddResponse` - `failed: number` Count of documents that failed to add - `results: Array` Array of results for each document in the batch - `id: string` Unique identifier of the document (empty string for failed items) - `status: string` Status of the document (e.g. 'done', 'queued', 'error') - `details?: string` Additional error details when status is 'error' - `error?: string` Error message when status is 'error' - `success: number` Count of documents successfully added ### Document List Processing Response - `DocumentListProcessingResponse` List of documents currently being processed - `documents: Array` - `id: string` Unique identifier of the document. - `createdAt: string` Creation timestamp - `customId: string | null` Optional custom ID of the document. This could be an ID from your database that will uniquely identify this document. - `metadata: string | number | boolean | 2 more | null` Optional metadata for the document. This is used to store additional information about the document. You can use this to store any additional information you need about the document. Metadata can be filtered through. Keys must be strings and are case sensitive. Values can be strings, numbers, or booleans. You cannot nest objects. - `string` - `number` - `boolean` - `Record` - `Array` - `status: "unknown" | "queued" | "extracting" | 5 more` Status of the document - `"unknown"` - `"queued"` - `"extracting"` - `"chunking"` - `"embedding"` - `"indexing"` - `"done"` - `"failed"` - `title: string | null` Title of the document - `type: "text" | "pdf" | "tweet" | 10 more` Type of the document - `"text"` - `"pdf"` - `"tweet"` - `"google_doc"` - `"google_slide"` - `"google_sheet"` - `"image"` - `"video"` - `"audio"` - `"notion_doc"` - `"webpage"` - `"onedrive"` - `"github_markdown"` - `updatedAt: string` Last update timestamp - `containerTags?: Array` Optional tags this document should be containerized by. This can be an ID for your user, a project ID, or any other identifier you wish to use to group documents. - `totalCount: number` Total number of processing documents