<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="gmail_v1.html">Gmail API</a> . <a href="gmail_v1.users.html">users</a> . <a href="gmail_v1.users.settings.html">settings</a> . <a href="gmail_v1.users.settings.sendAs.html">sendAs</a> . <a href="gmail_v1.users.settings.sendAs.smimeInfo.html">smimeInfo</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#delete">delete(userId, sendAsEmail, id)</a></code></p>
<p class="firstline">Deletes the specified S/MIME config for the specified send-as alias.</p>
<p class="toc_element">
  <code><a href="#get">get(userId, sendAsEmail, id)</a></code></p>
<p class="firstline">Gets the specified S/MIME config for the specified send-as alias.</p>
<p class="toc_element">
  <code><a href="#insert">insert(userId, sendAsEmail, body)</a></code></p>
<p class="firstline">Insert (upload) the given S/MIME config for the specified send-as alias. Note that pkcs12 format is required for the key.</p>
<p class="toc_element">
  <code><a href="#list">list(userId, sendAsEmail)</a></code></p>
<p class="firstline">Lists S/MIME configs for the specified send-as alias.</p>
<p class="toc_element">
  <code><a href="#setDefault">setDefault(userId, sendAsEmail, id)</a></code></p>
<p class="firstline">Sets the default S/MIME config for the specified send-as alias.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="delete">delete(userId, sendAsEmail, id)</code>
  <pre>Deletes the specified S/MIME config for the specified send-as alias.

Args:
  userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
  sendAsEmail: string, The email address that appears in the "From:" header for mail sent using this alias. (required)
  id: string, The immutable ID for the SmimeInfo. (required)
</pre>
</div>

<div class="method">
    <code class="details" id="get">get(userId, sendAsEmail, id)</code>
  <pre>Gets the specified S/MIME config for the specified send-as alias.

Args:
  userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
  sendAsEmail: string, The email address that appears in the "From:" header for mail sent using this alias. (required)
  id: string, The immutable ID for the SmimeInfo. (required)

Returns:
  An object of the form:

    { # An S/MIME email config.
      "pkcs12": "A String", # PKCS#12 format containing a single private/public key pair and certificate chain. This format is only accepted from client for creating a new SmimeInfo and is never returned, because the private key is not intended to be exported. PKCS#12 may be encrypted, in which case encryptedKeyPassword should be set appropriately.
      "pem": "A String", # PEM formatted X509 concatenated certificate string (standard base64 encoding). Format used for returning key, which includes public key as well as certificate chain (not private key).
      "issuerCn": "A String", # The S/MIME certificate issuer's common name.
      "encryptedKeyPassword": "A String", # Encrypted key password, when key is encrypted.
      "id": "A String", # The immutable ID for the SmimeInfo.
      "isDefault": True or False, # Whether this SmimeInfo is the default one for this user's send-as address.
      "expiration": "A String", # When the certificate expires (in milliseconds since epoch).
    }</pre>
</div>

<div class="method">
    <code class="details" id="insert">insert(userId, sendAsEmail, body)</code>
  <pre>Insert (upload) the given S/MIME config for the specified send-as alias. Note that pkcs12 format is required for the key.

Args:
  userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
  sendAsEmail: string, The email address that appears in the "From:" header for mail sent using this alias. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # An S/MIME email config.
    "pkcs12": "A String", # PKCS#12 format containing a single private/public key pair and certificate chain. This format is only accepted from client for creating a new SmimeInfo and is never returned, because the private key is not intended to be exported. PKCS#12 may be encrypted, in which case encryptedKeyPassword should be set appropriately.
    "pem": "A String", # PEM formatted X509 concatenated certificate string (standard base64 encoding). Format used for returning key, which includes public key as well as certificate chain (not private key).
    "issuerCn": "A String", # The S/MIME certificate issuer's common name.
    "encryptedKeyPassword": "A String", # Encrypted key password, when key is encrypted.
    "id": "A String", # The immutable ID for the SmimeInfo.
    "isDefault": True or False, # Whether this SmimeInfo is the default one for this user's send-as address.
    "expiration": "A String", # When the certificate expires (in milliseconds since epoch).
  }


Returns:
  An object of the form:

    { # An S/MIME email config.
      "pkcs12": "A String", # PKCS#12 format containing a single private/public key pair and certificate chain. This format is only accepted from client for creating a new SmimeInfo and is never returned, because the private key is not intended to be exported. PKCS#12 may be encrypted, in which case encryptedKeyPassword should be set appropriately.
      "pem": "A String", # PEM formatted X509 concatenated certificate string (standard base64 encoding). Format used for returning key, which includes public key as well as certificate chain (not private key).
      "issuerCn": "A String", # The S/MIME certificate issuer's common name.
      "encryptedKeyPassword": "A String", # Encrypted key password, when key is encrypted.
      "id": "A String", # The immutable ID for the SmimeInfo.
      "isDefault": True or False, # Whether this SmimeInfo is the default one for this user's send-as address.
      "expiration": "A String", # When the certificate expires (in milliseconds since epoch).
    }</pre>
</div>

<div class="method">
    <code class="details" id="list">list(userId, sendAsEmail)</code>
  <pre>Lists S/MIME configs for the specified send-as alias.

Args:
  userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
  sendAsEmail: string, The email address that appears in the "From:" header for mail sent using this alias. (required)

Returns:
  An object of the form:

    {
    "smimeInfo": [ # List of SmimeInfo.
      { # An S/MIME email config.
          "pkcs12": "A String", # PKCS#12 format containing a single private/public key pair and certificate chain. This format is only accepted from client for creating a new SmimeInfo and is never returned, because the private key is not intended to be exported. PKCS#12 may be encrypted, in which case encryptedKeyPassword should be set appropriately.
          "pem": "A String", # PEM formatted X509 concatenated certificate string (standard base64 encoding). Format used for returning key, which includes public key as well as certificate chain (not private key).
          "issuerCn": "A String", # The S/MIME certificate issuer's common name.
          "encryptedKeyPassword": "A String", # Encrypted key password, when key is encrypted.
          "id": "A String", # The immutable ID for the SmimeInfo.
          "isDefault": True or False, # Whether this SmimeInfo is the default one for this user's send-as address.
          "expiration": "A String", # When the certificate expires (in milliseconds since epoch).
        },
    ],
  }</pre>
</div>

<div class="method">
    <code class="details" id="setDefault">setDefault(userId, sendAsEmail, id)</code>
  <pre>Sets the default S/MIME config for the specified send-as alias.

Args:
  userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
  sendAsEmail: string, The email address that appears in the "From:" header for mail sent using this alias. (required)
  id: string, The immutable ID for the SmimeInfo. (required)
</pre>
</div>

</body></html>