What leaves Zentiq
An admin sees everything in the Zentiq console. What leaves Zentiq, through the API or a webhook, follows stricter rules, the same for every key, contract and plan. They are built into Zentiq itself: no setting turns them off, and a field the rules hold back is sent as null (or left out), never with other words in it. Zero data retention on Zentiq's platform is coming soon.
The kinds of data#
| Kind | For example | The API (you ask) | Webhooks (Zentiq tells you) |
|---|---|---|---|
| Structure | ids, statuses, times, counts, versions, reason codes | Yes | Yes |
| Your own content | personas, knowledge, subject content, settings | Yes, with the resource's scope | Short names only (a subject's or a unit's name), never the content |
| People's details | names and emails of members, learners and candidates; visitors' contact details | Yes, with people:read, candidates:read or inbox:read | Only a website visitor's contact details, only on lead.captured, booking.requested and handoff.requested, only what they gave with consent |
| Conversation words | transcripts, summaries, report feedback, a visitor's own words | Only with transcripts:read, and only where the words may leave (below); a candidate's interview only with candidates:interviews (below) | Only to a webhook made with includeConversation, and only where the words may leave; never a candidate's |
| Judgements about people | safety flags, admins' notes, integrity checks, a reviewer's notes | Never (a candidate's interview says how many integrity moments and flags there were, never what they say) | Never |
| Evaluations | scores, percent, pass, band, rank | Released results only, with results:read; a candidate's score only where the role shares it, with candidates:read | Released results' numbers on results events; never a candidate's score, band or rank |
Words that never leave#
Whatever the key, the scope or the webhook, the conversation's words never leave Zentiq for:
- a young learner (under the school's consent age):
403 learner_conversation; - any job interview read as a session:
403 candidate_interview; candidates' events carry ids and statuses only; - a session with a safety flag, a practice attempt, a result held for review or voided, a builder's preview, and a subject set to keep nothing.
A candidate's interview, for your hiring system#
A candidate's interview (their answers, the transcript, the written summary and, where the role shares scores, the marks) is given out in one way only: GET /v1/candidates/{id}/interview and GET /v1/roles/{id}/interviews, with a key holding candidates:interviews. Only an owner or admin puts that scope on a key, in the console; a key never passes it on, full access never includes it, and no app or assistant connected to Zentiq ever holds it. Every read is logged on the candidate, where the hiring team sees it. A candidate under 18, a practice or mock interview and a builder's preview are never served; reviewers' notes, integrity details and recordings never leave. See Interviews in your hiring system.
Never sent at all#
- Safety flags, not even as an id. When something needs a person, the organisation's own people are told in the console and by email.
- A practice attempt's outcome: it belongs to the person.
- A candidate's score, band, rank, answers, transcript, notes or recording, by any webhook.
- The name of any technology Zentiq runs on: not in an answer, an error, a header or an event.
includeConversation#
A webhook made with includeConversation: true also receives the words that may leave: transcript.final (each turn of a session your app started through the API), summaries on session.ended and report.produced, a report's feedback lines, a website visitor's own words on leads, bookings and hand-offs, a rating's comment, knowledge.gap's questions and case_link.opened's case summary (read from the conversation while it lasts, never for a visitor who may be under 18). Only a key holding transcripts:read can turn it on, and every change is recorded in the organisation's activity log. It is off by default.
Zero data retention#
Coming soon. Zentiq's own platform part is built; zero retention with the AI and voice services that run a live conversation is being set up. When it's ready, Zentiq switches it on for an Enterprise organization on request, once Zentiq has confirmed what each service keeps. It is off by default, and an organization can't switch it on itself.
What it doesn't cover yet: the AI and voice services that run a live conversation, which may keep its words for a time under their own terms and logs, and Zentiq's database backups, which keep erased words until they roll over.
While it is on, on Zentiq's platform:
- A conversation's words are held only while it runs. Its transcript and captions, summaries, report feedback and quotes, a visitor's own words on a request, the questions the assistant couldn't answer, a rating's comment, what a trainee typed to set up their own scenario, case-link and chat hand-over details, and recordings of voice or camera are used while the conversation runs and erased from Zentiq's records when it ends: as soon as its end has been processed (its report, a hand-off or a booking request), and within an hour at the latest when a conversation was cut off.
- A session keeps only what billing, security, service quality and the law need: its times, length, minutes, portal and outcome (a result as numbers, whether a visitor was helped, handed to a person, booked or left their details, and the kind of any safety concern), and how long the avatar took to answer each turn, where that's measured. No words.
- The API and webhooks carry no words.
GET /v1/sessions/{id}/transcriptanswers{ turns: [], kept: false }for every session of the organization, while it runs too; summaries and report feedback arenull;GET /v1/eventsand every webhook delivery leave conversation words out; andtranscript.finalis never sent.includeConversation: trueis refused (409 conflict,details.reason: "zero_retention"), and switching zero data retention on turns the option off on every webhook. - Features that need kept words switch off: a learner's replay of past sessions, the tutor's or coach's notes between sessions (skill levels and streaks stay), the words a learner knows in the language tutor (their level stays), turning website conversations into staff training, quotes in the daily brief, and recordings. A scored test that was interrupted starts again instead of carrying on.
- Job interviews can't run. A hiring team needs the transcript or recording to review a candidate, and hiring law asks employers to keep candidates' records (a year in the US, and longer in some states), so zero data retention can't be switched on while a role takes interviews, and interview links and invitations stay closed while it is on.
It doesn't change your own content (personas, knowledge, subjects), people's accounts, the contact details a visitor gave with their consent for a callback or a booking, results as numbers, or billing records. Conversations that ended before it was switched on keep what your settings kept then. A visitor's own copy of the conversation, which their browser makes on the thank-you screen, is theirs.
Consent#
- Faces and voices of real people are made only with their consent, recorded with who gave it and when.
- Young learners join only after consent is recorded, by the school or a guardian as the organisation decided:
POST /v1/memberships/{id}/guardian-consentrecords it (consent.recordedgoes out, without any address). - Website visitors give their contact details for a purpose they agree to (
consent.purpose), and can ask Zentiq to forget them:visitor.detail_removedtells your systems which fields to delete.