Top-level fields
string
Interview identifier.
string
Event type. For interview responses it’s always
form_response.string
Response identifier.
object
The full payload: interview definition, answers and metadata.
Data model (TypeScript)
WebhookPayload and FormResponse
WebhookPayload and FormResponse
FormDefinition and FieldDefinition
FormDefinition and FieldDefinition
FieldType, ChoiceDefinition and Variable
FieldType, ChoiceDefinition and Variable
Supported answer types
Every answer contains afield object (id, type, ref) that links it back to the interview definition.
Answer structure
Thetype field of each item in answers determines which property holds the value.
Text, boolean and number
Text, boolean and number
Single choice and multiple choices
Single choice and multiple choices
Hidden variables
Exoid captures the parameters passed in the interview URL (e.g.?user_id=123) and reports them in the payload under variables.
Full payload example
The interview in this example includes swipe, short text, opinion scale, yes/no, multiple choice and a hidden variable.Key points
- All answers live in
answers[], each linked to itsfield. - Swipe returns
type: "choices"withlabelsandids. - Multiple choices return arrays in
choices.labelsandchoices.ids. - Boolean returns a
booleanproperty. - Opinion scale and the other numeric questions use
type: "number". - Text returns a
textproperty. - Variables capture parameters passed via URL (e.g.
user_id).
Next steps
Signature and security
Verify the
X-Signature header before processing the payload.How they work
Delivery flow, retries and permanent error codes.

