retry_config.
retry_config fields
boolean
default:"true"
Set to
false to move on immediately after the first unanswered attempt, without re-asking. All other retry_config fields are ignored when this is false.boolean
default:"false"
When
true, the agent re-asks the question indefinitely until it receives a valid answer. The max_retries value is ignored. Use with caution — callers can get stuck if they genuinely cannot provide the answer.integer
default:"2"
The number of additional attempts after the first. A value of
2 means the agent asks the question up to three times total (one initial attempt plus two retries).array of strings
Custom messages the agent uses for each re-ask. The first string is used on the first retry, the second on the second retry, and so on. If the list is shorter than
max_retries or is omitted entirely, the agent falls back to the original question script for any retry that lacks a custom message."skip" | "end_call"
default:"\"skip\""
What to do when all retries have been used on an optional question. Has no effect on required questions — those always end the call when retries are exhausted. See below for the full breakdown.
What happens when retries are exhausted
The outcome depends on whether the question is required and whatexhausted_action is set to:
Required question, retries exhausted
The call ends immediately. The conversation status is set to failed. The form_data entry for the question is null.
Optional question, exhausted_action: "skip" (default)
The answer is stored as null. The form_status for the question is set to "skipped". The call continues to the next question.
Optional question, exhausted_action: "end_call"
The call ends. The conversation status is failed — unless the answer that triggered the end matched a value in the question’s end_call_values list, in which case the status is screened_out.