Localization
The fulfillmenttools platform supports localization, enabling you to manage data in multiple languages. This document outlines how to change user and platform locales, request specific languages for your requests, and handle localized information in entities.
Supported Localization Features
User-specific locales: Determined by user settings in the authentication token.
Request-specific languages: Can be specified using a
locale
query parameter.Localized entity fields: Store and retrieve localized field values.
Supported Languages
A list of currently supported languages can be found via the API. All supported languages are also available in the Backoffice and other fulfillmenttools applications.
Requesting Specific Languages
To request data in a specific language, add the locale
query parameter followed by the language code, conforming to the ISO 639-1 standard.
Example request for a specific language
Fallback Language Mechanism
If a requested language is unavailable, the platform uses the following fallback order:
Language specified in user settings.
Default platform language.
English (
en_US
).First available language for the entity.
Non-localized field value of the entity.
Handling Localized Information in Entities
Each localizable entity schema contains fields and their corresponding localized versions, which are stored as objects with locale codes as keys.
Example of localized entity fields
GET requests return localized values based on the user's locale.
POST, PUT, and PATCH requests must provide all localized values for the desired locales. Partial updates of localized values are not supported.
Using Entities Without Localization
The platform will prioritize returning localized values based on the user's locale. If a non-localized field is patched when a localizedObject is already present, the original field will always be overridden with the localized values in responses.
If localization is not required, omit the <fieldName>Localized
object and provide the non-localized field directly.
Example of non-localized usage
Changing the User Locale
To change the user locale, send a PATCH
request to the user endpoint, including the new locale in the request body. After the change, you must request a new authentication token to reflect the locale update.
Changing the Default Platform Locale
The default platform locale sets the standard language for the frontend applications. Change it by sending a PUT
request to the relevant configuration endpoint.