<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="translate_v2.html">Google Cloud Translation API</a> . <a href="translate_v2.languages.html">languages</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#list">list(target=None, x__xgafv=None, model=None)</a></code></p>
<p class="firstline">Returns a list of supported languages for translation.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="list">list(target=None, x__xgafv=None, model=None)</code>
  <pre>Returns a list of supported languages for translation.

Args:
  target: string, The language to use to return localized, human readable names of supported
languages.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format
  model: string, The model type for which supported languages should be returned.

Returns:
  An object of the form:

    {
    "languages": [ # List of source/target languages supported by the translation API. If target parameter is unspecified, the list is sorted by the ASCII code point order of the language code. If target parameter is specified, the list is sorted by the collation order of the language name in the target language.
      {
        "name": "A String", # Human readable name of the language localized to the target language.
        "language": "A String", # Supported language code, generally consisting of its ISO 639-1
            # identifier. (E.g. 'en', 'ja'). In certain cases, BCP-47 codes including
            # language + region identifiers are returned (e.g. 'zh-TW' and 'zh-CH')
      },
    ],
  }</pre>
</div>

</body></html>