import type * as core from "../../../../../core/index.js"; import type * as HydraDB from "../../../../index.js"; /** * @example * { * database: "database" * } */ export interface IngestContextRequest { /** App-knowledge items as a JSON array (type=knowledge). Per item, `metadata` is capped at 16 KiB and `additional_metadata` at 1 KiB, measured on the compact JSON encoding of the whole map in UTF-8 bytes (keys and punctuation count). The deprecated `tenant_metadata` / `document_metadata` spellings are accepted here and held to the same caps. Over-cap returns 400 with the actual byte count. Each item may also carry `acl`, a list of principals (`user_email:`, a bare email, `group::`, `domain:`, or `__public__`) restricting who may retrieve it; omit it to leave the document unrestricted, and send an empty list to restrict it to nobody. A malformed principal rejects the whole request with 400. Items may also carry `evidence_kind`/`evidence_subject` provenance labels (see document_metadata); an unknown kind returns 400. */ appKnowledge?: string; collection?: string; database: string; /** Per-document metadata as a JSON array (type=knowledge). Per item, `metadata` is capped at 16 KiB and `additional_metadata` at 1 KiB. Both caps are measured on the compact JSON encoding of the whole map in UTF-8 bytes, so keys, quotes, commas and braces count toward the budget. Over-cap returns 400 with the actual byte count. Each item may also carry evidence labels (`evidence_kind`: one of assertion, record, said, done, third_party, inferred; `evidence_subject`: a stable handle for who the evidence is about, e.g. `user:kiran@acme.com`) declaring the content's provenance for entity understanding; an unknown kind returns 400. */ documentMetadata?: string; documents?: core.file.Uploadable[] | undefined; graphPayload?: string; /** JSON-encoded array of ingest items -- the unified shape (text or a conversation per item), and the only one a unified database accepts. The same array may also be POSTed as an application/json body; that variant is not listed here so SDK generators emit this form, which carries every field. */ items?: string; /** Memory items as a JSON array (type=memory). Per item, `metadata` is capped at 16 KiB and `additional_metadata` at 1 KiB, measured on the compact JSON encoding of the whole map in UTF-8 bytes (keys and punctuation count). Over-cap returns 400 with the actual byte count. Items may also carry `evidence_kind`/`evidence_subject` provenance labels (see document_metadata); an unknown kind returns 400. */ memories?: string; subTenantId?: string; tenantId?: string; type?: HydraDB.IngestContextRequestType; upsert?: string; }