Skip to main content
Updated in 2026.8
Question Node configuration panel

Description

A Question Node is used to ask a question that requests specific information from the user. When the Node is triggered, the Entrypoint shifts to this Node so that the conversation continues only after the user answers. Also, a new Input object is generated. When a user input is received, it’s scored based on natural language understanding (NLU). If an attached Flow has an Intent that scores higher than Intents in the current Flow, the attached Flow is executed. The Intent scoring occurs before validation of the Question Node is completed. After the AI Agent asks a question and the user answers, the answer is validated according to its type. If it passes, the answer is valid and stored, and the conversation continues.
Question Nodes, by default, are triggered repeatedly until a valid answer is provided. To avoid this behavior, you can use an Optional Question or change the Intent Execution setting.

Parameters

Question Nodes have a selection of types that determine the validation used before a conversation continues.
All data formats supported by the Cognigy NLU for system slot mapping are listed on the Slot Mapping page.
Question Node output types carry the same functionality as the Say Node.
If you select the Date as a Question Type, the Question Node automatically renders a datepicker if the channel supports it. Refer to Datepicker for more information.
This section appears if you’ve selected the LLM-extracted Entity question type.Before using this Question type, set the LLM provider in the Settings. You can configure the Node to either use the default model defined in the Settings or choose a specific configured LLM.Alternatively, you can add input examples in the Use JSON Editor code field. For example:
Reprompt messages are automatically triggered if the question is not answered correctly, such as when the expected type of input is not provided or a validation does not return true.Reprompt Methods
Outputs a simple text message to the user.
Question results are always stored in input.result.If Store Result in Context is enabled, the Question Result is also stored in the Context object.If Store Result to Contact Profile is enabled, the Question Result is also stored in the Profile object.
Allows the conversation to break out of the Question Node if a specified Intent was found.
Allows the conversation to break out of the Question Node after a number of incorrect answers were provided.
Allows for answers to be reconfirmed before continuing. This is especially useful when using voice agents and reconfirming what the agent understood (for example, in Number questions when the user said “my number is three double five triple nine five six eight”). The answer given to the reconfirmation question has to be a yes/no style answer and follows the same rules as a Yes/No Question.Reconfirmation Questions can contain a specific token ANSWER, which is replaced with a short form version of the given answer (for example, “3 EUR” in a Money question). The short form answer is taken from input.activeQuestion.tentativeShortFormAnswer;Reconfirmation Questions can have a specific re-prompt set, which is output before the question if the answer to the question is not of yes/no style.
Store detailed ResultsThis setting, when enabled, stores a more detailed JSON object under the result property of the input. This is useful in case more information is needed.Skip if Answer in InputWhen enabled, this setting skips the Question if the answer is already provided in the input text.Additional ValidationA CognigyScript condition that validates the answer. The answer is considered valid only if the condition returns true. For example, if you enter input.slots.EMAIL[0].endsWith("cognigy.com") in this parameter for an email question type, only email addresses ending with cognigy.com pass the validation.Result LocationBy default, when the Question Node recognizes the user’s answer, the Node stores the answer under result in the Input object. The Result Location parameter lets you replace the recognized answer with a value from another JSON path, for example, input.bookingReference. The Result Location parameter only works if the user’s answer is recognized and if the path you set is valid. If the path is invalid, the original answer isn’t recognized, and the user is reprompted.
If you use both the Result Location parameter and the Additional Validation parameter at the same time, the Additional Validation parameter checks only the user answer, not the value in the JSON path set in the Result Location parameter.
Forget Question ThresholdThis setting determines how long a user can have been “away” from the Node after the question was initially asked. With the default setting 1 this means that the question has to be answered on the next user input. If a user input comes back to the question at a later stage, it is treated as if the question was hit for the first time and the question is asked.
To use AI-enhanced output rephrasing, read the Generative AI article.
You can use various functions of the Text Cleaner class to preprocess the answer to a question before it is evaluated. This can be helpful, for example, when requesting a name using a text type question or when asking for a part number using a slot question.In addition to the Text Cleaner functions, users have the option to rerun NLU after the cleaning process. This approach allows for tasks such as re-detecting slots or properly filling any remaining slots.

Exclude from Transcript

Excludes the Node output from the conversation transcript. The output remains visible to the end user but isn’t stored in the transcript object or shared with the LLM provider. You can use this parameter to:
  • Hide sensitive or irrelevant data, such as legal disclaimers, so the model doesn’t see or repeat them.
  • Prevent the model from copying patterns (called in-context learning) you didn’t want it to learn.
By default, the model repeats the question style it learned from the AI Agent’s earlier question, even though the end user asked for an answer, not a question.
By excluding the AI Agent’s earlier question from the transcript, the same conversation looks like this:
Use this parameter to maintain confidentiality, for example, prevent sensitive data from reaching the LLM, or to display messages such as legal disclaimers or system notes that shouldn’t affect the AI Agent’s behavior.

Question Information in Input

When a question is active, meaning that the AI Agent is waiting for the answer, information regarding the question is added to the Input object.
This information can be used to trigger specific actions on escalation or to jump back to the Question Node after an escalation.
Questions can be combined with Slot Fillers to create a “Missing Pattern”. This mechanism keeps asking the user for the missing information in a very natural way, until all questions have been answered.

1: Note that not all LLM models support streaming.
Last modified on June 15, 2026