aws-sdk-ssooidc 1.20.0 → 1.21.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,590 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # WARNING ABOUT GENERATED CODE
4
- #
5
- # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
- #
8
- # WARNING ABOUT GENERATED CODE
9
-
10
- require 'seahorse/client/plugins/content_length.rb'
11
- require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
- require 'aws-sdk-core/plugins/logging.rb'
13
- require 'aws-sdk-core/plugins/param_converter.rb'
14
- require 'aws-sdk-core/plugins/param_validator.rb'
15
- require 'aws-sdk-core/plugins/user_agent.rb'
16
- require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
- require 'aws-sdk-core/plugins/retry_errors.rb'
18
- require 'aws-sdk-core/plugins/global_configuration.rb'
19
- require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
- require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
- require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
- require 'aws-sdk-core/plugins/response_paging.rb'
23
- require 'aws-sdk-core/plugins/stub_responses.rb'
24
- require 'aws-sdk-core/plugins/idempotency_token.rb'
25
- require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
- require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
- require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
- require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
- require 'aws-sdk-core/plugins/http_checksum.rb'
30
- require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
- require 'aws-sdk-core/plugins/defaults_mode.rb'
32
- require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
34
- require 'aws-sdk-core/plugins/protocols/rest_json.rb'
35
-
36
- Aws::Plugins::GlobalConfiguration.add_identifier(:ssooidc)
37
-
38
- module Aws::SSOOIDC
39
- # An API client for SSOOIDC. To construct a client, you need to configure a `:region` and `:credentials`.
40
- #
41
- # client = Aws::SSOOIDC::Client.new(
42
- # region: region_name,
43
- # credentials: credentials,
44
- # # ...
45
- # )
46
- #
47
- # For details on configuring region and credentials see
48
- # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
49
- #
50
- # See {#initialize} for a full list of supported configuration options.
51
- class Client < Seahorse::Client::Base
52
-
53
- include Aws::ClientStubs
54
-
55
- @identifier = :ssooidc
56
-
57
- set_api(ClientApi::API)
58
-
59
- add_plugin(Seahorse::Client::Plugins::ContentLength)
60
- add_plugin(Aws::Plugins::CredentialsConfiguration)
61
- add_plugin(Aws::Plugins::Logging)
62
- add_plugin(Aws::Plugins::ParamConverter)
63
- add_plugin(Aws::Plugins::ParamValidator)
64
- add_plugin(Aws::Plugins::UserAgent)
65
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
66
- add_plugin(Aws::Plugins::RetryErrors)
67
- add_plugin(Aws::Plugins::GlobalConfiguration)
68
- add_plugin(Aws::Plugins::RegionalEndpoint)
69
- add_plugin(Aws::Plugins::EndpointDiscovery)
70
- add_plugin(Aws::Plugins::EndpointPattern)
71
- add_plugin(Aws::Plugins::ResponsePaging)
72
- add_plugin(Aws::Plugins::StubResponses)
73
- add_plugin(Aws::Plugins::IdempotencyToken)
74
- add_plugin(Aws::Plugins::JsonvalueConverter)
75
- add_plugin(Aws::Plugins::ClientMetricsPlugin)
76
- add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
77
- add_plugin(Aws::Plugins::TransferEncoding)
78
- add_plugin(Aws::Plugins::HttpChecksum)
79
- add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
- add_plugin(Aws::Plugins::DefaultsMode)
81
- add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
83
- add_plugin(Aws::Plugins::Protocols::RestJson)
84
-
85
- # @overload initialize(options)
86
- # @param [Hash] options
87
- # @option options [required, Aws::CredentialProvider] :credentials
88
- # Your AWS credentials. This can be an instance of any one of the
89
- # following classes:
90
- #
91
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
92
- # credentials.
93
- #
94
- # * `Aws::SharedCredentials` - Used for loading static credentials from a
95
- # shared file, such as `~/.aws/config`.
96
- #
97
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
98
- #
99
- # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
100
- # assume a role after providing credentials via the web.
101
- #
102
- # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
103
- # access token generated from `aws login`.
104
- #
105
- # * `Aws::ProcessCredentials` - Used for loading credentials from a
106
- # process that outputs to stdout.
107
- #
108
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
109
- # from an EC2 IMDS on an EC2 instance.
110
- #
111
- # * `Aws::ECSCredentials` - Used for loading credentials from
112
- # instances running in ECS.
113
- #
114
- # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
115
- # from the Cognito Identity service.
116
- #
117
- # When `:credentials` are not configured directly, the following
118
- # locations will be searched for credentials:
119
- #
120
- # * `Aws.config[:credentials]`
121
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
122
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
123
- # * `~/.aws/credentials`
124
- # * `~/.aws/config`
125
- # * EC2/ECS IMDS instance profile - When used by default, the timeouts
126
- # are very aggressive. Construct and pass an instance of
127
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
128
- # enable retries and extended timeouts. Instance profile credential
129
- # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
130
- # to true.
131
- #
132
- # @option options [required, String] :region
133
- # The AWS region to connect to. The configured `:region` is
134
- # used to determine the service `:endpoint`. When not passed,
135
- # a default `:region` is searched for in the following locations:
136
- #
137
- # * `Aws.config[:region]`
138
- # * `ENV['AWS_REGION']`
139
- # * `ENV['AMAZON_REGION']`
140
- # * `ENV['AWS_DEFAULT_REGION']`
141
- # * `~/.aws/credentials`
142
- # * `~/.aws/config`
143
- #
144
- # @option options [String] :access_key_id
145
- #
146
- # @option options [Boolean] :active_endpoint_cache (false)
147
- # When set to `true`, a thread polling for endpoints will be running in
148
- # the background every 60 secs (default). Defaults to `false`.
149
- #
150
- # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
151
- # Used only in `adaptive` retry mode. When true, the request will sleep
152
- # until there is sufficent client side capacity to retry the request.
153
- # When false, the request will raise a `RetryCapacityNotAvailableError` and will
154
- # not retry instead of sleeping.
155
- #
156
- # @option options [Boolean] :client_side_monitoring (false)
157
- # When `true`, client-side metrics will be collected for all API requests from
158
- # this client.
159
- #
160
- # @option options [String] :client_side_monitoring_client_id ("")
161
- # Allows you to provide an identifier for this client which will be attached to
162
- # all generated client side metrics. Defaults to an empty string.
163
- #
164
- # @option options [String] :client_side_monitoring_host ("127.0.0.1")
165
- # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
166
- # side monitoring agent is running on, where client metrics will be published via UDP.
167
- #
168
- # @option options [Integer] :client_side_monitoring_port (31000)
169
- # Required for publishing client metrics. The port that the client side monitoring
170
- # agent is running on, where client metrics will be published via UDP.
171
- #
172
- # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
173
- # Allows you to provide a custom client-side monitoring publisher class. By default,
174
- # will use the Client Side Monitoring Agent Publisher.
175
- #
176
- # @option options [Boolean] :convert_params (true)
177
- # When `true`, an attempt is made to coerce request parameters into
178
- # the required types.
179
- #
180
- # @option options [Boolean] :correct_clock_skew (true)
181
- # Used only in `standard` and adaptive retry modes. Specifies whether to apply
182
- # a clock skew correction and retry requests with skewed client clocks.
183
- #
184
- # @option options [String] :defaults_mode ("legacy")
185
- # See {Aws::DefaultsModeConfiguration} for a list of the
186
- # accepted modes and the configuration defaults that are included.
187
- #
188
- # @option options [Boolean] :disable_host_prefix_injection (false)
189
- # Set to true to disable SDK automatically adding host prefix
190
- # to default service endpoint when available.
191
- #
192
- # @option options [String] :endpoint
193
- # The client endpoint is normally constructed from the `:region`
194
- # option. You should only configure an `:endpoint` when connecting
195
- # to test or custom endpoints. This should be a valid HTTP(S) URI.
196
- #
197
- # @option options [Integer] :endpoint_cache_max_entries (1000)
198
- # Used for the maximum size limit of the LRU cache storing endpoints data
199
- # for endpoint discovery enabled operations. Defaults to 1000.
200
- #
201
- # @option options [Integer] :endpoint_cache_max_threads (10)
202
- # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
203
- #
204
- # @option options [Integer] :endpoint_cache_poll_interval (60)
205
- # When :endpoint_discovery and :active_endpoint_cache is enabled,
206
- # Use this option to config the time interval in seconds for making
207
- # requests fetching endpoints information. Defaults to 60 sec.
208
- #
209
- # @option options [Boolean] :endpoint_discovery (false)
210
- # When set to `true`, endpoint discovery will be enabled for operations when available.
211
- #
212
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
213
- # The log formatter.
214
- #
215
- # @option options [Symbol] :log_level (:info)
216
- # The log level to send messages to the `:logger` at.
217
- #
218
- # @option options [Logger] :logger
219
- # The Logger instance to send log messages to. If this option
220
- # is not set, logging will be disabled.
221
- #
222
- # @option options [Integer] :max_attempts (3)
223
- # An integer representing the maximum number attempts that will be made for
224
- # a single request, including the initial attempt. For example,
225
- # setting this value to 5 will result in a request being retried up to
226
- # 4 times. Used in `standard` and `adaptive` retry modes.
227
- #
228
- # @option options [String] :profile ("default")
229
- # Used when loading credentials from the shared credentials file
230
- # at HOME/.aws/credentials. When not specified, 'default' is used.
231
- #
232
- # @option options [Proc] :retry_backoff
233
- # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
234
- # This option is only used in the `legacy` retry mode.
235
- #
236
- # @option options [Float] :retry_base_delay (0.3)
237
- # The base delay in seconds used by the default backoff function. This option
238
- # is only used in the `legacy` retry mode.
239
- #
240
- # @option options [Symbol] :retry_jitter (:none)
241
- # A delay randomiser function used by the default backoff function.
242
- # Some predefined functions can be referenced by name - :none, :equal, :full,
243
- # otherwise a Proc that takes and returns a number. This option is only used
244
- # in the `legacy` retry mode.
245
- #
246
- # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
247
- #
248
- # @option options [Integer] :retry_limit (3)
249
- # The maximum number of times to retry failed requests. Only
250
- # ~ 500 level server errors and certain ~ 400 level client errors
251
- # are retried. Generally, these are throttling errors, data
252
- # checksum errors, networking errors, timeout errors, auth errors,
253
- # endpoint discovery, and errors from expired credentials.
254
- # This option is only used in the `legacy` retry mode.
255
- #
256
- # @option options [Integer] :retry_max_delay (0)
257
- # The maximum number of seconds to delay between retries (0 for no limit)
258
- # used by the default backoff function. This option is only used in the
259
- # `legacy` retry mode.
260
- #
261
- # @option options [String] :retry_mode ("legacy")
262
- # Specifies which retry algorithm to use. Values are:
263
- #
264
- # * `legacy` - The pre-existing retry behavior. This is default value if
265
- # no retry mode is provided.
266
- #
267
- # * `standard` - A standardized set of retry rules across the AWS SDKs.
268
- # This includes support for retry quotas, which limit the number of
269
- # unsuccessful retries a client can make.
270
- #
271
- # * `adaptive` - An experimental retry mode that includes all the
272
- # functionality of `standard` mode along with automatic client side
273
- # throttling. This is a provisional mode that may change behavior
274
- # in the future.
275
- #
276
- #
277
- # @option options [String] :secret_access_key
278
- #
279
- # @option options [String] :session_token
280
- #
281
- # @option options [Boolean] :stub_responses (false)
282
- # Causes the client to return stubbed responses. By default
283
- # fake responses are generated and returned. You can specify
284
- # the response data to return or errors to raise by calling
285
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
286
- #
287
- # ** Please note ** When response stubbing is enabled, no HTTP
288
- # requests are made, and retries are disabled.
289
- #
290
- # @option options [Boolean] :use_dualstack_endpoint
291
- # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
- # will be used if available.
293
- #
294
- # @option options [Boolean] :use_fips_endpoint
295
- # When set to `true`, fips compatible endpoints will be used if available.
296
- # When a `fips` region is used, the region is normalized and this config
297
- # is set to `true`.
298
- #
299
- # @option options [Boolean] :validate_params (true)
300
- # When `true`, request parameters are validated before
301
- # sending the request.
302
- #
303
- # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
- # requests through. Formatted like 'http://proxy.com:123'.
305
- #
306
- # @option options [Float] :http_open_timeout (15) The number of
307
- # seconds to wait when opening a HTTP session before raising a
308
- # `Timeout::Error`.
309
- #
310
- # @option options [Float] :http_read_timeout (60) The default
311
- # number of seconds to wait for response data. This value can
312
- # safely be set per-request on the session.
313
- #
314
- # @option options [Float] :http_idle_timeout (5) The number of
315
- # seconds a connection is allowed to sit idle before it is
316
- # considered stale. Stale connections are closed and removed
317
- # from the pool before making a request.
318
- #
319
- # @option options [Float] :http_continue_timeout (1) The number of
320
- # seconds to wait for a 100-continue response before sending the
321
- # request body. This option has no effect unless the request has
322
- # "Expect" header set to "100-continue". Defaults to `nil` which
323
- # disables this behaviour. This value can safely be set per
324
- # request on the session.
325
- #
326
- # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
327
- # in seconds.
328
- #
329
- # @option options [Boolean] :http_wire_trace (false) When `true`,
330
- # HTTP debug output will be sent to the `:logger`.
331
- #
332
- # @option options [Boolean] :ssl_verify_peer (true) When `true`,
333
- # SSL peer certificates are verified when establishing a
334
- # connection.
335
- #
336
- # @option options [String] :ssl_ca_bundle Full path to the SSL
337
- # certificate authority bundle file that should be used when
338
- # verifying peer certificates. If you do not pass
339
- # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
340
- # will be used if available.
341
- #
342
- # @option options [String] :ssl_ca_directory Full path of the
343
- # directory that contains the unbundled SSL certificate
344
- # authority files for verifying peer certificates. If you do
345
- # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
346
- # system default will be used if available.
347
- #
348
- def initialize(*args)
349
- super
350
- end
351
-
352
- # @!group API Operations
353
-
354
- # Creates and returns an access token for the authorized client. The
355
- # access token issued will be used to fetch short-term credentials for
356
- # the assigned roles in the Amazon Web Services account.
357
- #
358
- # @option params [required, String] :client_id
359
- # The unique identifier string for each client. This value should come
360
- # from the persisted result of the RegisterClient API.
361
- #
362
- # @option params [required, String] :client_secret
363
- # A secret string generated for the client. This value should come from
364
- # the persisted result of the RegisterClient API.
365
- #
366
- # @option params [required, String] :grant_type
367
- # Supports grant types for the authorization code, refresh token, and
368
- # device code request. For device code requests, specify the following
369
- # value:
370
- #
371
- # `urn:ietf:params:oauth:grant-type:device_code `
372
- #
373
- # For information about how to obtain the device code, see the
374
- # StartDeviceAuthorization topic.
375
- #
376
- # @option params [required, String] :device_code
377
- # Used only when calling this API for the device code grant type. This
378
- # short-term code is used to identify this authentication attempt. This
379
- # should come from an in-memory reference to the result of the
380
- # StartDeviceAuthorization API.
381
- #
382
- # @option params [String] :code
383
- # The authorization code received from the authorization service. This
384
- # parameter is required to perform an authorization grant request to get
385
- # access to a token.
386
- #
387
- # @option params [String] :refresh_token
388
- # Currently, `refreshToken` is not yet implemented and is not supported.
389
- # For more information about the features and limitations of the current
390
- # Amazon Web Services SSO OIDC implementation, see *Considerations for
391
- # Using this Guide* in the [Amazon Web Services SSO OIDC API
392
- # Reference][1].
393
- #
394
- # The token used to obtain an access token in the event that the access
395
- # token is invalid or expired.
396
- #
397
- #
398
- #
399
- # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
400
- #
401
- # @option params [Array<String>] :scope
402
- # The list of scopes that is defined by the client. Upon authorization,
403
- # this list is used to restrict permissions when granting an access
404
- # token.
405
- #
406
- # @option params [String] :redirect_uri
407
- # The location of the application that will receive the authorization
408
- # code. Users authorize the service to send the request to this
409
- # location.
410
- #
411
- # @return [Types::CreateTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
412
- #
413
- # * {Types::CreateTokenResponse#access_token #access_token} => String
414
- # * {Types::CreateTokenResponse#token_type #token_type} => String
415
- # * {Types::CreateTokenResponse#expires_in #expires_in} => Integer
416
- # * {Types::CreateTokenResponse#refresh_token #refresh_token} => String
417
- # * {Types::CreateTokenResponse#id_token #id_token} => String
418
- #
419
- # @example Request syntax with placeholder values
420
- #
421
- # resp = client.create_token({
422
- # client_id: "ClientId", # required
423
- # client_secret: "ClientSecret", # required
424
- # grant_type: "GrantType", # required
425
- # device_code: "DeviceCode", # required
426
- # code: "AuthCode",
427
- # refresh_token: "RefreshToken",
428
- # scope: ["Scope"],
429
- # redirect_uri: "URI",
430
- # })
431
- #
432
- # @example Response structure
433
- #
434
- # resp.access_token #=> String
435
- # resp.token_type #=> String
436
- # resp.expires_in #=> Integer
437
- # resp.refresh_token #=> String
438
- # resp.id_token #=> String
439
- #
440
- # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateToken AWS API Documentation
441
- #
442
- # @overload create_token(params = {})
443
- # @param [Hash] params ({})
444
- def create_token(params = {}, options = {})
445
- req = build_request(:create_token, params)
446
- req.send_request(options)
447
- end
448
-
449
- # Registers a client with Amazon Web Services SSO. This allows clients
450
- # to initiate device authorization. The output should be persisted for
451
- # reuse through many authentication requests.
452
- #
453
- # @option params [required, String] :client_name
454
- # The friendly name of the client.
455
- #
456
- # @option params [required, String] :client_type
457
- # The type of client. The service supports only `public` as a client
458
- # type. Anything other than public will be rejected by the service.
459
- #
460
- # @option params [Array<String>] :scopes
461
- # The list of scopes that are defined by the client. Upon authorization,
462
- # this list is used to restrict permissions when granting an access
463
- # token.
464
- #
465
- # @return [Types::RegisterClientResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
466
- #
467
- # * {Types::RegisterClientResponse#client_id #client_id} => String
468
- # * {Types::RegisterClientResponse#client_secret #client_secret} => String
469
- # * {Types::RegisterClientResponse#client_id_issued_at #client_id_issued_at} => Integer
470
- # * {Types::RegisterClientResponse#client_secret_expires_at #client_secret_expires_at} => Integer
471
- # * {Types::RegisterClientResponse#authorization_endpoint #authorization_endpoint} => String
472
- # * {Types::RegisterClientResponse#token_endpoint #token_endpoint} => String
473
- #
474
- # @example Request syntax with placeholder values
475
- #
476
- # resp = client.register_client({
477
- # client_name: "ClientName", # required
478
- # client_type: "ClientType", # required
479
- # scopes: ["Scope"],
480
- # })
481
- #
482
- # @example Response structure
483
- #
484
- # resp.client_id #=> String
485
- # resp.client_secret #=> String
486
- # resp.client_id_issued_at #=> Integer
487
- # resp.client_secret_expires_at #=> Integer
488
- # resp.authorization_endpoint #=> String
489
- # resp.token_endpoint #=> String
490
- #
491
- # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/RegisterClient AWS API Documentation
492
- #
493
- # @overload register_client(params = {})
494
- # @param [Hash] params ({})
495
- def register_client(params = {}, options = {})
496
- req = build_request(:register_client, params)
497
- req.send_request(options)
498
- end
499
-
500
- # Initiates device authorization by requesting a pair of verification
501
- # codes from the authorization service.
502
- #
503
- # @option params [required, String] :client_id
504
- # The unique identifier string for the client that is registered with
505
- # Amazon Web Services SSO. This value should come from the persisted
506
- # result of the RegisterClient API operation.
507
- #
508
- # @option params [required, String] :client_secret
509
- # A secret string that is generated for the client. This value should
510
- # come from the persisted result of the RegisterClient API operation.
511
- #
512
- # @option params [required, String] :start_url
513
- # The URL for the AWS access portal. For more information, see [Using
514
- # the AWS access portal][1] in the *Amazon Web Services SSO User Guide*.
515
- #
516
- #
517
- #
518
- # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/using-the-portal.html
519
- #
520
- # @return [Types::StartDeviceAuthorizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
521
- #
522
- # * {Types::StartDeviceAuthorizationResponse#device_code #device_code} => String
523
- # * {Types::StartDeviceAuthorizationResponse#user_code #user_code} => String
524
- # * {Types::StartDeviceAuthorizationResponse#verification_uri #verification_uri} => String
525
- # * {Types::StartDeviceAuthorizationResponse#verification_uri_complete #verification_uri_complete} => String
526
- # * {Types::StartDeviceAuthorizationResponse#expires_in #expires_in} => Integer
527
- # * {Types::StartDeviceAuthorizationResponse#interval #interval} => Integer
528
- #
529
- # @example Request syntax with placeholder values
530
- #
531
- # resp = client.start_device_authorization({
532
- # client_id: "ClientId", # required
533
- # client_secret: "ClientSecret", # required
534
- # start_url: "URI", # required
535
- # })
536
- #
537
- # @example Response structure
538
- #
539
- # resp.device_code #=> String
540
- # resp.user_code #=> String
541
- # resp.verification_uri #=> String
542
- # resp.verification_uri_complete #=> String
543
- # resp.expires_in #=> Integer
544
- # resp.interval #=> Integer
545
- #
546
- # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/StartDeviceAuthorization AWS API Documentation
547
- #
548
- # @overload start_device_authorization(params = {})
549
- # @param [Hash] params ({})
550
- def start_device_authorization(params = {}, options = {})
551
- req = build_request(:start_device_authorization, params)
552
- req.send_request(options)
553
- end
554
-
555
- # @!endgroup
556
-
557
- # @param params ({})
558
- # @api private
559
- def build_request(operation_name, params = {})
560
- handlers = @handlers.for(operation_name)
561
- context = Seahorse::Client::RequestContext.new(
562
- operation_name: operation_name,
563
- operation: config.api.operation(operation_name),
564
- client: self,
565
- params: params,
566
- config: config)
567
- context[:gem_name] = 'aws-sdk-ssooidc'
568
- context[:gem_version] = '1.20.0'
569
- Seahorse::Client::Request.new(handlers, context)
570
- end
571
-
572
- # @api private
573
- # @deprecated
574
- def waiter_names
575
- []
576
- end
577
-
578
- class << self
579
-
580
- # @api private
581
- attr_reader :identifier
582
-
583
- # @api private
584
- def errors_module
585
- Errors
586
- end
587
-
588
- end
589
- end
590
- end