Partners

Product Updates

DatoCMS changelog for new features and general improvements
Content Delivery APIβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€Œβ€‹ο»Ώβ€Œο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Fetch all the language values for a field in a single callβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
August 28th, 2018

As requested on Slack, we just introduced a new way to fetch content on our GraphQL Content Delivery API.β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

If you want to get the value of a field in every language, you can now use the _all<FieldName>Locales field:

query {
allBlogPosts {
_allTitleLocales {
locale
value
}
}
}
Content Management APIβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€Œβ€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Records creation just became up to 10x fasterβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
August 24th, 2018

We're happy to announce that we just shipped some massive performance optimizations in DatoCMS.β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

If you had projects with lots of languages/modular content blocks, common operations like create/update or publish records could become pretty slow (up to 20 seconds on some edge cases).

We heavily optimized our DB queries, reducing the global execution time by an order of magnitude. Even on extreme scenarios, creating/updating a record should now take not more than 2 seconds.

Happy weekend everyone!

Newβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Update media in placeβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
August 17th, 2018

If you need to update/revise some image or media, up until now you needed to upload a new file, hunt down any references to the old media and point them to the new media, then delete the old media. Extremely inefficient and time consuming.β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

Now you can simply update existing media, retaining all metadata, URL and of course record references:

Newβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Region-specific language codesβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
August 9th, 2018

We just added the ability to specify ISO region-specific language codes to your projects (ie. en-US, zh-CN).β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

As always, you can change your project supported languages from Settings > Global project settings:

Newβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Customizable toolbar for HTML and Markdown editorsβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œβ€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
August 7th, 2018

We just shipped the ability to customize the toolbar buttons on multi-paragraph HTML and Markdown fields from the Presentation tab:β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€Œβ€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

Newβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Multiple deployment environmentsβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
August 2nd, 2018

In the beginning, a DatoCMS project could only have a deployment environment, the production one. Then, we introduced staging environment. Starting from today, you can setup as many environments as you want and trigger a build of your content on an unlimited number of external services.β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

This is a great addition for your editorial team, as it can now publish their content on a number of different platforms and let DatoCMS be the unique point where it manages data to be sent everywhere: websites, apps, wearables, you name it.

Newβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€ŒAPI Clientsβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€Œβ€‹ο»Ώβ€β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Webhooks now available!β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
August 2nd, 2018

You can now be notified when one of these actions occur inside a DatoCMS project:β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

  • Create/update/delete/publish/unpublish a record

  • Create/update/delete a model

  • Create/update/delete an upload (that is, a file or an image in your Media area)

You can also set some filters, so for example you can be notified just when when a record of a specific model (ie. Article) is updated.

Just to give some examples, webhook enable you to:

  • Integrate/sync DatoCMS data with third-party systems (Snipcart, Shopify, Algolia, etc.);

  • Get Slack/email notifications;

  • Automatically post an update on Facebook/Twitter;

  • Produce an automatic deploy on your staging environment;

If you don't want to write any integration code, you can use Zapier Webhooks to connect a DatoCMS event with hundreads of different external services, creating any kind of complex automation workflow.

You can read all the details regarding this feature in our documentation page.

Newβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Optional translations now available!β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
June 28th, 2018

You can now configure a certain model so that you are not forced to insert content for every language your administrative area supports, but just for the primary one, and then manually add additional locales on a per-record basis.β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

This allows use cases such as multi-language blogs, where some articles can be written only in English, other only in Italian and others in both languages.

You can enable optional translations in your Model settings:

This will be the result for the editor:

API Clientsβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€Œβ€‹ο»Ώβ€β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Released v0.5.4 of JS clientβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
June 27th, 2018

We just rolled version 0.5.4 of our JS client!β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ

The big change is that the methods the client makes available are generated at runtime based on the JSON Schema of our CMA. This means any new API endpoint β€” or changes to existing ones β€” will instantly be reflected to the client, without the need to upgrade to the latest client version.

We also added a new deserializeResponse option to every call, that you can use if you want to retrieve the exact payload the DatoCMS returns:

import { SiteClient } from 'datocms-client';
const client = new SiteClient("YOUR-API-KEY")
// `deserializeResponse` is true by default:
const accessToken = client.accessTokens.create({
name: "New token",
role: "34"
})
// {
// id: "312",
// hardcodedType: null,
// name: "New token",
// token: "XXXX",
// role: "34"
// }
// if `deserializeResponse` is false, this will be the result
const accessToken = client.accessTokens.create(
{
name: "New token",
role: "34"
},
{
deserializeResponse: false
}
)
// {
// data: {
// type: "access_token",
// id: "312",
// attributes: {
// name: "New token",
// token: "XXXX",
// hardcoded_type: nil
// },
// relationships: {
// role: {
// data: {
// type: "role",
// id: "34"
// }
// }
// }
// }
// }

In our doc pages we also added some examples for the super-handy allPages option which was already present since v0.3.29:

// if you want to fetch all the pages with just one call:
client.items.all({ "filter[type]" => "44" }, { allPages: true })
API Clientsβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€β€‹ο»Ώβ€Œβ€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€Œβ€Œβ€‹ο»Ώβ€β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€ο»Ώβ€β€Œβ€β€‹β€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
Released gatsby-source-datocms v1.1.9β€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€Œβ€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ
June 18th, 2018

We just added support for the new Gatsby v2 fixed and fluid responsive image queriesβ€‹β€‹β€‹β€‹β€Œο»Ώβ€ο»Ώβ€‹β€β€‹β€β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€Œβ€β€β€Œβ€Œβ€β€Œο»Ώβ€Œβ€β€β€Œβ€Œβ€ο»Ώβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€β€‹β€β€‹β€ο»Ώβ€‹β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€‹β€β€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€β€‹β€β€‹β€β€‹ο»Ώβ€β€β€‹β€β€‹β€β€Œβ€β€β€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€‹β€‹β€Œο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€β€‹β€ο»Ώο»Ώβ€‹β€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€Œβ€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώβ€β€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€ο»Ώο»Ώβ€Œο»Ώβ€‹β€β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œβ€Œο»Ώο»Ώβ€Œο»Ώβ€Œβ€‹β€Œο»Ώβ€β€Œβ€Œο»Ώβ€‹β€‹β€Œβ€β€Œβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€β€‹β€‹β€ο»Ώο»Ώβ€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€Œβ€Œο»Ώβ€‹ο»Ώβ€‹β€ο»Ώο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€β€Œβ€‹ο»Ώβ€β€‹β€‹ο»Ώβ€‹ο»Ώβ€‹ο»Ώβ€‹β€‹β€‹ο»Ώβ€Œβ€‹β€‹ο»Ώβ€Œο»Ώβ€‹ο»Ώβ€β€Œβ€‹β€ο»Ώο»Ώβ€Œβ€β€Œβ€Œβ€Œβ€β€Œβ€‹β€Œβ€β€β€Œβ€Œο»Ώβ€Œβ€‹β€‹β€β€‹ο»Ώβ€Œβ€β€Œβ€β€Œβ€β€β€Œβ€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€‹β€Œβ€β€Œβ€‹β€Œβ€Œβ€‹β€‹β€Œβ€β€‹β€Œβ€Œο»Ώβ€Œβ€‹β€Œβ€β€β€‹β€‹ο»Ώο»Ώβ€Œβ€Œβ€β€‹ο»Ώβ€Œβ€ο»Ώο»Ώβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€Œβ€β€Œβ€Œβ€Œβ€ο»Ώβ€β€Œο»Ώβ€Œβ€‹β€‹β€β€‹β€β€Œο»Ώο»Ώβ€Œ.

Old names (sizes and resolutions) are deprecated but still work.