Store a memory
Class A — accepts a session JWT, an il_live_/il_test_ API key, or an il_oauth_ token. On the il_* lanes the bearer is forwarded to Kairos verbatim and Kairos enforces the credential's grant on this workspace (its 401/403 is surfaced in the v2 envelope). The response body is Kairos's, passed through unchanged; X-InfoLang-Tokens-Saved / X-InfoLang-Overage are echoed when set.
Requires the memories:write scope. Accepts all three lanes: a session JWT (bounded by the caller's role on this workspace) or an il_* machine credential whose own scope set, workspace set and validity window cover it — both ceilings apply and neither can raise the other, so a credential carrying memories:write is still refused where the role does not permit it.
A credential with no scope record resolves to LEGACY_DEFAULT, which INCLUDES memories:write — every key minted before scoping keeps working here.
Request
- Base URL: https://api.infolang.ai
- URL: https://api.infolang.ai/v2/workspaces/{id}/remember
- Auth: one of:
- HTTP bearer
- HTTP bearer
- HTTP bearer
Path parameters
Request body
Response
Stored (forge shape). With subject, also belief — an ADVISORY reporting whether the assertion landed, the authority actually recorded (it is clamped, not refused), and any subject-key drift warnings. belief.asserted: false is a 200: the memory is written first, so coordination can fail without losing it.
With regimes: [<regime_id>…], also regime — the scoping advisory, with one scope_links[] entry per link that landed. Keep those ids: a scope link can only ever be withdrawn by naming it. Partial success is representable and reported, because the links are independent appends with no transaction across them.
With subject AND warrant_reason, also warrant — the support edge Memory(id) → Assertion(id) that reason states, and the edge id that is the ONLY handle able to withdraw it later. There is no boolean here on purpose: a memory is not automatically a reason for the assertion that cites it: Phase 1's evidence pointer already records that provenance, and minting a support edge from it would make every asserted memory warrant its own claim — warranted would then mean written down. Pass warrant_reason to state a real reason and the gateway mints the edge you described.
With subject AND propose_correspondence: true, also correspondence — the corresponds links the gateway proposed from this write's own drift advisories, at band proposed. Off by default: the gateway does NOT propose correspondence links unless asked. Proposing from drift advisories is the kernel's own documented input port (S-c: adapters propose, humans dispose), but the correspondence log never deletes, so an always-on proposer writes a permanent record per near-miss per write forever. Pass propose_correspondence: true alongside subject and the gateway mints at most 3 corresponds links at band proposed, with ids derived deterministically from the subject pair — so the same advisory firing a thousand times mints one link and every repeat answers appended: false. What was written is on the response.
Changes
No recorded changes to this operation across all 1 revision of this API.