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
| Type | Description | Requires Entity | Requires RelatedId |
|---|
Entity | Entity label and plural label | Yes | No |
Field | Field labels and help text | Yes | No |
Picklist | Picklist value labels | No | Yes (fieldId) |
Button | Button labels and confirmation messages | Yes | No |
Layout | Form titles, success messages, sections, related lists | No | Yes (layoutId) |
RecordType | Record type names and descriptions | Yes | No |
ValidationRule | Validation rule error messages | Yes | No |
LookupFilter | Lookup filter error and window messages | Yes | No |
App | Application names | No | No |
Tab | Menu Item labels | No | No |
CustomLabel | Custom Label values | No | No |
Aspects per Type
| Type | Aspects | Notes |
|---|
Entity | Label, PluralLabel | Always both aspects. |
Field | Label, Help Text | Help Text appears only when the field has non-empty help text distinct from the field's label or name. |
Button | Label, Confirmation | Confirmation appears only when the button has a confirmation message. |
RecordType | Name, Description | Description appears only when the Record Type has a description. |
LookupFilter | Error Message, Lookup Message | Lookup Message appears only when the filter has a window message. |
Layout | Form Title, Success Message, section names, related list titles | Form-type layouts expose Form Title and Success Message; record-detail layouts may not. |
Picklist | none | Single value — omit the aspect field. |
App | none | Single value. |
Tab | none | Single value. Module-feature Menu Items are excluded. |
CustomLabel | none | Single value. |
ValidationRule | none | Single 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
| Code | Language |
|---|
fr | French |
de | German |
es | Spanish |
it | Italian |
pt | Portuguese |
zh | Chinese |
ja | Japanese |
ru | Russian |
pt-BR | Portuguese (Brazil) |
es-MX | Spanish (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