Since more and more customers are using webhooks to connect with third-party services, we have received several requests that require us to implement changes potentially leading to a breaking change.
We added two new options to webhook deliveries:
Include non-filled fields in webhook response
Default: false
When this is enabled, non-filled fields are send with the webhook. By default, only filled fields are send.
Include file names of uploaded files
Default: true
When this is enabled, uploaded files are send like that:
filename-abc.pdf|https://userdata.deftform.com/full-path-to-file/filename-abc.pdf
So the original file name separated with a pipe |
and then the file url. It has been like that since we introduced webhooks. If you disable this option, only the file url will be send.
⚠️ Breaking change
Files are now send as arrays, not strings, even if only 1 file was uploaded.
Before the change, files would be added at the end of the payload. Files are now in line with the sorting of the form fields. To prevent "artificially" adding more fields if multiple files were uploaded, the new data array looks like this:
"data": [ [ { "label": "Full name", "response": "John Doe" }, { "label": "Email address", "response": "john@example.com" }, { "label": "CV", "response": [ "filename-abc.pdf|https://userdata.deftform.com/full-path-to-file/filename-abc.pdf" ] } ]]
If you are actively using this in a third-party platform like Zapier or Make, please make sure to update your integration.