Questionnaire Data
Provide insurer questionnaire answers to improve scan accuracy and personalise the risk assessment.
What is questionnaire data?
When underwriters assess a risk, they often have additional information from the insured company that is not available in public sources: answers to application questions, self-reported technical details, or specific coverage disclosures. This information can significantly improve the accuracy of the AI risk assessment.
The Exona API accepts an optional questionnaire field in POST /v1/scans: a list of question-and-answer pairs that are fed into the enrichment and risk assessment pipeline alongside publicly gathered data.
Adding questionnaire data
How questionnaire data is used
Questionnaire answers are treated as first-party evidence. They are:
- Fed into enrichment: answers can confirm, correct, or extend what public research finds. For example, if public sources are ambiguous about the level of AI autonomy, a direct answer resolves that ambiguity.
- Cited in risk assessment rationale: when the AI generates risk score motivations, it can cite questionnaire answers as evidence alongside web sources. This makes the rationale fully auditable.
- Not used to override risk scores: questionnaire answers influence the assessment but do not mechanically override scores. The AI model weighs all evidence together.
Format
The questionnaire field is an array of objects, each with a question (string) and an answer (string). Both fields are required if the object is included.
| Field | Type | Required | Description |
|---|---|---|---|
question | string | Yes | The question text, as asked to the insured. |
answer | string | Yes | The insured's answer. Can be free-form text of any length. |
There is no fixed list of questions: you can pass any questions from your application form. Exona handles the interpretation.
Limits
| Limit | Value |
|---|---|
| Maximum questions per scan | 50 |
| Maximum answer length | 5,000 characters |
| Maximum total questionnaire size | 20,000 characters |
Requests exceeding these limits return a 400 error with code QUESTIONNAIRE_TOO_LARGE.
Questionnaire data and caching
When questionnaire data is present, the scan cache (max_age_days) is bypassed. A cached scan may have been generated with different questionnaire answers: or none at all: so it is not considered a valid match.
If you want to avoid re-running scans for the same company across multiple sessions, store the scan ID on your side and retrieve it with GET /v1/scans/{id} directly.