Get the list of all languages that Erply supports.

For a list of languages that are currently activated on the given account, see getActiveLanguages. For the default language, see getDefaultLanguage.

These two API calls are useful if you are building a frontend application and need to read or write multilingual data (product names, product group names). Using the list of languages, the application can figure out which field name to use for retrieving or updating a product's name in French, for example.

The languages listed here cannot be all simultaneously activated; some of these are available in certain countries only, and there is a limit of maximum 10 languages.

For more information about languages in Erply, see this article.


Field name Type Description
name String Name of the language in English. This is unique for each record.
nativeName String The language's native name, eg. "Español", "Ελληνικά" or "简体中文". If you want to build a language selection dropdown, this is the preferred label to use.
shortDisplayName String A shorter identifier for the language. Erply back office uses it in field and column labels, such as “Name FRA” or “Description FRA”.
legacyIdentifier String

A three-letter identifier. This is the identifier you must use in Erply API.

To get item names returned in a particular language, use input parameter lang (for example, lang=eng or lang=spa. This works in API call getProducts and many others.

A few API calls (including getProducts) also support an input parameter getNamesInAllLanguages = 1. If you set that flag, API will return fields "nameENG", "nameSPA" and so on. The last three characters in the field name are the same identifier, converted to uppercase.

The "save" API calls, eg. saveProduct also allow to set the name in multiple languages, and similarly accept input parameters "nameENG", "nameSPA" and so on.

Note that the value can sometimes be unexpected: the legacyIdentifier for French is "lat", for example. This is by design. Wherever you have the freedom to establish your own nomenclature, we recommend to use field isoCode instead.

isoCode String

Standard ISO 639-1 code for this language. This identifier is used in newer APIs, such as PIM API or CRM API.

For Simplified Chinese and Traditional Chinese, the identifiers are "zh-Hans" and "zh-Hant", respectively.

This field is more or less unique, with one exception: there are separate entries for "English" and "English (Australia)", for legacy purposes, and both of these have isoCode="en". Most likely you can ignore the language "English (Australia)", and all other codes are unique.

countries Array List of countries where this language can be activated. (Allowing certain languages to be activated only in specific countries is due to a technical limitation.) If the array is empty, the language is available globally.
isOverride Boolean The value is "true" for languages that reuse a legacyIdentifier that belongs to some other language — such as Dutch, which repurposes the legacyIdentifier "gre".