How does Zendesk set a language for a user in Support?

Question

How does Zendesk Support detect a user's language?

Answer

Zendesk Support detects an end-user language in several ways:

How Support sets a user's language when an agent creates the user

How auto-detection sets a user's language

What can I do if a user's language is incorrectly set?

If you support multiple languages, see Adding multiple languages to Zendesk Support.

How Support sets a user's language when an agent creates the user

When an admin or agent creates a user, Support sets the user's language to the account default language. To change the default language, open Admin Center and go to the Localization page. Under the Localization tab, select your default language. For more information, see Adding multiple languages to Zendesk Support.

How auto-detection sets a user's language

Auto-detection applies only to users who do not yet exist in the Support account:

Email: If an end user does not exist in the Support account before they submit a ticket, Support detects the language automatically from the text in the body of the first email. Later emails or tickets do not overwrite this, even if the user writes in another language.

Help center: An unregistered end user selects a language in the help center menu and submits a request in that locale. When the user is created, the language matches the help center language used at the time they submit their ticket.

Web Widget: The preferred language can be detected from the user's web browser preference. The Accept-Language header, which is sent through HTTP, contains the user's language preference. If that header is present, the widget can detect the language and set it in Support. You can override the browser preference in Web Widget settings. For more information, see Using Web Widget.

Note: Tickets from the contact form or the offline form in Web Widget (Classic) display the account's default language.

Support software development kits (SDKs): If you use the latest version of the Support SDKs, the language for new unregistered end users matches the device locale. If you do not support the device locale, the user's language is set to the account default language.

Application programming interface (API): If the user is created through the API, the user's language is the default language of the Support instance. To set a specific language for the user, pass a locale in the API call.

Social media: Language detection does not work for social media tickets. When an end user sends a ticket from a social media platform such as Facebook Messenger, the default account language is associated with the end-user profile.

Triggers: Triggers can update a user's language in the profile with the action Requester: Language

Messaging: The user's language is detected from the web browser setting only if that language is enabled in Support. Variant languages default to the main language, and main languages do not map to variant languages.

Note: If a user's language is not set explicitly, the detected language changes when the account's default language changes.

What can I do if a user's language is incorrect?

Support sets a user's language only when it adds a user, so the language can be wrong. Use one of the options below to fix it:

Manually change the user's language. This changes one user at a time.

Create a script with the Create or Update Many Users call in the API