Skip to main content
Niadra is the omnichannel memory layer for your company’s AI agents. Everything that happens with a customer, on any channel, platform or system, comes in as an event: what they said on WhatsApp or on a call, what the CRM, the ERP or the help desk recorded, what an agent did. Niadra recognizes the same customer across all of those sources, builds one memory of them and delivers it to any AI agent, from any vendor, under governance. The WhatsApp agent, the voice agent from another vendor, the billing agent inside the ERP and the human agent read the same memory, each in the context of its own task, before they act, and open the whole history to search with any LLM. Niadra is fully managed. On your side there is the SDK, the HTTP API or an MCP connection, and nothing else to run. LiveKit, Pipecat, ElevenLabs, Vapi, Retell, Twilio, the WhatsApp Cloud API, n8n and the most used agent frameworks have a ready-made adapter in both SDKs, and your systems come in by webhook, batch or file.

Three calls

Every integration comes down to three calls. The agent reads the context before it speaks or acts, searches the history when the conversation asks for more, and tracks what was said or done so every other agent knows it too.
The rest of the SDK is convenience over the same routes: conversation() pins the context and captures turns, task() does the same for an internal agent, action() records what an agent did in a system of record, and tools() hands the history search to your LLM as function calls.

What the agent receives

At 2:07 pm Marina calls. She complained on WhatsApp at 2:02 pm, and the billing agent credited her invoice at 2:06 pm. Before the voice agent says hello, context() returns this, with no AI model and, with a warm context, no database statement:
Context Pack
It is the voice skeleton, small on purpose: the customer line, the facts (each one’s origin stays in the manifest), what just happened and the open item; dates of the same year as the newest thing the memory holds go without the year. The older conversations wait in the reserve of the pack, and what Marina says on each turn picks the slots from there, which arrive in slots, outside the pinned body. The bill dispute (“The August bill was charged twice”) is billing, which the starter policy releases from V2, and it is Marina’s at V1 all the same: she wrote it herself, and the policy hands back to the customer what they said themselves (the mirror); it waits in the reserve, as every complaint fact no conversation in the body says, for the turn in which Marina brings up the bill. A balance the company had stated would stay withheld until an OTP in this call, and the context would say how many items stayed out in withheld. The example is the output of Niadra’s compiler for a synthetic customer, in a new space with the starter policy. The pack is pinned to the conversation, so the next turns get the same bytes and your LLM provider can reuse the cached prompt prefix. What happens on other channels during the call arrives in live, outside the pinned body.

How it works

  • Write. The SDK sends events in batches. Niadra stores the raw event before it answers, resolves the customer identity on the spot and makes the turn readable to every other agent in under a second after it reaches the API.
  • Read. context() resolves the handle, filters the memory by your policy and the verification level of the conversation, and returns the pack with an ETag. Each agent’s usual context is prepared ahead of time, and each task’s is ready from its first read on. No LLM and no vector search sit in that path. Every read leaves a receipt.
  • History. search(), timeline() and open() go through everything that happened with that customer, with the same policy, the same verification level and a token budget. The recurrence count (how many complaints about the same topic in the last 90 days) is a count over typed episodes, not a guess.
  • Systems and internal agents. CRM, ERP and help desk events come in through a webhook, a file batch or the API and become business objects tied to the right customer. What an agent does in a system comes in as an action and closes the open item that asked for it.
  • Governance. Your team sees who read what, measures whether each agent used the context it received, gets signed webhooks when a rule of yours fires, and erases or exports a customer’s data through the API.

What each path does

The times measured in the region are on the benchmark. | Derived memory after the session ends | under 60 s |
Niadra is memory. It never answers the customer, never executes an action in your systems and never orchestrates steps between them. Your agents act with their own credentials; Niadra keeps what they need to remember and what they did.

Next steps

Quickstart

From an API key to the first delivered context.

Context and views

What goes into the pack, in which order, and why.

History navigation

Search, timeline and open, with any LLM.

API reference

Every route, with schemas and examples.