Languages
Every label, table name, choice, menu title, and notification your users see is a display string with a source text and, optionally, a translation for each language you enable. You write the source text once, in the language your team already builds in, and add a translation for every other language your users work in. A user who has not been given a translated language keeps seeing the source text; nothing breaks and nothing goes blank.
When you’d use it
- Support a team that works in a different language than the one you configured the platform in.
- Localize a custom field, choice list, or menu you built for your own tenant, not only the shipped defaults.
- Roll out a second office or region without duplicating tables, choices, or workflows for each language.
What you manage
Enable languages and translate your labels on the Translations page (/admin/translations, under Build). What you control:
- Enabled languages. Add a language by its tag and give it a native name automatically. Set which one is the default for a user who has not chosen one yet.
- Translations, by table and scope. For fields and choices, first pick the table you want to translate, then edit each field’s label, help text, or choice options next to their source text. Every field on the table appears, whether or not you have customized it yet, and you never type a raw key: each row shows a readable name, such as a field’s own label or a choice’s own value. Other scopes (tables, menus, catalog items, notifications) list their own strings the same way.
- Search and count. A search box filters the list you are looking at by its readable name or its text, and a running count shows how many strings this table and language have, and how many are already translated.
- Shipped text and your edits. An installed app can ship its own translations. Editing one replaces it for your organization, and your edit survives future app updates.
- Who may edit. Translating requires the same capability as other Build tools; every user can still pick their own display language regardless.
Each user picks their own language in Preferences, from the languages you have enabled. FlowLakes builds and updates go with platform.translations.write.
Change the product’s own wording
The platform’s own interface text, the words on its buttons, tabs, headings, and empty states, can be edited the same way. On the Translations page, choose the scope Interface text, then an Area (for example, records and lists, or the service portal), then a language. Each row shows the English text the product ships, the text your users see today in that language, and a box for your own wording.
- Reword a shipped translation. If you would rather your German users read “Verlauf” than the shipped word for a record’s Activity tab, type it in and save. Every user of your tenant who works in German sees your wording after they reload the page or switch language.
- Cover a language the product does not ship. Enable the language, then translate the interface text you care about most, area by area. Anything you have not translated yet shows in English, so the screen is never blank.
- Your wording wins, per word. Your edit comes first, then the product’s own text for that language, then English. Remove your edit and the product’s text comes back.
- Values still never translate. Interface text is only what a person reads. A state, a choice value, or an id is unchanged.
Let AI propose translations
Translating a whole table or area by hand takes time. On the Translations page, pick a scope and a table (or Interface text and an area), pick the language, and click Propose translations. AI suggests a translation for every string that is still untranslated there, and fills the boxes for you to review.
-
Nothing is saved until you save. Each suggestion shows as an unsaved edit marked Proposed. Read it, change it if you want, then click Save all. Discard throws every suggestion away.
-
Your own text is never replaced. A string you already translated, or one you are typing, keeps your words.
-
Every suggestion is checked first. A suggestion for a string you did not ask about is left out. A suggestion that drops or adds a placeholder such as
{{count}}, or that breaks the house style, is refused. The message after each run says how many strings were proposed and how many were left out. -
Up to 200 strings per run. If more are untranslated, save what you reviewed and propose again.
-
It uses your default AI model, and the cost is counted against your organization like any other AI use. Proposing requires the same capability as editing translations.
-
What is sent. The source text of the strings being translated is sent to your AI provider as written. That is your configuration (labels, menu titles, notification wording), not record content, but if a notification template names a person, that name is sent with it.
-
Values never translate. A choice’s stored value (
critical,closed,approved) stays the same in every language; only its label changes. Every business rule, approval, and report keeps working exactly as it does today, because it reads values, not labels. -
A missing translation shows your source text, never a blank field. If a label has no French translation yet, a French-speaking user sees the original text instead of an empty box.
-
Your own edit always wins. If FlowLakes ships an updated translation for something you have already translated yourself, your edit is kept. The platform’s suggestion is not applied over it.
-
Record content is not covered here. A ticket’s own text, comments, and attachments are your users’ data. This page covers the platform’s own labels and messages, not what a person typed into a record.
How it connects
Languages sit underneath every other primitive: a Table’s field labels, a Service Hub catalog item’s name, and a Notification template’s subject and body are all display strings this primitive can translate. None of them need to know translations exist. They keep reading the same label and value they always have; the platform substitutes the right language on the way out.
- Enable a language and translate your first field in the builder guides.
- Exact shapes:
platform.translations.readandplatform.translations.writecapabilities; every term in the glossary.