Table of Contents


Translation Types Reference

The Translation API supports 11 translation types. Each type covers one category of platform content and exposes one or more aspects — the sub-properties that can be translated individually.


Type Summary

TypeDescriptionRequires EntityRequires RelatedId
EntityEntity label and plural labelYesNo
FieldField labels and help textYesNo
PicklistPicklist value labelsNoYes (fieldId)
ButtonButton labels and confirmation messagesYesNo
LayoutForm titles, success messages, sections, related listsNoYes (layoutId)
RecordTypeRecord type names and descriptionsYesNo
ValidationRuleValidation rule error messagesYesNo
LookupFilterLookup filter error and window messagesYesNo
AppApplication namesNoNo
TabMenu Item labelsNoNo
CustomLabelCustom Label valuesNoNo

Aspects per Type

TypeAspectsNotes
EntityLabel, PluralLabelAlways both aspects.
FieldLabel, Help TextHelp Text appears only when the field has non-empty help text distinct from the field's label or name.
ButtonLabel, ConfirmationConfirmation appears only when the button has a confirmation message.
RecordTypeName, DescriptionDescription appears only when the Record Type has a description.
LookupFilterError Message, Lookup MessageLookup Message appears only when the filter has a window message.
LayoutForm Title, Success Message, section names, related list titlesForm-type layouts expose Form Title and Success Message; record-detail layouts may not.
PicklistnoneSingle value — omit the aspect field.
AppnoneSingle value.
TabnoneSingle value. Module-feature Menu Items are excluded.
CustomLabelnoneSingle value.
ValidationRulenoneSingle value — translates the error message itself.

Type Details

Entity

Translates the entity's Label and PluralLabel. Translated values appear in navigation, page headers, list view titles, and anywhere the platform displays the entity name to a user.

The describe call for type=entity with no entityName returns every translatable entity. With entityName set, returns the full entity payload including fields, buttons, etc.

Field

Translates field Label and Help Text. Help Text is only present when the field actually has help text content. To find fields with help text, look for the Help Text aspect in the describe response.

Field translations apply across every page that renders the field — forms, list views, layouts, search results, etc.

Picklist

Translates picklist option labels. Single-value type (no aspect). Picklist GET requires relatedId (the field ID); entityName is optional. A describe call without relatedId returns the list of picklist fields on the entity.

Dependent picklists are translated the same way — each option is translated individually. The dependency relationship is preserved automatically.

Button

Translates button Label and optional Confirmation. Confirmation messages are the prompt shown to users before a button executes its action. Only present when the button has a confirmation configured.

Layout

Translates layout-level strings: Form Title, Success Message, section names, and related list titles. Form-type layouts expose Form Title and Success Message. Record-detail layouts typically expose section names and related list titles only.

Layout requires the layout ID as relatedId; entityName is not required.

RecordType

Translates the Record Type's Name and optional Description. Description only present when the record type has one. Translations apply to record-type pickers, record headers showing the record's type, and reporting.

ValidationRule

Translates the validation rule's error message. Single value (no aspect). When the rule fails for a user in the matching language, the translated error message is shown instead of the master.

LookupFilter

Translates two aspects: Error Message (shown when the lookup filter rejects a selected record) and Lookup Message (shown at the top of the lookup window itself). Lookup Message only present when the filter has a window message.

App

Translates Application names. Single value. Apps are global — no entityName needed.

Tab

Translates Menu Item labels. The customer-facing name is Menu Item; the API type code is Tab (legacy name). Single value. Module-feature Menu Items (Articles, Training, etc.) are excluded from this list because they are translated through their owning module's resource files.

CustomLabel

Translates Custom Label values. Single value. Custom Labels are referenced in code, merge fields ({!$Label.MyLabel}), buttons, page layouts, and Active Pages. See Custom Labels for the admin-side reference.


Supported Languages

CodeLanguage
frFrench
deGerman
esSpanish
itItalian
ptPortuguese
zhChinese
jaJapanese
ruRussian
pt-BRPortuguese (Brazil)
es-MXSpanish (Mexico)

Languages must be activated by an administrator before translations can be submitted. Use GET /api/3.0/translations/languages to discover which are currently active.


Picking Aspects on Submit

When submitting a translation:

  • Multi-aspect types (Entity, Field, Button, RecordType, LookupFilter, Layout) — include the aspect field with one of the documented aspect values.
  • Single-value types (Picklist, App, Tab, CustomLabel, ValidationRule) — omit the aspect field or set it to an empty string.

Submissions are validated for a valid type and a present relatedToId; a missing or invalid one returns HTTP 400. The aspect is stored as provided, so use the documented aspect for the type.


Related Documentation


<< Get and Submit Translations

Last updated on 6/23/2026

Attachments