Product Changelog
DatoCMS new features, improvements and significant news
DatoCMS now available in French!

Thanks to Quentin and Thomas DatoCMS now speaks French!

The list of supported languages keeps on getting bigger: now we have English, German, French, Italian and Czech!

If you want to help us make DatoCMS more friendly to users all over the globe, please get in touch with us... we offer nice discounts!

Copy modular content structure from another language

Editing complex multi-language content is much easier now!

When adding a new language to your record you will find a new button in your modular content field called "copy structure from ...". By hitting this button you will import the modular content skeleton from the first language -just the blocks, without the content-, saving you the time to recreate the exact structure!

Feedbacks and questions are welcome!

Customize webhooks HTTP body with Mustache templates

Integrating DatoCMS with third-party systems is now a lot easier, as you can now customize the HTTP body of the outgoing HTTP requests.

You can even use Mustache language to make the payload dynamic. As an example, this custom template:

{
  "message": "{{event_type}} event triggered on {{entity_type}}!",
  "entity_id": "{{#entity}}{{id}}{{/entity}}"
}

Will be converted into the following HTTP body:

{
  "message": "update event triggered on item!",
  "entity_id": "123213"
}

You are not limited to send JSON payloads: just make sure that if the payload is not in JSON format you configure the proper Content-Type header.

Read all the details in the updated documentation page.

Image validation for dimensions

Now you can specify the maximum and/or minimum dimensions of an image in both the "Single File" and "Multiple Files" fields.

Furthermore, you can now use the filesize validation option also in the "Multiple files" field.

Duplicate only models and fields

Until now, one could only duplicate a project in its entirety. Now you can clone all the models and fields of an existing project into a new one, without duplicating records and resources. Just make sure that the "Duplicate only models and fields" toggle-switch is On in the Duplicate Project window

More QoL improvements for your team

These days we have worked hard on a couple of exciting features that we will show you later this month. Our roadmap will give you a hint or two ;). Meanwhile, we have published three improvements that we are sure you will appreciate!

First of all, we have hidden some aspects of the deployment environment for users that do not have the role permission to build. For example, the "Publish Now" button and all deployment logs are hidden from those who can't use them.

The second update is about clarity: when you create a modular field with the requirement of only one, the button to add another is hidden for the person editing the content. This feature is present in both modular content and record links.

The third update is the more substantial one: DatoCMS now changes the orientation of the writing in the single line text and multi-line text when you are editing RTL languages in a multilingual field. Arabic, Chinese, and many more are now easier to manage!

Accounts and Users are now merged

Our long-term goal is to make DatoCMS a usable and intuitive product for everyone. For this reason, we decided to merge users and accounts into a single entity that manages all projects from the same space.

We noticed that the differences between users and accounts were creating unnecessary confusion offering very few benefits in return, especially to those who manage multiple projects with different teams.

The workflow will not change for those who are already working on DatoCMS, except for the convenience of a single password for everything, while those who are invited to a project for the first time will first have to register via the DatoCMS dashboard.

In case you have problems accessing a project on DatoCMS, follow the standard password recovery process, and set a new one.

Bulk delete, publish and unpublish records

Look, we've made another Quality of Life improvement to your records management on DatoCMS!

You can now select more than one record in a list and delete, publish or unpublish them in bulk.

As always, if you have questions, feedback, or recommendations for the next updates, drop us a line!

Introduced limit to GraphQL query complexity

To give a more predictable and consistent timing in our GraphQL responses we had to introduce a limit in the query complexity.

To each field required we attach a weight of 1. To fields that need additional queries under the hood, like links, rich_text fields and uploads we attach a weigth of 10.

We have currently limited the complexity to 550, which should be enough for most cases, but if you have any specific concern support@datocms.com is happy to help.

Improvements to Netlify, CircleCI and custom webhook integrations

Today we just released some new requested enhacements to our deployment adapters!

The most important one is related to Netlify: you can now specify the Git branch you want to build. This means you no longer have to create two different Netlify sites, one for production and one for staging.

Remember that you can add a netlify.toml file in your repository to customize the headers on a per-branch basis:

# Staging context: all deploys from the staging 
# branch will inherit these environment variables:

[context.staging.environment]
  SHOW_DRAFT_CONTENT = "true"

With CircleCI, you can now add custom environment variables to use to be available during the build:

And if you're using our custom webhook deployment method, you are now free to specify the exact headers and JSON payload to be sent: