<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="youtube_v3.html">YouTube Data API</a> . <a href="youtube_v3.i18nRegions.html">i18nRegions</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#list">list(part, hl=None)</a></code></p>
<p class="firstline">Returns a list of content regions that the YouTube website supports.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="list">list(part, hl=None)</code>
  <pre>Returns a list of content regions that the YouTube website supports.

Args:
  part: string, The part parameter specifies the i18nRegion resource properties that the API response will include. Set the parameter value to snippet. (required)
  hl: string, The hl parameter specifies the language that should be used for text values in the API response.

Returns:
  An object of the form:

    {
    "eventId": "A String", # Serialized EventId of the request which produced this response.
    "items": [ # A list of regions where YouTube is available. In this map, the i18n region ID is the map key, and its value is the corresponding i18nRegion resource.
      { # A i18nRegion resource identifies a region where YouTube is available.
        "snippet": { # Basic details about an i18n region, such as region code and human-readable name. # The snippet object contains basic details about the i18n region, such as region code and human-readable name.
          "gl": "A String", # The region code as a 2-letter ISO country code.
          "name": "A String", # The human-readable name of the region.
        },
        "kind": "youtube#i18nRegion", # Identifies what kind of resource this is. Value: the fixed string "youtube#i18nRegion".
        "etag": "A String", # Etag of this resource.
        "id": "A String", # The ID that YouTube uses to uniquely identify the i18n region.
      },
    ],
    "kind": "youtube#i18nRegionListResponse", # Identifies what kind of resource this is. Value: the fixed string "youtube#i18nRegionListResponse".
    "etag": "A String", # Etag of this resource.
    "visitorId": "A String", # The visitorId identifies the visitor.
  }</pre>
</div>

</body></html>