6. Voorbeeld form options JSON
{
"submitMode": "both",
"targetDataSourceUids": ["customer_search"],
"buttonLabel": "Zoeken",
"buttonIcon": "pi pi-search",
"buttonSeverity": "primary",
"clearAfterSubmit": false,
"fields": [
{
"key": "customerId",
"label": "Klantnummer",
"type": "text",
"required": true,
"width": "half"
},
{
"key": "status",
"label": "Status",
"type": "multiselect",
"width": "half",
"visibleWhen": [
{ "fieldKey": "includeInactive", "operator": "truthy" }
],
"clearOnParentChange": true,
"optionsSource": "static",
"options": [
{ "label": "Actief", "value": "active" },
{ "label": "Inactief", "value": "inactive" }
]
},
{
"key": "country",
"label": "Land",
"type": "dropdown",
"width": "third",
"optionsSource": "datasource",
"optionsDataSourceUid": "country_options",
"optionsValueField": "code",
"optionsLabelField": "name",
"optionsFilter": { "enabled": true },
"optionFilterBindings": [
{ "sourceFieldKey": "customerId", "targetFilterKey": "customerId" }
]
},
{
"key": "includeInactive",
"label": "Inclusief inactief",
"type": "toggle",
"width": "third"
},
{
"key": "notes",
"label": "Opmerking",
"type": "textarea",
"width": "full",
"placeholder": "Optionele context voor de webhook"
},
{
"key": "rules",
"label": "Business rules",
"type": "repeater",
"width": "full",
"requestOnly": true,
"addRowLabel": "Regel toevoegen",
"emptyStateText": "Nog geen regels toegevoegd.",
"rowFields": [
{
"key": "field",
"label": "Veld",
"type": "text",
"width": "third"
},
{
"key": "operator",
"label": "Operator",
"type": "dropdown",
"width": "third",
"optionsSource": "static",
"options": [
{ "label": "Is gelijk aan", "value": "equals" },
{ "label": "Is niet gelijk aan", "value": "notEquals" }
]
},
{
"key": "value",
"label": "Waarde",
"type": "text",
"width": "third"
}
]
}
],
"webhookId": "audit_customer_search",
"url": "https://api.example.com/audit",
"method": "POST",
"headers": [
{ "key": "X-Flow", "value": "customer-search" }
],
"refreshAfterRun": true
}