Privacy & Redaction

If a visitor fills a form by voice, they say their name, phone number and email out loud. Voxide removes that from conversation content before writing it to the database — not by hiding it in the dashboard afterwards.

The distinction matters. Data that is never stored cannot be read by you, cannot be read by us, cannot appear in a backup, and cannot be produced under a legal request. The trade is that it is permanent: redacted values cannot be recovered later, by anyone.

#What is removed automatically

Always, and not disableable: payment card numbers (checked with the Luhn algorithm so ordinary reference numbers survive), national ID numbers, and IBANs.

On by default, configurable per projectin Settings → Privacy & Data: email addresses, phone numbers and IP addresses.

Spoken forms are handled too, because dictated speech looks nothing like typing. “j o h n at gmail dot com” and long runs of spoken digits are recognised as well as john@gmail.com.

What patterns cannot catch
Automatic detection recognises data with a predictable shape. It cannot reliably recognise a name or a street address spoken in ordinary conversation, because those look like ordinary words. That is what the next section is for.

#Marking parameters sensitive

When your capability collects personal details, declare those parameters. They are replaced exactly, with no guessing and no dependence on how well the speech was transcribed:

typescript
ai.register({
fillContactForm: {
description: "Fill in the contact form.",
params: {
name: { type: "string", sensitive: true },
phone: { type: "string", sensitive: true },
topic: { type: "string" },
},
// Your handler still receives the real values.
handler: async ({ name, phone, topic }) =>
submitForm({ name, phone, topic }),
},
});

Your handler runs with the real values, so the form is filled correctly. Only what Voxide stores changes — the argument is recorded as "[redacted]". Requires @voxide/react 0.4.0 or later.

#What is unaffected

Redaction happens only at the point of storage. The live conversation is untouched: the model receives the real audio, your handlers receive the real arguments, and the visitor sees their own words echoed back normally in the widget. Nothing about the experience degrades.

#Reading transcripts afterwards

In the Conversations tab you will see placeholders like [phone] and [email] where personal data was. They are typed on purpose — you can still follow the shape of a conversation and debug it without the values themselves.

Your obligations
You are the data controller for conversations on your site. You are responsible for telling your visitors they are talking to an AI assistant and obtaining any consent the law requires. See the Voxide Privacy Policy for how the controller/processor split works.