Deftform Changelog

Subscribe to updates
© 2025 Deftform Changelog
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.

Dec 19, 2024

We were made aware of an issue with our Google Sheets integration that we have now fixed.

On December 11, our underlying OAuth library got updated and introduced a change that broke our integration. The updated library did not mention any breaking changes and we're currently in contact with the developers of the library to check if we missed something.

As a consequence, older responses may not have synced to existing sheets and new connections could not be added. After we deployed the fix, earlier submissions should have been added to existing sheets as they were still in a "pending" state.

To make sure sheets are up-to-date, we suggest to manually clear the sheet (= delete all data in the sheet) and use our bulk sync function to import all submissions. Alternatively, you may delete the connection in the form and add a new one and then bulk sync the submissions.

But if your responses count is already the same as the rows in your sheet (minus the heading), there is nothing for you to manually sync.

We now have added dedicated error logs to the Google Sheets integration so in case something like that happens again, we'll be notified right away.

We're sorry for the inconvenience.

Just in case...
Dec 14, 2024

We just released early access to our API, added an option to enable a time picker, and fixed various, smaller bugs.

API in public beta

Our API is now available and should be considered public beta. Not all planned endpoints are available yet, and there is no official documentation yet. Nonetheless, feel free to head over to the new API settings to see how to get started.

Time picker option for date picker field

We added an option to enable a time picker if a form has a date picker field. This has been requested quite a few times, and we're happy to finally offer this option.

As noted in a recent update, you can change the locale of your workspace, which will change the language of the date picker, and it will now also take the time picker into effect. If you select "English US", you will have AM and PM in the 12h format; if you selected German, you will have 24h format. 

Fixes

We also fixed a handful of smaller issues and improved the field validations a little.

Dec 10, 2024

For those who need additional and extended features, we're happy to introduce our Business add-on.

This add-on allows you to enable data enrichment, which is best suited for B2B contacts. Only collect the email address and automatically gather additional data such as full name, social accounts, photo, phone numbers and various company details.

We also automatically check the validity of the email address that was entered by the user. So you can be sure that you received a valid email address.

Other features include a custom workspace logo in the backend, the ability to sell multiple products via Stripe, removal of the Deftform backlink, removal of the "Report form" badge, disabling of the 2-minute limit, and custom SMTP service integration (also available as a separate add-on).

The Business add-on is a monthly subscription and can be purchased via the Access / Billing section when logged in.

Dec 08, 2024

Today we shipped our first, basic version of conditional logic, made improvements to the date picker, and also added an option to password-protect a form.

Conditional logic - show / hide fields

The first version of conditional logic is now available. You can show/hide fields based on the selection a respondent makes. Supported trigger fields are Rating, Single Select, and Dropdown. Supported fields will probably be extended in a future update. Currently, only the Rating field supports operators other than "is equal".

This functionality will also be extended in the future.

Show comment field if rating is below a certain threshold

Improved date picker

We also made a few improvements to the date picker. First off, we changed the appearance, making it easier to click dates and select the year. You can now also change the locale of the date picker. It previously used US English by default, with Sunday as the first day of the week.

You can change the locale in the workspace settings (it's a global setting for all date pickers in that workspace). We currently support 28 languages. If you are missing one, feel free to get in touch.

Password-protected forms

And last but not least, you can now set a password that has to be entered when viewing a form. You can find the option for this in the form settings.


We also fixed a handful of bugs and made some subtle changes across the backend area.

Nov 28, 2024

Today we shipped improvements for form embeds and also extended the possibility for field parameters.

Embed improvements

Since more and more of our customers embed their forms into their websites, some noted (ahem.. complained) that there is an issue with longer forms. After submitting, the height of the form would stay the same even though it should be smaller since only the "Thank you" message appears.

Another thing was that the thank you message was not always visible / in the viewport. Again, this mostly affected longer forms.

Both of these things are now corrected. After submitting an embedded form, the height is reduced to the actual, new height and we also make sure that the thank you message is visible.

Dynamic parameters for email subject and email text

This has been requested a few times in the past, and we're happy to report that this is now possible. You can now use field parameters in the email subject, email message and thank you message.

You can read more about this addition here.

Nov 28, 2024

We were made aware of an issue regarding our Google Sheets integration. It was not possible to create a new connection on a workspace level because the connection was always assigned to the user who connected the Google account. This was not necessary the workspace admin and that was causing issues when trying to create a new connection in a different workspace (by the same Deftform account).

So the fix basically means that connections to Google accounts are now assigned to the actual workspace, not a single user account.

We created a migration script to create missing integrations for existing workspaces. Everything was working fine for our test accounts and syncs continued to work.

If, however, you run into issues, please remove the connection and create a new one. It should not be necessary though, but just in case. After that, simply run a one-time bulk import to re-sync all data.

Nov 19, 2024

When we introduced the option to send emails via a custom SMTP server, a small bug slipped through that affected all emails – not just the ones sent via a custom SMTP server. Whoops.

First off, only emails to admins were affected by this issue, and it only occurred if more than one email address was specified. For example, if you added admin1@example.com and admin2@example.com, both would receive 2 emails when a new response came in with both of them as receivers.

That issue is now fixed. Every admin only receives one email per submission now, just as intended. Thanks for reporting and sorry for the inconvenience.

Nov 15, 2024

Although we planned this feature for the upcoming 'Business' add-on, many customers have expressed interest in sending emails from their own address independently of the add-on.

So we made this a separate add-on which is not a subscription (the "Business" plan will be), but can be unlocked via a one-time payment. Head over to the new "Custom SMTP / Email" settings to enter your custom SMTP credentials.

After confirming them, emails are automatically sent from your email address.

Nov 09, 2024

Today's update includes 4 things that have been requested a few times in the past weeks, so we moved them up in our backlog.

Close forms

It is now possible to close forms. This can be done manually, or you can set a date on which the form should be closed. You can also use a custom text that is shown when the form is closed. Head over to the form settings and scroll down in the "General" section until you see the "Access" area.

Completion date in CSV exports and Google Sheets

We also added the date a form was submitted to the CSV exports and also to the Google Sheets sync. As for the Google Sheets sync, if you want to add those dates for existing entries / rows, we'd suggest truncating the sheet doing a manual bulk import.

Custom text for 2 minute limit

As you may know, we have a 2-minute restriction when it comes to submitting forms. You can now use your own text that is shown when a visitor tries to submit the same form multiple times. This can be changed in the global workspace settings.

PDF export with paragraph element

And last but not least... we added a checkbox to the "Paragraph / Text" element that allows you to include the text to be visible on PDF exports. So when creating or editing such a field, look for the "Include in PDF export" toggle.

Oct 26, 2024

It is now possible to add additional validation options to fields. We added 22 different options, including min, max, regex, IBAN, email, starts with, ends with, URL and more.

The validation options can be found when creating or editing form fields. Check the new "Validation" section. We also moved the required checkbox there.

Oct 19, 2024

Custom slugs

Due to popular demand, it is now possible to visit forms via a custom slug. When creating a form, a default slug is generated based on the name of the form. You are free to change the slug to anything you like.

6-digit code is part of the slug and cannot be removed

Two new width options

We also added two new options for the width of a form field. You may now set the width of either 25% or 75% for a form field. Other, unchanged options are 33%, 50%, 66% and 100%.

Field duplication sorting

When duplicating a form field, the duplicate is now created right below the original. Before the change, the duplicated form field would be added to the end of the form. Some of you suggested it would be better if it was closer to the original, so there you go.

Bug fixes

We also fixed a couple of smaller bugs and UI glitches.