patch method

Future<SendAs> patch (
  1. SendAs request,
  2. String userId,
  3. String sendAsEmail,
  4. {String $fields}
)

Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.

Addresses other than the primary address for the account can only be updated by service account clients that have been delegated domain-wide authority. This method supports patch semantics.

request - The metadata request object.

Request parameters:

userId - User's email address. The special value "me" can be used to indicate the authenticated user.

sendAsEmail - The send-as alias to be updated.

$fields - Selector specifying which fields to include in a partial response.

Completes with a SendAs.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<SendAs> patch(
    SendAs request, core.String userId, core.String sendAsEmail,
    {core.String $fields}) {
  var _url;
  var _queryParams = new core.Map<core.String, core.List<core.String>>();
  var _uploadMedia;
  var _uploadOptions;
  var _downloadOptions = commons.DownloadOptions.Metadata;
  var _body;

  if (request != null) {
    _body = convert.json.encode((request).toJson());
  }
  if (userId == null) {
    throw new core.ArgumentError("Parameter userId is required.");
  }
  if (sendAsEmail == null) {
    throw new core.ArgumentError("Parameter sendAsEmail is required.");
  }
  if ($fields != null) {
    _queryParams["fields"] = [$fields];
  }

  _url = commons.Escaper.ecapeVariable('$userId') +
      '/settings/sendAs/' +
      commons.Escaper.ecapeVariable('$sendAsEmail');

  var _response = _requester.request(_url, "PATCH",
      body: _body,
      queryParams: _queryParams,
      uploadOptions: _uploadOptions,
      uploadMedia: _uploadMedia,
      downloadOptions: _downloadOptions);
  return _response.then((data) => new SendAs.fromJson(data));
}