Files
google-api-ruby-client/generated/google/apis/sts_v1/service.rb
T
Google APIs 9678faba19 Autogenerated update (2020-09-14)
Update:
- accessapproval_v1
- accesscontextmanager_v1
- accesscontextmanager_v1beta
- admin_directory_v1
- admob_v1
- analyticsreporting_v4
- androidpublisher_v3
- appengine_v1
- appengine_v1beta
- bigquery_v2
- bigtableadmin_v1
- bigtableadmin_v2
- binaryauthorization_v1
- binaryauthorization_v1beta1
- calendar_v3
- civicinfo_v2
- cloudasset_v1
- cloudasset_v1beta1
- cloudasset_v1p5beta1
- cloudbuild_v1
- cloudbuild_v1alpha1
- cloudbuild_v1alpha2
- clouderrorreporting_v1beta1
- cloudidentity_v1
- cloudidentity_v1beta1
- cloudiot_v1
- cloudresourcemanager_v1
- cloudresourcemanager_v1beta1
- cloudresourcemanager_v2
- cloudresourcemanager_v2beta1
- cloudsearch_v1
- cloudtasks_v2beta3
- container_v1
- container_v1beta1
- containeranalysis_v1alpha1
- containeranalysis_v1beta1
- content_v2
- content_v2_1
- datacatalog_v1beta1
- datafusion_v1
- datafusion_v1beta1
- dataproc_v1
- dataproc_v1beta2
- dialogflow_v2
- dialogflow_v2beta1
- dialogflow_v3beta1
- digitalassetlinks_v1
- displayvideo_v1
- dlp_v2
- documentai_v1beta2
- doubleclickbidmanager_v1
- doubleclickbidmanager_v1_1
- firebase_v1beta1
- firebasedynamiclinks_v1
- firebasehosting_v1beta1
- firebaseml_v1beta2
- firestore_v1
- firestore_v1beta1
- fitness_v1
- games_v1
- gameservices_v1
- gameservices_v1beta
- healthcare_v1
- healthcare_v1beta1
- homegraph_v1
- iam_v1
- iap_v1
- iap_v1beta1
- jobs_v2
- jobs_v3
- jobs_v3p1beta1
- managedidentities_v1alpha1
- managedidentities_v1beta1
- ml_v1
- monitoring_v1
- osconfig_v1
- osconfig_v1beta
- playcustomapp_v1
- prod_tt_sasportal_v1alpha1
- remotebuildexecution_v1
- remotebuildexecution_v1alpha
- remotebuildexecution_v2
- runtimeconfig_v1beta1
- safebrowsing_v4
- secretmanager_v1
- secretmanager_v1beta1
- servicedirectory_v1beta1
- servicenetworking_v1
- speech_v1p1beta1
- sql_v1beta4
- storage_v1
- storagetransfer_v1
- texttospeech_v1beta1
- tpu_v1
- tpu_v1alpha1
- vault_v1
- verifiedaccess_v1
- videointelligence_v1
- videointelligence_v1beta2
- videointelligence_v1p1beta1
- videointelligence_v1p2beta1
- videointelligence_v1p3beta1
- vision_v1
- vision_v1p1beta1
- vision_v1p2beta1
- youtube_partner_v1
- youtube_v3
2020-09-14 23:21:28 +00:00

91 lines
4.1 KiB
Ruby

# Copyright 2015 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'
module Google
module Apis
module StsV1
# Security Token Service API
#
# The Security Token Service exchanges Google or third-party credentials for a
# short-lived access token to Google Cloud resources.
#
# @example
# require 'google/apis/sts_v1'
#
# Sts = Google::Apis::StsV1 # Alias the module
# service = Sts::CloudSecurityTokenService.new
#
# @see http://cloud.google.com/iam/docs/workload-identity-federation
class CloudSecurityTokenService < Google::Apis::Core::BaseService
# @return [String]
# API key. Your API key identifies your project and provides you with API access,
# quota, and reports. Required unless you provide an OAuth 2.0 token.
attr_accessor :key
# @return [String]
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
attr_accessor :quota_user
def initialize
super('https://sts.googleapis.com/', '')
@batch_path = 'batch'
end
# Exchanges a credential for a Google OAuth 2.0 access token.
# @param [Google::Apis::StsV1::GoogleIdentityStsV1ExchangeTokenRequest] google_identity_sts_v1_exchange_token_request_object
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::StsV1::GoogleIdentityStsV1ExchangeTokenResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::StsV1::GoogleIdentityStsV1ExchangeTokenResponse]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def token(google_identity_sts_v1_exchange_token_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'v1/token', options)
command.request_representation = Google::Apis::StsV1::GoogleIdentityStsV1ExchangeTokenRequest::Representation
command.request_object = google_identity_sts_v1_exchange_token_request_object
command.response_representation = Google::Apis::StsV1::GoogleIdentityStsV1ExchangeTokenResponse::Representation
command.response_class = Google::Apis::StsV1::GoogleIdentityStsV1ExchangeTokenResponse
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
protected
def apply_command_defaults(command)
command.query['key'] = key unless key.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
end
end
end
end
end