Documentation Index
Fetch the complete documentation index at: https://docs.svantic.com/llms.txt
Use this file to discover all available pages before exploring further.
Sensitive forms
Svantic can present interactive forms (A2UI) mid-conversation — richer than free-text Q&A. When a form asks for secrets (passwords, API tokens, PII), those values must not flow through the agent or the LLM. Otherwise they end up in logs, traces, or prompt history.SensitiveFormRouter is the single helper a client UI calls to handle this correctly.
This guide is for client-side code: terminals, browser widgets, mobile apps. Agents themselves don’t use it.
What Svantic sends
When the agent emits a sensitive form, the form metadata includes:sensitive: truesubmit_url— a one-shot secure endpoint the Svantic edge exposes for this session.
What the client does
- Sensitive +
submit_url— values go tosubmit_urlvia HTTPS POST. The router returns a sanitized message likeUSER_INPUT: form_submitted=true (context: login [sensitive form submitted securely]). Forward that to the agent.action_datais absent. - Everything else — values go to the agent as normal.
routed_to === 'agent',action_datacarries the values.
What submit_url does
The URL points at a Svantic-managed secure endpoint scoped to the current session. The endpoint:
- accepts the form values over TLS,
- stores them encrypted against the session,
- releases them to whichever downstream step needs them (e.g. an auth flow in a connector) without going through the LLM or appearing in telemetry.
When the POST fails
SensitiveFormRouter.route throws. The client should:
- Surface a clear error to the user (“Couldn’t submit securely — please retry”).
- Not fall back to sending values through the agent. The whole point is that the values never go there.
See also
- A2UI reference
- Concept: A2UI (Human-in-the-Loop)
