| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Conditional questions
Retrieve follow-up questions with GET /api/v1/questions?include=conditional_questions. The parent's relationships.conditional_questions.data references child resources in included (also type questions).
When to show a child
Each child's attributes.conditional identifies its parent, display order (position), and condition:
{
"parent_question_id": "123",
"position": 1,
"conditions": [{ "operator": "equals", "value": "true" }]
}Show this child when parent 123 is answered Yes. conditional: null means the question is not a conditional child. Evaluate conditions[0] against the parent's answer.
| Parent type | Operators | Value to compare |
|---|---|---|
boolean | equals, not_equals | "true" / "false" |
short_text, long_text | equals, not_equals, contains, not_contains | Case-sensitive text |
url | equals, not_equals | Case-sensitive URL text |
multiple_choice | equals, not_equals | Option text, not ID; membership for multi-select |
number, date | equals, not_equals, greater_than, less_than | Parsed number or date |
document, multi_document | equals, not_equals | "true" means a file is attached |
Values are returned as stored. Dates may use non-ISO formats; translated options use canonical English text. date_range has no supported conditions.
Submit answers
Use Create Answer with the child's own ID in data.relationships.question.data.id, the appropriate answer field, and the application's answerable relationship. Do not send conditional metadata.
For example, after answering Yes to parent 123, submit a text answer to child 124 for application 456 (example IDs):
POST /api/v1/answers{
"data": {
"type": "answers",
"attributes": {
"text_answer": "I require visa sponsorship."
},
"relationships": {
"question": { "data": { "type": "questions", "id": "124" } },
"answerable": { "data": { "type": "applications", "id": "456" } }
}
}
}Your integration controls visibility and collects required answers for visible children. The API does not enforce these conditional rules: omit answers to hidden children.
