What an agent reads, writes and protects while a conversation runs, one section per term.
The knowledge base
Knowledge base
The retrieval corpus. Documents the agent searches to ground an answer. Two words, never one. Every environment shares one knowledge base but decides which documents it includes.
Also asked as:
- the documents the assistant answers from
- upload our help articles so the bot can use them
- ground replies in our own content
Related: Data source · Document · Knowledge base tool · RAG
Documented in: Querying the knowledge base · Importing data sources › Knowledge base and environments
Data source
Where knowledge base content comes from: a file, a URL, or a synced integration. Web pages, sitemaps, uploaded files and integrations such as Zendesk Help Center or Shopify products are all data sources.
Also asked as:
- import a website into the knowledge base
- add PDFs for the assistant to read
- crawl our help center
Related: Knowledge base · Refresh rate · Metadata
Documented in: Importing data sources › Adding a data source · Importing data sources › Data types · Importing data sources › Troubleshooting imports · Shopify tool › Importing Shopify products into your Knowledge Base · Zendesk tool › Syncing Zendesk Help Center with your Knowledge Base
Document
One source inside the knowledge base: a file, a page, or a synced record. Retrieval returns passages from documents, not whole documents.
Also asked as:
- one item in the knowledge base
- the unit the bot searches over
- a single file or page in the knowledge base
- delete or replace one uploaded item
Related: Data source · Chunk
Documented in: Importing data sources › Data types · Importing data sources › Developers
Refresh rate
How often a URL or integration data source is re-synced into the knowledge base, set on import or afterwards.
Also asked as:
- keep the imported pages in sync with our site
- re-crawl a URL on a schedule
- the knowledge base copy of our site is out of date
- our crawled pages are stale after the site changed
- re-sync pages pulled in from a URL
- content we crawled has changed on the source site
Related: Data source
Documented in: Importing data sources › Refresh rate
Chunking strategy
How a document is split into the passages retrieval returns. LLM chunking strategies use a model to split content along its meaning rather than at fixed lengths.
Also asked as:
- the bot returns half a paragraph
- split documents more sensibly for search
- passages cut in the wrong place
Related: Chunk · Knowledge base tool
Documented in: Importing data sources › LLM chunking strategies
Metadata
Tags attached to a data source so the knowledge base tool can filter what is returned — by brand, product line, locale or support tier.
Also asked as:
- only search the documents for one product line
- tag content by region or language
- filter which sources a question is answered from
Related: Data source · Knowledge base tool
Documented in: Importing data sources › Metadata · Querying the knowledge base › Meta data filtering
Custom query
Overriding the knowledge base tool’s default search text (the user’s last message) with a specific variable or phrase; query re-writing lets the model rephrase the message before searching.
Also asked as:
- search the knowledge base on something other than what the user typed
- rewrite vague questions before retrieval
- the bot searches with the wrong phrasing
Related: Knowledge base tool
Documented in: Querying the knowledge base › Custom query · Querying the knowledge base › Query re-writing
Chunk limit
How many content chunks the knowledge base tool returns per query (1–10, default 3). More chunks give more context but add latency and token usage.
Also asked as:
- return more passages per question
- the assistant only sees part of the answer
- how many snippets the bot reads per question
- give the assistant more context per query
Related: Chunk · Knowledge base tool
Documented in: Querying the knowledge base › Chunk limit
Source URLs
A chat-project option that makes the agent include the source URL alongside its reply so users can verify or read more. Tool messages, similarly, script what the user sees while the search runs.
Also asked as:
- show a link to where the answer came from
- cite the page behind a reply
- a “searching…” message while the bot looks things up
Related: Knowledge base tool
Documented in: Querying the knowledge base › Show source URL(s) · Querying the knowledge base › Tool messages
Data
Variable
A named slot of project state an agent reads and writes during a conversation. Inserted anywhere by
typing {, and set by the Set step, the Code step, tool responses or the widget.
Also asked as:
- store what the customer told us for later
- pass a value between steps
- a field the assistant fills in during the chat
Related: Built-in variables · Persistent variable · Secret · Set step
Documented in: Variables › Creating variables · Variables › Using variables · Variables › Setting variable values
Persistent variable
A variable whose value carries over across sessions for the same user, chosen per variable when it is created or edited.
Also asked as:
- remember a detail about a customer between visits
- keep a value from one chat to the next without asking again
- data that survives the end of a session
- remember something about a customer across separate chats
- don’t ask for the same detail again next time
Related: Variable · User ID · Chat persistence
Documented in: Variables › Persisting variables across sessions
Built-in variables
Variables every project has, set automatically when a conversation begins or an event occurs:
user_id, vf_memory, vf_now, last_event and others.
Also asked as:
- the system variables I can read
- get the current date inside the agent
- which values Voiceflow fills in for me
Related: Variable · User ID · Timezone
Documented in: Variables › Built-in variables
Secret
A credential stored for the agent to use without exposing it in a prompt or a function. Created on
the Secrets page with a name, a value and a visibility (masked or restricted), and inserted from the
Secrets tab of the { menu. The name is shared across the project; each environment holds its own
value.
Also asked as:
- store an API key securely for the assistant to use
- keep a password out of the prompt
- reference a credential in a request header
Related: Secrets across environments · API tool · Variable
Documented in: Secrets › Creating secrets · Secrets › Using secrets · Secrets › Security
Secrets across environments
A secret’s name is shared across the project, but each environment holds its own values: a default value its published version uses, and an optional draft value its draft version uses instead. Nothing fills in a value an environment doesn’t have; a missing value is sent as the placeholder text. A merge leaves Main’s values alone unless you choose to override them; duplicating a project copies Main’s values within the workspace; exporting copies names only.
Also asked as:
- one credential name with a different value for staging and production
- use a sandbox key while testing without changing the live key
- why does my secret say missing value in another environment
- the secret values disappeared after I exported the project
- a credential that differs per environment under one name
Related: Secret · Environment · Merging
Documented in: Secrets › Secrets in each environment · Secrets › Testing with a non-production credential · Secrets › Merging to Main · Secrets › Duplicating and exporting projects
Persona
A saved set of traits used to simulate a particular kind of user when testing. Personas are scoped to the environment they were created in.
Also asked as:
- test the assistant as a specific kind of customer
- role-play a difficult caller when trying the agent
- pretend to be a certain type of user
- act like an impatient customer when testing the agent
- simulate a specific type of user in a test
- try the bot as if I were a difficult caller
Related: Test · Environment
Documented in: Personas · Personas › Personas and environments
Privacy
PII redaction
Stripping personal data from what gets stored. A model hosted inside Voiceflow’s infrastructure detects personal information in both the agent’s responses and the user’s inputs; production conversations are redacted, development ones are not.
Also asked as:
- mask phone numbers and emails in transcripts
- are customer details stored in plain text
- strip personal data before it is saved
- are phone numbers and emails stored in plain text in transcripts
- hide personal details from the conversation logs
Related: Detected PII types · Protection methods · Transcript · Protecting sensitive data
Documented in: PII redaction › How it works · PII redaction › Enabling PII redaction · PII redaction › Limitations · PII redaction › Viewing unredacted transcripts
Detected PII types
The more than 35 kinds of personal information redaction detects: identity (names, date of birth, age), contact details, financial and account numbers, and more.
Also asked as:
- which sensitive fields get masked
- does redaction catch credit card numbers
- what counts as personal data
Related: PII redaction · Protection methods
Documented in: PII redaction › Detected PII types · PII redaction › What gets redacted
Protection methods
The four ways redaction handles content: censor (replace with a marker like [NAME]), erase, override
and rich-text censoring, chosen by the type of content.
Also asked as:
- what replaces the redacted text
- markers like NAME or EMAIL in transcripts
- how redacted names and numbers appear in transcripts
- censor versus erase in redaction
Related: PII redaction · Detected PII types
Documented in: PII redaction › Protection methods · PII redaction › Redaction examples