<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="sqladmin_v1.html">Cloud SQL Admin API</a> . <a href="sqladmin_v1.flags.html">flags</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#list">list(databaseVersion=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists all available database flags for Cloud SQL instances.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="list">list(databaseVersion=None, x__xgafv=None)</code>
  <pre>Lists all available database flags for Cloud SQL instances.

Args:
  databaseVersion: string, Database type and version you want to retrieve flags for. By default, this method returns flags for all database types and versions.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Flags list response.
  &quot;items&quot;: [ # List of flags.
    { # A flag resource.
      &quot;allowedIntValues&quot;: [ # Use this field if only certain integers are accepted. Can be combined with min_value and max_value to add additional values.
        &quot;A String&quot;,
      ],
      &quot;allowedStringValues&quot;: [ # For **STRING** flags, a list of strings that the value can be set to.
        &quot;A String&quot;,
      ],
      &quot;appliesTo&quot;: [ # The database version this flag applies to. Can be **MYSQL_8_0**, **MYSQL_5_6**, or **MYSQL_5_7**.
        &quot;A String&quot;,
      ],
      &quot;inBeta&quot;: True or False, # Whether or not the flag is considered in beta.
      &quot;kind&quot;: &quot;A String&quot;, # This is always **sql#flag**.
      &quot;maxValue&quot;: &quot;A String&quot;, # For **INTEGER** flags, the maximum allowed value.
      &quot;minValue&quot;: &quot;A String&quot;, # For **INTEGER** flags, the minimum allowed value.
      &quot;name&quot;: &quot;A String&quot;, # This is the name of the flag. Flag names always use underscores, not hyphens, for example: **max_allowed_packet**
      &quot;requiresRestart&quot;: True or False, # Indicates whether changing this flag will trigger a database restart. Only applicable to Second Generation instances.
      &quot;type&quot;: &quot;A String&quot;, # The type of the flag. Flags are typed to being **BOOLEAN**, **STRING**, **INTEGER** or **NONE**. **NONE** is used for flags which do not take a value, such as **skip_grant_tables**.
    },
  ],
  &quot;kind&quot;: &quot;A String&quot;, # This is always **sql#flagsList**.
}</pre>
</div>

</body></html>