Gets the set of languages currently supported by other operations of the Translator Text API.**Authentication is not required to get language resources.**# Response BodyA client uses the `scope` query parameter to define which groups of languages it is interested in.* `scope=translation` provides languages supported to translate text from one language to another language.* `scope=transliteration` provides capabilities for converting text in one language from one script to another script.* `scope=dictionary` provides language pairs for which `Dictionary` operations return data.A client may retrieve several groups simultaneously by specifying a comma-separated list of names. For example, `scope=translation,transliteration,dictionary` would return supported languages for all groups.A successful response is a JSON object with one property for each requested group.The value for each property is as follows.* `translation` property The value of the `translation` property is a dictionary of (key, value) pairs. Each key is a BCP 47 language tag. A key identifies a language for which text can be translated to or translated from. The value associated with the key is a JSON object with properties that describe the language * `name-` Display name of the language in the locale requested via `Accept-Language` header. * `nativeName-` Display name of the language in the locale native for this language. * `dir-` Directionality, which is `rtl` for right-to-left languages or `ltr` for left-to-right languages.```json{ 'translation': { ... 'fr': { 'name': 'French', 'nativeName': 'Français', 'dir': 'ltr' },... }}```* `transliteration` property The value of the `transliteration` property is a dictionary of (key, value) pairs. Each key is a BCP 47 language tag. A key identifies a language for which text can be converted from one script to another script. The value associated with the key is a JSON object with properties that describe the language and its supported scripts * `name-` Display name of the language in the locale requested via `Accept-Language` header. * `nativeName-` Display name of the language in the locale native for this language. * `scripts-` List of scripts to convert from. Each element of the `scripts` list has properties- * `code-` Code identifying the script. * `name-` Display name of the script in the locale requested via `Accept-Language` header. * `nativeName-` Display name of the language in the locale native for the language. * `dir-` Directionality, which is `rtl` for right-to-left languages or `ltr` for left-to-right languages. * `toScripts-` List of scripts available to convert text to. Each element of the `toScripts` list has properties `code`, `name`, `nativeName`, and `dir` as described earlier.```json{ 'transliteration': { ... 'ja': { 'name': 'Japanese', 'nativeName': '日本語', 'scripts': [ { 'code': 'Jpan', 'name': 'Japanese', 'nativeName': '日本語', 'dir': 'ltr', 'toScripts': [ { 'code': 'Latn', 'name': 'Latin', 'nativeName': 'ラテン語', 'dir': 'ltr' } ] }, { 'code': 'Latn', 'name': 'Latin', 'nativeName': 'ラテン語', 'dir': 'ltr', 'toScripts': [ { 'code': 'Jpan', 'name': 'Japanese', 'nativeName': '日本語', 'dir': 'ltr' } ] } ] }, ... }}```* `dictionary` propertyThe value of the `dictionary` property is a dictionary of (key, value) pairs. Each key is a BCP 47 language tag. The key identifies a language for which alternative translations and back-translations are available. The value is a JSON object that describes the source language and the target languages with available translations. * `name-` Display name of the source language in the locale requested via `Accept-Language` header. * `nativeName-` Display name of the language in the locale native for this language. * `dir-` Directionality, which is `rtl` for right-to-left languages or `ltr` for left-to-right languages. * `translations-` List of languages with alterative translations and examples for the query expressed in the source language. Each element of the `translations` list has properties * `name-` Display name of the target language in the locale requested via `Accept-Language` header. * `nativeName-` Display name of the target language in the locale native for the target language. * `dir-` Directionality, which is `rtl` for right-to-left languages or `ltr` for left-to-right languages. * `code-` Language code identifying the target language.```json'es': { 'name': 'Spanish', 'nativeName': 'Español', 'dir': 'ltr', 'translations': [ { 'name': 'English', 'nativeName': 'English', 'dir': 'ltr', 'code': 'en' } ]},```The structure of the response object will not change without a change in the version of the API. For the same version of the API, the list of available languages may change over time because Microsoft Translator continually extends the list of languages supported by its services.The list of supported languages will not change frequently. To save network bandwidth and improve responsiveness, a client application should consider caching language resources and the corresponding entity tag (`ETag`). Then, the client application can periodically (for example, once every 24 hours) query the service to fetch the latest set of supported languages. Passing the current `ETag` value in an `If-None-Match` header field will allow the service to optimize the response. If the resource has not been modified, the service will return status code 304 and an empty response body. # Response HeaderETag - Current value of the entity tag for the requested groups of supported languages. To make subsequent requests more efficient, the client may send the `ETag` value in an `If-None-Match` header field.X-RequestId - Value generated by the service to identify the request. It is used for troubleshooting purposes.