Deftform Changelog

Subscribe to updates
© 2025 Deftform Changelog

Breaking change

May 12, 2025

Today we released a mostly bugfix related update. But we also added a new feature and improvements.

Passkeys

It is now possible to login via a Passkey. Passkeys allow password-less login by generating a secure key stored in apps like 1Password, macOS password manager, an external security key, and more.

To enable Passkey access, head over to your account settings and enable Passkey login.

Enable option for embedded forms

It is now possible to manually initialize and re-initialize embedded forms. You can read more about this in the dedicated help article.

Bug fixes and improvements 

A couple of bugs have been fixed. Some notable ones are:

  • We fixed an issue that occurred when multiple Stripe price IDs are added and one or more needed to be removed.
  • We also fixed 3 issues related to the AI Assistant where it sometimes got stuck, or threw an error 500.
  • We also made sure that when using Google Sheets, the created at date is in the same timezone that is specified in the workspace settings.

⚠️ Google Sheets location update (possible breaking change)

If you enabled the "Capture location" in the form settings, previously, this information was not added to Google Sheets. We now send these values (City and Country) as well.

But that will likely break existing Sheets because the sorting is now incorrect. If you experience issues, please clear (not delete) your Sheet and run the bulk import once.

We also made some smaller UI and UX improvements that you may or may not notice.

Jan 16, 2025

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.

New options for webhooks

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.