# frozen_string_literal: true # WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE require 'seahorse/client/plugins/content_length.rb' require 'aws-sdk-core/plugins/credentials_configuration.rb' require 'aws-sdk-core/plugins/logging.rb' require 'aws-sdk-core/plugins/param_converter.rb' require 'aws-sdk-core/plugins/param_validator.rb' require 'aws-sdk-core/plugins/user_agent.rb' require 'aws-sdk-core/plugins/helpful_socket_errors.rb' require 'aws-sdk-core/plugins/retry_errors.rb' require 'aws-sdk-core/plugins/global_configuration.rb' require 'aws-sdk-core/plugins/regional_endpoint.rb' require 'aws-sdk-core/plugins/endpoint_discovery.rb' require 'aws-sdk-core/plugins/endpoint_pattern.rb' require 'aws-sdk-core/plugins/response_paging.rb' require 'aws-sdk-core/plugins/stub_responses.rb' require 'aws-sdk-core/plugins/idempotency_token.rb' require 'aws-sdk-core/plugins/jsonvalue_converter.rb' require 'aws-sdk-core/plugins/client_metrics_plugin.rb' require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb' require 'aws-sdk-core/plugins/transfer_encoding.rb' require 'aws-sdk-core/plugins/http_checksum.rb' require 'aws-sdk-core/plugins/signature_v4.rb' require 'aws-sdk-core/plugins/protocols/rest_json.rb' require 'aws-sdk-apigateway/plugins/apply_content_type_header.rb' Aws::Plugins::GlobalConfiguration.add_identifier(:apigateway) module Aws::APIGateway # An API client for APIGateway. To construct a client, you need to configure a `:region` and `:credentials`. # # client = Aws::APIGateway::Client.new( # region: region_name, # credentials: credentials, # # ... # ) # # For details on configuring region and credentials see # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html). # # See {#initialize} for a full list of supported configuration options. class Client < Seahorse::Client::Base include Aws::ClientStubs @identifier = :apigateway set_api(ClientApi::API) add_plugin(Seahorse::Client::Plugins::ContentLength) add_plugin(Aws::Plugins::CredentialsConfiguration) add_plugin(Aws::Plugins::Logging) add_plugin(Aws::Plugins::ParamConverter) add_plugin(Aws::Plugins::ParamValidator) add_plugin(Aws::Plugins::UserAgent) add_plugin(Aws::Plugins::HelpfulSocketErrors) add_plugin(Aws::Plugins::RetryErrors) add_plugin(Aws::Plugins::GlobalConfiguration) add_plugin(Aws::Plugins::RegionalEndpoint) add_plugin(Aws::Plugins::EndpointDiscovery) add_plugin(Aws::Plugins::EndpointPattern) add_plugin(Aws::Plugins::ResponsePaging) add_plugin(Aws::Plugins::StubResponses) add_plugin(Aws::Plugins::IdempotencyToken) add_plugin(Aws::Plugins::JsonvalueConverter) add_plugin(Aws::Plugins::ClientMetricsPlugin) add_plugin(Aws::Plugins::ClientMetricsSendPlugin) add_plugin(Aws::Plugins::TransferEncoding) add_plugin(Aws::Plugins::HttpChecksum) add_plugin(Aws::Plugins::SignatureV4) add_plugin(Aws::Plugins::Protocols::RestJson) add_plugin(Aws::APIGateway::Plugins::ApplyContentTypeHeader) # @overload initialize(options) # @param [Hash] options # @option options [required, Aws::CredentialProvider] :credentials # Your AWS credentials. This can be an instance of any one of the # following classes: # # * `Aws::Credentials` - Used for configuring static, non-refreshing # credentials. # # * `Aws::InstanceProfileCredentials` - Used for loading credentials # from an EC2 IMDS on an EC2 instance. # # * `Aws::SharedCredentials` - Used for loading credentials from a # shared file, such as `~/.aws/config`. # # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role. # # When `:credentials` are not configured directly, the following # locations will be searched for credentials: # # * `Aws.config[:credentials]` # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options. # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'] # * `~/.aws/credentials` # * `~/.aws/config` # * EC2 IMDS instance profile - When used by default, the timeouts are # very aggressive. Construct and pass an instance of # `Aws::InstanceProfileCredentails` to enable retries and extended # timeouts. # # @option options [required, String] :region # The AWS region to connect to. The configured `:region` is # used to determine the service `:endpoint`. When not passed, # a default `:region` is searched for in the following locations: # # * `Aws.config[:region]` # * `ENV['AWS_REGION']` # * `ENV['AMAZON_REGION']` # * `ENV['AWS_DEFAULT_REGION']` # * `~/.aws/credentials` # * `~/.aws/config` # # @option options [String] :access_key_id # # @option options [Boolean] :active_endpoint_cache (false) # When set to `true`, a thread polling for endpoints will be running in # the background every 60 secs (default). Defaults to `false`. # # @option options [Boolean] :adaptive_retry_wait_to_fill (true) # Used only in `adaptive` retry mode. When true, the request will sleep # until there is sufficent client side capacity to retry the request. # When false, the request will raise a `RetryCapacityNotAvailableError` and will # not retry instead of sleeping. # # @option options [Boolean] :client_side_monitoring (false) # When `true`, client-side metrics will be collected for all API requests from # this client. # # @option options [String] :client_side_monitoring_client_id ("") # Allows you to provide an identifier for this client which will be attached to # all generated client side metrics. Defaults to an empty string. # # @option options [String] :client_side_monitoring_host ("127.0.0.1") # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client # side monitoring agent is running on, where client metrics will be published via UDP. # # @option options [Integer] :client_side_monitoring_port (31000) # Required for publishing client metrics. The port that the client side monitoring # agent is running on, where client metrics will be published via UDP. # # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) # Allows you to provide a custom client-side monitoring publisher class. By default, # will use the Client Side Monitoring Agent Publisher. # # @option options [Boolean] :convert_params (true) # When `true`, an attempt is made to coerce request parameters into # the required types. # # @option options [Boolean] :correct_clock_skew (true) # Used only in `standard` and adaptive retry modes. Specifies whether to apply # a clock skew correction and retry requests with skewed client clocks. # # @option options [Boolean] :disable_host_prefix_injection (false) # Set to true to disable SDK automatically adding host prefix # to default service endpoint when available. # # @option options [String] :endpoint # The client endpoint is normally constructed from the `:region` # option. You should only configure an `:endpoint` when connecting # to test or custom endpoints. This should be a valid HTTP(S) URI. # # @option options [Integer] :endpoint_cache_max_entries (1000) # Used for the maximum size limit of the LRU cache storing endpoints data # for endpoint discovery enabled operations. Defaults to 1000. # # @option options [Integer] :endpoint_cache_max_threads (10) # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. # # @option options [Integer] :endpoint_cache_poll_interval (60) # When :endpoint_discovery and :active_endpoint_cache is enabled, # Use this option to config the time interval in seconds for making # requests fetching endpoints information. Defaults to 60 sec. # # @option options [Boolean] :endpoint_discovery (false) # When set to `true`, endpoint discovery will be enabled for operations when available. # # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default) # The log formatter. # # @option options [Symbol] :log_level (:info) # The log level to send messages to the `:logger` at. # # @option options [Logger] :logger # The Logger instance to send log messages to. If this option # is not set, logging will be disabled. # # @option options [Integer] :max_attempts (3) # An integer representing the maximum number attempts that will be made for # a single request, including the initial attempt. For example, # setting this value to 5 will result in a request being retried up to # 4 times. Used in `standard` and `adaptive` retry modes. # # @option options [String] :profile ("default") # Used when loading credentials from the shared credentials file # at HOME/.aws/credentials. When not specified, 'default' is used. # # @option options [Proc] :retry_backoff # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. # This option is only used in the `legacy` retry mode. # # @option options [Float] :retry_base_delay (0.3) # The base delay in seconds used by the default backoff function. This option # is only used in the `legacy` retry mode. # # @option options [Symbol] :retry_jitter (:none) # A delay randomiser function used by the default backoff function. # Some predefined functions can be referenced by name - :none, :equal, :full, # otherwise a Proc that takes and returns a number. This option is only used # in the `legacy` retry mode. # # @see https://www.awsarchitectureblog.com/2015/03/backoff.html # # @option options [Integer] :retry_limit (3) # The maximum number of times to retry failed requests. Only # ~ 500 level server errors and certain ~ 400 level client errors # are retried. Generally, these are throttling errors, data # checksum errors, networking errors, timeout errors, auth errors, # endpoint discovery, and errors from expired credentials. # This option is only used in the `legacy` retry mode. # # @option options [Integer] :retry_max_delay (0) # The maximum number of seconds to delay between retries (0 for no limit) # used by the default backoff function. This option is only used in the # `legacy` retry mode. # # @option options [String] :retry_mode ("legacy") # Specifies which retry algorithm to use. Values are: # # * `legacy` - The pre-existing retry behavior. This is default value if # no retry mode is provided. # # * `standard` - A standardized set of retry rules across the AWS SDKs. # This includes support for retry quotas, which limit the number of # unsuccessful retries a client can make. # # * `adaptive` - An experimental retry mode that includes all the # functionality of `standard` mode along with automatic client side # throttling. This is a provisional mode that may change behavior # in the future. # # # @option options [String] :secret_access_key # # @option options [String] :session_token # # @option options [Boolean] :stub_responses (false) # Causes the client to return stubbed responses. By default # fake responses are generated and returned. You can specify # the response data to return or errors to raise by calling # {ClientStubs#stub_responses}. See {ClientStubs} for more information. # # ** Please note ** When response stubbing is enabled, no HTTP # requests are made, and retries are disabled. # # @option options [Boolean] :validate_params (true) # When `true`, request parameters are validated before # sending the request. # # @option options [URI::HTTP,String] :http_proxy A proxy to send # requests through. Formatted like 'http://proxy.com:123'. # # @option options [Float] :http_open_timeout (15) The number of # seconds to wait when opening a HTTP session before raising a # `Timeout::Error`. # # @option options [Integer] :http_read_timeout (60) The default # number of seconds to wait for response data. This value can # safely be set per-request on the session. # # @option options [Float] :http_idle_timeout (5) The number of # seconds a connection is allowed to sit idle before it is # considered stale. Stale connections are closed and removed # from the pool before making a request. # # @option options [Float] :http_continue_timeout (1) The number of # seconds to wait for a 100-continue response before sending the # request body. This option has no effect unless the request has # "Expect" header set to "100-continue". Defaults to `nil` which # disables this behaviour. This value can safely be set per # request on the session. # # @option options [Boolean] :http_wire_trace (false) When `true`, # HTTP debug output will be sent to the `:logger`. # # @option options [Boolean] :ssl_verify_peer (true) When `true`, # SSL peer certificates are verified when establishing a # connection. # # @option options [String] :ssl_ca_bundle Full path to the SSL # certificate authority bundle file that should be used when # verifying peer certificates. If you do not pass # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default # will be used if available. # # @option options [String] :ssl_ca_directory Full path of the # directory that contains the unbundled SSL certificate # authority files for verifying peer certificates. If you do # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the # system default will be used if available. # def initialize(*args) super end # @!group API Operations # Create an ApiKey resource. # #
# [AWS CLI][1] #
# # # # [1]: https://docs.aws.amazon.com/cli/latest/reference/apigateway/create-api-key.html # # @option params [String] :name # The name of the ApiKey. # # @option params [String] :description # The description of the ApiKey. # # @option params [Boolean] :enabled # Specifies whether the ApiKey can be used by callers. # # @option params [Boolean] :generate_distinct_id # Specifies whether (`true`) or not (`false`) the key identifier is # distinct from the created API key value. This parameter is deprecated # and should not be used. # # @option params [String] :value # Specifies a value of the API key. # # @option params [Array] :stage_keys # DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API # key. # # @option params [String] :customer_id # An AWS Marketplace customer identifier , when integrating with the AWS # SaaS Marketplace. # # @option params [Hash] :tags # The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @return [Types::ApiKey] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ApiKey#id #id} => String # * {Types::ApiKey#value #value} => String # * {Types::ApiKey#name #name} => String # * {Types::ApiKey#customer_id #customer_id} => String # * {Types::ApiKey#description #description} => String # * {Types::ApiKey#enabled #enabled} => Boolean # * {Types::ApiKey#created_date #created_date} => Time # * {Types::ApiKey#last_updated_date #last_updated_date} => Time # * {Types::ApiKey#stage_keys #stage_keys} => Array<String> # * {Types::ApiKey#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.create_api_key({ # name: "String", # description: "String", # enabled: false, # generate_distinct_id: false, # value: "String", # stage_keys: [ # { # rest_api_id: "String", # stage_name: "String", # }, # ], # customer_id: "String", # tags: { # "String" => "String", # }, # }) # # @example Response structure # # resp.id #=> String # resp.value #=> String # resp.name #=> String # resp.customer_id #=> String # resp.description #=> String # resp.enabled #=> Boolean # resp.created_date #=> Time # resp.last_updated_date #=> Time # resp.stage_keys #=> Array # resp.stage_keys[0] #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload create_api_key(params = {}) # @param [Hash] params ({}) def create_api_key(params = {}, options = {}) req = build_request(:create_api_key, params) req.send_request(options) end # Adds a new Authorizer resource to an existing RestApi resource. # #
# [AWS CLI][1] #
# # # # [1]: https://docs.aws.amazon.com/cli/latest/reference/apigateway/create-authorizer.html # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :name # \[Required\] The name of the authorizer. # # @option params [required, String] :type # \[Required\] The authorizer type. Valid values are `TOKEN` for a # Lambda function using a single authorization token submitted in a # custom header, `REQUEST` for a Lambda function using incoming request # parameters, and `COGNITO_USER_POOLS` for using an Amazon Cognito user # pool. # # @option params [Array] :provider_arns # A list of the Amazon Cognito user pool ARNs for the # `COGNITO_USER_POOLS` authorizer. Each element is of this format: # `arn:aws:cognito-idp:\{region\}:\{account_id\}:userpool/\{user_pool_id\}`. # For a `TOKEN` or `REQUEST` authorizer, this is not defined. # # @option params [String] :auth_type # Optional customer-defined field, used in OpenAPI imports and exports # without functional impact. # # @option params [String] :authorizer_uri # Specifies the authorizer's Uniform Resource Identifier (URI). For # `TOKEN` or `REQUEST` authorizers, this must be a well-formed Lambda # function URI, for example, # `arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:\{account_id\}:function:\{lambda_function_name\}/invocations`. # In general, the URI has this form # `arn:aws:apigateway:\{region\}:lambda:path/\{service_api\}`, where # `\{region\}` is the same as the region hosting the Lambda function, # `path` indicates that the remaining substring in the URI should be # treated as the path to the resource, including the initial `/`. For # Lambda functions, this is usually of the form # `/2015-03-31/functions/[FunctionARN]/invocations`. # # @option params [String] :authorizer_credentials # Specifies the required credentials as an IAM role for API Gateway to # invoke the authorizer. To specify an IAM role for API Gateway to # assume, use the role's Amazon Resource Name (ARN). To use # resource-based permissions on the Lambda function, specify null. # # @option params [String] :identity_source # The identity source for which authorization is requested. * For a # `TOKEN` or `COGNITO_USER_POOLS` authorizer, this is required # and specifies the request header mapping expression for the custom # header holding the authorization token submitted by the client. For # example, if the token header name is `Auth`, the header mapping # expression is `method.request.header.Auth`. # * For the `REQUEST` authorizer, this is required when authorization # caching is enabled. The value is a comma-separated string of one or # more mapping expressions of the specified request parameters. For # example, if an `Auth` header, a `Name` query string parameter are # defined as identity sources, this value is # `method.request.header.Auth, method.request.querystring.Name`. These # parameters will be used to derive the authorization caching key and # to perform runtime validation of the `REQUEST` authorizer by # verifying all of the identity-related request parameters are # present, not null and non-empty. Only when this is true does the # authorizer invoke the authorizer Lambda function, otherwise, it # returns a 401 Unauthorized response without calling the Lambda # function. The valid value is a string of comma-separated mapping # expressions of the specified request parameters. When the # authorization caching is not enabled, this property is optional. # # @option params [String] :identity_validation_expression # A validation expression for the incoming identity token. For `TOKEN` # authorizers, this value is a regular expression. For # `COGNITO_USER_POOLS` authorizers, API Gateway will match the `aud` # field of the incoming token from the client against the specified # regular expression. It will invoke the authorizer's Lambda function # when there is a match. Otherwise, it will return a 401 Unauthorized # response without calling the Lambda function. The validation # expression does not apply to the `REQUEST` authorizer. # # @option params [Integer] :authorizer_result_ttl_in_seconds # The TTL in seconds of cached authorizer results. If it equals 0, # authorization caching is disabled. If it is greater than 0, API # Gateway will cache authorizer responses. If this field is not set, the # default value is 300. The maximum value is 3600, or 1 hour. # # @return [Types::Authorizer] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Authorizer#id #id} => String # * {Types::Authorizer#name #name} => String # * {Types::Authorizer#type #type} => String # * {Types::Authorizer#provider_arns #provider_arns} => Array<String> # * {Types::Authorizer#auth_type #auth_type} => String # * {Types::Authorizer#authorizer_uri #authorizer_uri} => String # * {Types::Authorizer#authorizer_credentials #authorizer_credentials} => String # * {Types::Authorizer#identity_source #identity_source} => String # * {Types::Authorizer#identity_validation_expression #identity_validation_expression} => String # * {Types::Authorizer#authorizer_result_ttl_in_seconds #authorizer_result_ttl_in_seconds} => Integer # # @example Request syntax with placeholder values # # resp = client.create_authorizer({ # rest_api_id: "String", # required # name: "String", # required # type: "TOKEN", # required, accepts TOKEN, REQUEST, COGNITO_USER_POOLS # provider_arns: ["ProviderARN"], # auth_type: "String", # authorizer_uri: "String", # authorizer_credentials: "String", # identity_source: "String", # identity_validation_expression: "String", # authorizer_result_ttl_in_seconds: 1, # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.type #=> String, one of "TOKEN", "REQUEST", "COGNITO_USER_POOLS" # resp.provider_arns #=> Array # resp.provider_arns[0] #=> String # resp.auth_type #=> String # resp.authorizer_uri #=> String # resp.authorizer_credentials #=> String # resp.identity_source #=> String # resp.identity_validation_expression #=> String # resp.authorizer_result_ttl_in_seconds #=> Integer # # @overload create_authorizer(params = {}) # @param [Hash] params ({}) def create_authorizer(params = {}, options = {}) req = build_request(:create_authorizer, params) req.send_request(options) end # Creates a new BasePathMapping resource. # # @option params [required, String] :domain_name # \[Required\] The domain name of the BasePathMapping resource to # create. # # @option params [String] :base_path # The base path name that callers of the API must provide as part of the # URL after the domain name. This value must be unique for all of the # mappings across a single API. Specify '(none)' if you do not want # callers to specify a base path name after the domain name. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :stage # The name of the API's stage that you want to use for this mapping. # Specify '(none)' if you want callers to explicitly specify the stage # name after any base path name. # # @return [Types::BasePathMapping] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BasePathMapping#base_path #base_path} => String # * {Types::BasePathMapping#rest_api_id #rest_api_id} => String # * {Types::BasePathMapping#stage #stage} => String # # @example Request syntax with placeholder values # # resp = client.create_base_path_mapping({ # domain_name: "String", # required # base_path: "String", # rest_api_id: "String", # required # stage: "String", # }) # # @example Response structure # # resp.base_path #=> String # resp.rest_api_id #=> String # resp.stage #=> String # # @overload create_base_path_mapping(params = {}) # @param [Hash] params ({}) def create_base_path_mapping(params = {}, options = {}) req = build_request(:create_base_path_mapping, params) req.send_request(options) end # Creates a Deployment resource, which makes a specified RestApi # callable over the internet. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :stage_name # The name of the Stage resource for the Deployment resource to create. # # @option params [String] :stage_description # The description of the Stage resource for the Deployment resource to # create. # # @option params [String] :description # The description for the Deployment resource to create. # # @option params [Boolean] :cache_cluster_enabled # Enables a cache cluster for the Stage resource specified in the input. # # @option params [String] :cache_cluster_size # Specifies the cache cluster size for the Stage resource specified in # the input, if a cache cluster is enabled. # # @option params [Hash] :variables # A map that defines the stage variables for the Stage resource that is # associated with the new deployment. Variable names can have # alphanumeric and underscore characters, and the values must match # `[A-Za-z0-9-._~:/?#&=,]+`. # # @option params [Types::DeploymentCanarySettings] :canary_settings # The input configuration for the canary deployment when the deployment # is a canary release deployment. # # @option params [Boolean] :tracing_enabled # Specifies whether active tracing with X-ray is enabled for the Stage. # # @return [Types::Deployment] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Deployment#id #id} => String # * {Types::Deployment#description #description} => String # * {Types::Deployment#created_date #created_date} => Time # * {Types::Deployment#api_summary #api_summary} => Hash<String,Hash<String,Types::MethodSnapshot>> # # @example Request syntax with placeholder values # # resp = client.create_deployment({ # rest_api_id: "String", # required # stage_name: "String", # stage_description: "String", # description: "String", # cache_cluster_enabled: false, # cache_cluster_size: "0.5", # accepts 0.5, 1.6, 6.1, 13.5, 28.4, 58.2, 118, 237 # variables: { # "String" => "String", # }, # canary_settings: { # percent_traffic: 1.0, # stage_variable_overrides: { # "String" => "String", # }, # use_stage_cache: false, # }, # tracing_enabled: false, # }) # # @example Response structure # # resp.id #=> String # resp.description #=> String # resp.created_date #=> Time # resp.api_summary #=> Hash # resp.api_summary["String"] #=> Hash # resp.api_summary["String"]["String"].authorization_type #=> String # resp.api_summary["String"]["String"].api_key_required #=> Boolean # # @overload create_deployment(params = {}) # @param [Hash] params ({}) def create_deployment(params = {}, options = {}) req = build_request(:create_deployment, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, Types::DocumentationPartLocation] :location # \[Required\] The location of the targeted API entity of the # to-be-created documentation part. # # @option params [required, String] :properties # \[Required\] The new documentation content map of the targeted API # entity. Enclosed key-value pairs are API-specific, but only # OpenAPI-compliant key-value pairs can be exported and, hence, # published. # # @return [Types::DocumentationPart] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationPart#id #id} => String # * {Types::DocumentationPart#location #location} => Types::DocumentationPartLocation # * {Types::DocumentationPart#properties #properties} => String # # @example Request syntax with placeholder values # # resp = client.create_documentation_part({ # rest_api_id: "String", # required # location: { # required # type: "API", # required, accepts API, AUTHORIZER, MODEL, RESOURCE, METHOD, PATH_PARAMETER, QUERY_PARAMETER, REQUEST_HEADER, REQUEST_BODY, RESPONSE, RESPONSE_HEADER, RESPONSE_BODY # path: "String", # method: "String", # status_code: "DocumentationPartLocationStatusCode", # name: "String", # }, # properties: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.location.type #=> String, one of "API", "AUTHORIZER", "MODEL", "RESOURCE", "METHOD", "PATH_PARAMETER", "QUERY_PARAMETER", "REQUEST_HEADER", "REQUEST_BODY", "RESPONSE", "RESPONSE_HEADER", "RESPONSE_BODY" # resp.location.path #=> String # resp.location.method #=> String # resp.location.status_code #=> String # resp.location.name #=> String # resp.properties #=> String # # @overload create_documentation_part(params = {}) # @param [Hash] params ({}) def create_documentation_part(params = {}, options = {}) req = build_request(:create_documentation_part, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :documentation_version # \[Required\] The version identifier of the new snapshot. # # @option params [String] :stage_name # The stage name to be associated with the new documentation snapshot. # # @option params [String] :description # A description about the new documentation snapshot. # # @return [Types::DocumentationVersion] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationVersion#version #version} => String # * {Types::DocumentationVersion#created_date #created_date} => Time # * {Types::DocumentationVersion#description #description} => String # # @example Request syntax with placeholder values # # resp = client.create_documentation_version({ # rest_api_id: "String", # required # documentation_version: "String", # required # stage_name: "String", # description: "String", # }) # # @example Response structure # # resp.version #=> String # resp.created_date #=> Time # resp.description #=> String # # @overload create_documentation_version(params = {}) # @param [Hash] params ({}) def create_documentation_version(params = {}, options = {}) req = build_request(:create_documentation_version, params) req.send_request(options) end # Creates a new domain name. # # @option params [required, String] :domain_name # \[Required\] The name of the DomainName resource. # # @option params [String] :certificate_name # The user-friendly name of the certificate that will be used by # edge-optimized endpoint for this domain name. # # @option params [String] :certificate_body # \[Deprecated\] The body of the server certificate that will be used by # edge-optimized endpoint for this domain name provided by your # certificate authority. # # @option params [String] :certificate_private_key # \[Deprecated\] Your edge-optimized endpoint's domain name # certificate's private key. # # @option params [String] :certificate_chain # \[Deprecated\] The intermediate certificates and optionally the root # certificate, one after the other without any blank lines, used by an # edge-optimized endpoint for this domain name. If you include the root # certificate, your certificate chain must start with intermediate # certificates and end with the root certificate. Use the intermediate # certificates that were provided by your certificate authority. Do not # include any intermediaries that are not in the chain of trust path. # # @option params [String] :certificate_arn # The reference to an AWS-managed certificate that will be used by # edge-optimized endpoint for this domain name. AWS Certificate Manager # is the only supported source. # # @option params [String] :regional_certificate_name # The user-friendly name of the certificate that will be used by # regional endpoint for this domain name. # # @option params [String] :regional_certificate_arn # The reference to an AWS-managed certificate that will be used by # regional endpoint for this domain name. AWS Certificate Manager is the # only supported source. # # @option params [Types::EndpointConfiguration] :endpoint_configuration # The endpoint configuration of this DomainName showing the endpoint # types of the domain name. # # @option params [Hash] :tags # The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @option params [String] :security_policy # The Transport Layer Security (TLS) version + cipher suite for this # DomainName. The valid values are `TLS_1_0` and `TLS_1_2`. # # @return [Types::DomainName] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DomainName#domain_name #domain_name} => String # * {Types::DomainName#certificate_name #certificate_name} => String # * {Types::DomainName#certificate_arn #certificate_arn} => String # * {Types::DomainName#certificate_upload_date #certificate_upload_date} => Time # * {Types::DomainName#regional_domain_name #regional_domain_name} => String # * {Types::DomainName#regional_hosted_zone_id #regional_hosted_zone_id} => String # * {Types::DomainName#regional_certificate_name #regional_certificate_name} => String # * {Types::DomainName#regional_certificate_arn #regional_certificate_arn} => String # * {Types::DomainName#distribution_domain_name #distribution_domain_name} => String # * {Types::DomainName#distribution_hosted_zone_id #distribution_hosted_zone_id} => String # * {Types::DomainName#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::DomainName#domain_name_status #domain_name_status} => String # * {Types::DomainName#domain_name_status_message #domain_name_status_message} => String # * {Types::DomainName#security_policy #security_policy} => String # * {Types::DomainName#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.create_domain_name({ # domain_name: "String", # required # certificate_name: "String", # certificate_body: "String", # certificate_private_key: "String", # certificate_chain: "String", # certificate_arn: "String", # regional_certificate_name: "String", # regional_certificate_arn: "String", # endpoint_configuration: { # types: ["REGIONAL"], # accepts REGIONAL, EDGE, PRIVATE # vpc_endpoint_ids: ["String"], # }, # tags: { # "String" => "String", # }, # security_policy: "TLS_1_0", # accepts TLS_1_0, TLS_1_2 # }) # # @example Response structure # # resp.domain_name #=> String # resp.certificate_name #=> String # resp.certificate_arn #=> String # resp.certificate_upload_date #=> Time # resp.regional_domain_name #=> String # resp.regional_hosted_zone_id #=> String # resp.regional_certificate_name #=> String # resp.regional_certificate_arn #=> String # resp.distribution_domain_name #=> String # resp.distribution_hosted_zone_id #=> String # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.domain_name_status #=> String, one of "AVAILABLE", "UPDATING", "PENDING" # resp.domain_name_status_message #=> String # resp.security_policy #=> String, one of "TLS_1_0", "TLS_1_2" # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload create_domain_name(params = {}) # @param [Hash] params ({}) def create_domain_name(params = {}, options = {}) req = build_request(:create_domain_name, params) req.send_request(options) end # Adds a new Model resource to an existing RestApi resource. # # @option params [required, String] :rest_api_id # \[Required\] The RestApi identifier under which the Model will be # created. # # @option params [required, String] :name # \[Required\] The name of the model. Must be alphanumeric. # # @option params [String] :description # The description of the model. # # @option params [String] :schema # The schema for the model. For `application/json` models, this should # be [JSON schema draft 4][1] model. # # # # [1]: https://tools.ietf.org/html/draft-zyp-json-schema-04 # # @option params [required, String] :content_type # \[Required\] The content-type for the model. # # @return [Types::Model] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Model#id #id} => String # * {Types::Model#name #name} => String # * {Types::Model#description #description} => String # * {Types::Model#schema #schema} => String # * {Types::Model#content_type #content_type} => String # # @example Request syntax with placeholder values # # resp = client.create_model({ # rest_api_id: "String", # required # name: "String", # required # description: "String", # schema: "String", # content_type: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.schema #=> String # resp.content_type #=> String # # @overload create_model(params = {}) # @param [Hash] params ({}) def create_model(params = {}, options = {}) req = build_request(:create_model, params) req.send_request(options) end # Creates a ReqeustValidator of a given RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :name # The name of the to-be-created RequestValidator. # # @option params [Boolean] :validate_request_body # A Boolean flag to indicate whether to validate request body according # to the configured model schema for the method (`true`) or not # (`false`). # # @option params [Boolean] :validate_request_parameters # A Boolean flag to indicate whether to validate request parameters, # `true`, or not `false`. # # @return [Types::RequestValidator] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RequestValidator#id #id} => String # * {Types::RequestValidator#name #name} => String # * {Types::RequestValidator#validate_request_body #validate_request_body} => Boolean # * {Types::RequestValidator#validate_request_parameters #validate_request_parameters} => Boolean # # @example Request syntax with placeholder values # # resp = client.create_request_validator({ # rest_api_id: "String", # required # name: "String", # validate_request_body: false, # validate_request_parameters: false, # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.validate_request_body #=> Boolean # resp.validate_request_parameters #=> Boolean # # @overload create_request_validator(params = {}) # @param [Hash] params ({}) def create_request_validator(params = {}, options = {}) req = build_request(:create_request_validator, params) req.send_request(options) end # Creates a Resource resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :parent_id # \[Required\] The parent resource's identifier. # # @option params [required, String] :path_part # The last path segment for this resource. # # @return [Types::Resource] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Resource#id #id} => String # * {Types::Resource#parent_id #parent_id} => String # * {Types::Resource#path_part #path_part} => String # * {Types::Resource#path #path} => String # * {Types::Resource#resource_methods #resource_methods} => Hash<String,Types::Method> # # @example Request syntax with placeholder values # # resp = client.create_resource({ # rest_api_id: "String", # required # parent_id: "String", # required # path_part: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.parent_id #=> String # resp.path_part #=> String # resp.path #=> String # resp.resource_methods #=> Hash # resp.resource_methods["String"].http_method #=> String # resp.resource_methods["String"].authorization_type #=> String # resp.resource_methods["String"].authorizer_id #=> String # resp.resource_methods["String"].api_key_required #=> Boolean # resp.resource_methods["String"].request_validator_id #=> String # resp.resource_methods["String"].operation_name #=> String # resp.resource_methods["String"].request_parameters #=> Hash # resp.resource_methods["String"].request_parameters["String"] #=> Boolean # resp.resource_methods["String"].request_models #=> Hash # resp.resource_methods["String"].request_models["String"] #=> String # resp.resource_methods["String"].method_responses #=> Hash # resp.resource_methods["String"].method_responses["String"].status_code #=> String # resp.resource_methods["String"].method_responses["String"].response_parameters #=> Hash # resp.resource_methods["String"].method_responses["String"].response_parameters["String"] #=> Boolean # resp.resource_methods["String"].method_responses["String"].response_models #=> Hash # resp.resource_methods["String"].method_responses["String"].response_models["String"] #=> String # resp.resource_methods["String"].method_integration.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.resource_methods["String"].method_integration.http_method #=> String # resp.resource_methods["String"].method_integration.uri #=> String # resp.resource_methods["String"].method_integration.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.resource_methods["String"].method_integration.connection_id #=> String # resp.resource_methods["String"].method_integration.credentials #=> String # resp.resource_methods["String"].method_integration.request_parameters #=> Hash # resp.resource_methods["String"].method_integration.request_parameters["String"] #=> String # resp.resource_methods["String"].method_integration.request_templates #=> Hash # resp.resource_methods["String"].method_integration.request_templates["String"] #=> String # resp.resource_methods["String"].method_integration.passthrough_behavior #=> String # resp.resource_methods["String"].method_integration.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.resource_methods["String"].method_integration.timeout_in_millis #=> Integer # resp.resource_methods["String"].method_integration.cache_namespace #=> String # resp.resource_methods["String"].method_integration.cache_key_parameters #=> Array # resp.resource_methods["String"].method_integration.cache_key_parameters[0] #=> String # resp.resource_methods["String"].method_integration.integration_responses #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].status_code #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].selection_pattern #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].response_parameters #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].response_parameters["String"] #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].response_templates #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].response_templates["String"] #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.resource_methods["String"].method_integration.tls_config.insecure_skip_verification #=> Boolean # resp.resource_methods["String"].authorization_scopes #=> Array # resp.resource_methods["String"].authorization_scopes[0] #=> String # # @overload create_resource(params = {}) # @param [Hash] params ({}) def create_resource(params = {}, options = {}) req = build_request(:create_resource, params) req.send_request(options) end # Creates a new RestApi resource. # # @option params [required, String] :name # \[Required\] The name of the RestApi. # # @option params [String] :description # The description of the RestApi. # # @option params [String] :version # A version identifier for the API. # # @option params [String] :clone_from # The ID of the RestApi that you want to clone from. # # @option params [Array] :binary_media_types # The list of binary media types supported by the RestApi. By default, # the RestApi supports only UTF-8-encoded text payloads. # # @option params [Integer] :minimum_compression_size # A nullable integer that is used to enable compression (with # non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable # compression (with a null value) on an API. When compression is # enabled, compression or decompression is not applied on the payload if # the payload size is smaller than this value. Setting it to zero allows # compression for any payload size. # # @option params [String] :api_key_source # The source of the API key for metering requests according to a usage # plan. Valid values are: * `HEADER` to read the API key from the # `X-API-Key` header of a # request. # * `AUTHORIZER` to read the API key from the `UsageIdentifierKey` from # a custom authorizer. # # @option params [Types::EndpointConfiguration] :endpoint_configuration # The endpoint configuration of this RestApi showing the endpoint types # of the API. # # @option params [String] :policy # A stringified JSON policy document that applies to this RestApi regardless of the caller and Method configuration. # # @option params [Hash] :tags # The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @return [Types::RestApi] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RestApi#id #id} => String # * {Types::RestApi#name #name} => String # * {Types::RestApi#description #description} => String # * {Types::RestApi#created_date #created_date} => Time # * {Types::RestApi#version #version} => String # * {Types::RestApi#warnings #warnings} => Array<String> # * {Types::RestApi#binary_media_types #binary_media_types} => Array<String> # * {Types::RestApi#minimum_compression_size #minimum_compression_size} => Integer # * {Types::RestApi#api_key_source #api_key_source} => String # * {Types::RestApi#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::RestApi#policy #policy} => String # * {Types::RestApi#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.create_rest_api({ # name: "String", # required # description: "String", # version: "String", # clone_from: "String", # binary_media_types: ["String"], # minimum_compression_size: 1, # api_key_source: "HEADER", # accepts HEADER, AUTHORIZER # endpoint_configuration: { # types: ["REGIONAL"], # accepts REGIONAL, EDGE, PRIVATE # vpc_endpoint_ids: ["String"], # }, # policy: "String", # tags: { # "String" => "String", # }, # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.created_date #=> Time # resp.version #=> String # resp.warnings #=> Array # resp.warnings[0] #=> String # resp.binary_media_types #=> Array # resp.binary_media_types[0] #=> String # resp.minimum_compression_size #=> Integer # resp.api_key_source #=> String, one of "HEADER", "AUTHORIZER" # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.policy #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload create_rest_api(params = {}) # @param [Hash] params ({}) def create_rest_api(params = {}, options = {}) req = build_request(:create_rest_api, params) req.send_request(options) end # Creates a new Stage resource that references a pre-existing Deployment # for the API. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # \[Required\] The name for the Stage resource. Stage names can only # contain alphanumeric characters, hyphens, and underscores. Maximum # length is 128 characters. # # @option params [required, String] :deployment_id # \[Required\] The identifier of the Deployment resource for the Stage # resource. # # @option params [String] :description # The description of the Stage resource. # # @option params [Boolean] :cache_cluster_enabled # Whether cache clustering is enabled for the stage. # # @option params [String] :cache_cluster_size # The stage's cache cluster size. # # @option params [Hash] :variables # A map that defines the stage variables for the new Stage resource. # Variable names can have alphanumeric and underscore characters, and # the values must match `[A-Za-z0-9-._~:/?#&=,]+`. # # @option params [String] :documentation_version # The version of the associated API documentation. # # @option params [Types::CanarySettings] :canary_settings # The canary deployment settings of this stage. # # @option params [Boolean] :tracing_enabled # Specifies whether active tracing with X-ray is enabled for the Stage. # # @option params [Hash] :tags # The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @return [Types::Stage] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Stage#deployment_id #deployment_id} => String # * {Types::Stage#client_certificate_id #client_certificate_id} => String # * {Types::Stage#stage_name #stage_name} => String # * {Types::Stage#description #description} => String # * {Types::Stage#cache_cluster_enabled #cache_cluster_enabled} => Boolean # * {Types::Stage#cache_cluster_size #cache_cluster_size} => String # * {Types::Stage#cache_cluster_status #cache_cluster_status} => String # * {Types::Stage#method_settings #method_settings} => Hash<String,Types::MethodSetting> # * {Types::Stage#variables #variables} => Hash<String,String> # * {Types::Stage#documentation_version #documentation_version} => String # * {Types::Stage#access_log_settings #access_log_settings} => Types::AccessLogSettings # * {Types::Stage#canary_settings #canary_settings} => Types::CanarySettings # * {Types::Stage#tracing_enabled #tracing_enabled} => Boolean # * {Types::Stage#web_acl_arn #web_acl_arn} => String # * {Types::Stage#tags #tags} => Hash<String,String> # * {Types::Stage#created_date #created_date} => Time # * {Types::Stage#last_updated_date #last_updated_date} => Time # # @example Request syntax with placeholder values # # resp = client.create_stage({ # rest_api_id: "String", # required # stage_name: "String", # required # deployment_id: "String", # required # description: "String", # cache_cluster_enabled: false, # cache_cluster_size: "0.5", # accepts 0.5, 1.6, 6.1, 13.5, 28.4, 58.2, 118, 237 # variables: { # "String" => "String", # }, # documentation_version: "String", # canary_settings: { # percent_traffic: 1.0, # deployment_id: "String", # stage_variable_overrides: { # "String" => "String", # }, # use_stage_cache: false, # }, # tracing_enabled: false, # tags: { # "String" => "String", # }, # }) # # @example Response structure # # resp.deployment_id #=> String # resp.client_certificate_id #=> String # resp.stage_name #=> String # resp.description #=> String # resp.cache_cluster_enabled #=> Boolean # resp.cache_cluster_size #=> String, one of "0.5", "1.6", "6.1", "13.5", "28.4", "58.2", "118", "237" # resp.cache_cluster_status #=> String, one of "CREATE_IN_PROGRESS", "AVAILABLE", "DELETE_IN_PROGRESS", "NOT_AVAILABLE", "FLUSH_IN_PROGRESS" # resp.method_settings #=> Hash # resp.method_settings["String"].metrics_enabled #=> Boolean # resp.method_settings["String"].logging_level #=> String # resp.method_settings["String"].data_trace_enabled #=> Boolean # resp.method_settings["String"].throttling_burst_limit #=> Integer # resp.method_settings["String"].throttling_rate_limit #=> Float # resp.method_settings["String"].caching_enabled #=> Boolean # resp.method_settings["String"].cache_ttl_in_seconds #=> Integer # resp.method_settings["String"].cache_data_encrypted #=> Boolean # resp.method_settings["String"].require_authorization_for_cache_control #=> Boolean # resp.method_settings["String"].unauthorized_cache_control_header_strategy #=> String, one of "FAIL_WITH_403", "SUCCEED_WITH_RESPONSE_HEADER", "SUCCEED_WITHOUT_RESPONSE_HEADER" # resp.variables #=> Hash # resp.variables["String"] #=> String # resp.documentation_version #=> String # resp.access_log_settings.format #=> String # resp.access_log_settings.destination_arn #=> String # resp.canary_settings.percent_traffic #=> Float # resp.canary_settings.deployment_id #=> String # resp.canary_settings.stage_variable_overrides #=> Hash # resp.canary_settings.stage_variable_overrides["String"] #=> String # resp.canary_settings.use_stage_cache #=> Boolean # resp.tracing_enabled #=> Boolean # resp.web_acl_arn #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # resp.created_date #=> Time # resp.last_updated_date #=> Time # # @overload create_stage(params = {}) # @param [Hash] params ({}) def create_stage(params = {}, options = {}) req = build_request(:create_stage, params) req.send_request(options) end # Creates a usage plan with the throttle and quota limits, as well as # the associated API stages, specified in the payload. # # @option params [required, String] :name # \[Required\] The name of the usage plan. # # @option params [String] :description # The description of the usage plan. # # @option params [Array] :api_stages # The associated API stages of the usage plan. # # @option params [Types::ThrottleSettings] :throttle # The throttling limits of the usage plan. # # @option params [Types::QuotaSettings] :quota # The quota of the usage plan. # # @option params [Hash] :tags # The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @return [Types::UsagePlan] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UsagePlan#id #id} => String # * {Types::UsagePlan#name #name} => String # * {Types::UsagePlan#description #description} => String # * {Types::UsagePlan#api_stages #api_stages} => Array<Types::ApiStage> # * {Types::UsagePlan#throttle #throttle} => Types::ThrottleSettings # * {Types::UsagePlan#quota #quota} => Types::QuotaSettings # * {Types::UsagePlan#product_code #product_code} => String # * {Types::UsagePlan#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.create_usage_plan({ # name: "String", # required # description: "String", # api_stages: [ # { # api_id: "String", # stage: "String", # throttle: { # "String" => { # burst_limit: 1, # rate_limit: 1.0, # }, # }, # }, # ], # throttle: { # burst_limit: 1, # rate_limit: 1.0, # }, # quota: { # limit: 1, # offset: 1, # period: "DAY", # accepts DAY, WEEK, MONTH # }, # tags: { # "String" => "String", # }, # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.api_stages #=> Array # resp.api_stages[0].api_id #=> String # resp.api_stages[0].stage #=> String # resp.api_stages[0].throttle #=> Hash # resp.api_stages[0].throttle["String"].burst_limit #=> Integer # resp.api_stages[0].throttle["String"].rate_limit #=> Float # resp.throttle.burst_limit #=> Integer # resp.throttle.rate_limit #=> Float # resp.quota.limit #=> Integer # resp.quota.offset #=> Integer # resp.quota.period #=> String, one of "DAY", "WEEK", "MONTH" # resp.product_code #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload create_usage_plan(params = {}) # @param [Hash] params ({}) def create_usage_plan(params = {}, options = {}) req = build_request(:create_usage_plan, params) req.send_request(options) end # Creates a usage plan key for adding an existing API key to a usage # plan. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the UsagePlan resource representing the usage # plan containing the to-be-created UsagePlanKey resource representing a # plan customer. # # @option params [required, String] :key_id # \[Required\] The identifier of a UsagePlanKey resource for a plan # customer. # # @option params [required, String] :key_type # \[Required\] The type of a UsagePlanKey resource for a plan customer. # # @return [Types::UsagePlanKey] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UsagePlanKey#id #id} => String # * {Types::UsagePlanKey#type #type} => String # * {Types::UsagePlanKey#value #value} => String # * {Types::UsagePlanKey#name #name} => String # # @example Request syntax with placeholder values # # resp = client.create_usage_plan_key({ # usage_plan_id: "String", # required # key_id: "String", # required # key_type: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.type #=> String # resp.value #=> String # resp.name #=> String # # @overload create_usage_plan_key(params = {}) # @param [Hash] params ({}) def create_usage_plan_key(params = {}, options = {}) req = build_request(:create_usage_plan_key, params) req.send_request(options) end # Creates a VPC link, under the caller's account in a selected region, # in an asynchronous operation that typically takes 2-4 minutes to # complete and become operational. The caller must have permissions to # create and update VPC Endpoint services. # # @option params [required, String] :name # \[Required\] The name used to label and identify the VPC link. # # @option params [String] :description # The description of the VPC link. # # @option params [required, Array] :target_arns # \[Required\] The ARN of the network load balancer of the VPC targeted # by the VPC link. The network load balancer must be owned by the same # AWS account of the API owner. # # @option params [Hash] :tags # The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @return [Types::VpcLink] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::VpcLink#id #id} => String # * {Types::VpcLink#name #name} => String # * {Types::VpcLink#description #description} => String # * {Types::VpcLink#target_arns #target_arns} => Array<String> # * {Types::VpcLink#status #status} => String # * {Types::VpcLink#status_message #status_message} => String # * {Types::VpcLink#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.create_vpc_link({ # name: "String", # required # description: "String", # target_arns: ["String"], # required # tags: { # "String" => "String", # }, # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.target_arns #=> Array # resp.target_arns[0] #=> String # resp.status #=> String, one of "AVAILABLE", "PENDING", "DELETING", "FAILED" # resp.status_message #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload create_vpc_link(params = {}) # @param [Hash] params ({}) def create_vpc_link(params = {}, options = {}) req = build_request(:create_vpc_link, params) req.send_request(options) end # Deletes the ApiKey resource. # # @option params [required, String] :api_key # \[Required\] The identifier of the ApiKey resource to be deleted. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_api_key({ # api_key: "String", # required # }) # # @overload delete_api_key(params = {}) # @param [Hash] params ({}) def delete_api_key(params = {}, options = {}) req = build_request(:delete_api_key, params) req.send_request(options) end # Deletes an existing Authorizer resource. # #
# [AWS CLI][1] #
# # # # [1]: https://docs.aws.amazon.com/cli/latest/reference/apigateway/delete-authorizer.html # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :authorizer_id # \[Required\] The identifier of the Authorizer resource. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_authorizer({ # rest_api_id: "String", # required # authorizer_id: "String", # required # }) # # @overload delete_authorizer(params = {}) # @param [Hash] params ({}) def delete_authorizer(params = {}, options = {}) req = build_request(:delete_authorizer, params) req.send_request(options) end # Deletes the BasePathMapping resource. # # @option params [required, String] :domain_name # \[Required\] The domain name of the BasePathMapping resource to # delete. # # @option params [required, String] :base_path # \[Required\] The base path name of the BasePathMapping resource to # delete. # # To specify an empty base path, set this parameter to `'(none)'`. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_base_path_mapping({ # domain_name: "String", # required # base_path: "String", # required # }) # # @overload delete_base_path_mapping(params = {}) # @param [Hash] params ({}) def delete_base_path_mapping(params = {}, options = {}) req = build_request(:delete_base_path_mapping, params) req.send_request(options) end # Deletes the ClientCertificate resource. # # @option params [required, String] :client_certificate_id # \[Required\] The identifier of the ClientCertificate resource to be # deleted. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_client_certificate({ # client_certificate_id: "String", # required # }) # # @overload delete_client_certificate(params = {}) # @param [Hash] params ({}) def delete_client_certificate(params = {}, options = {}) req = build_request(:delete_client_certificate, params) req.send_request(options) end # Deletes a Deployment resource. Deleting a deployment will only succeed # if there are no Stage resources associated with it. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :deployment_id # \[Required\] The identifier of the Deployment resource to delete. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_deployment({ # rest_api_id: "String", # required # deployment_id: "String", # required # }) # # @overload delete_deployment(params = {}) # @param [Hash] params ({}) def delete_deployment(params = {}, options = {}) req = build_request(:delete_deployment, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :documentation_part_id # \[Required\] The identifier of the to-be-deleted documentation part. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_documentation_part({ # rest_api_id: "String", # required # documentation_part_id: "String", # required # }) # # @overload delete_documentation_part(params = {}) # @param [Hash] params ({}) def delete_documentation_part(params = {}, options = {}) req = build_request(:delete_documentation_part, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :documentation_version # \[Required\] The version identifier of a to-be-deleted documentation # snapshot. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_documentation_version({ # rest_api_id: "String", # required # documentation_version: "String", # required # }) # # @overload delete_documentation_version(params = {}) # @param [Hash] params ({}) def delete_documentation_version(params = {}, options = {}) req = build_request(:delete_documentation_version, params) req.send_request(options) end # Deletes the DomainName resource. # # @option params [required, String] :domain_name # \[Required\] The name of the DomainName resource to be deleted. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_domain_name({ # domain_name: "String", # required # }) # # @overload delete_domain_name(params = {}) # @param [Hash] params ({}) def delete_domain_name(params = {}, options = {}) req = build_request(:delete_domain_name, params) req.send_request(options) end # Clears any customization of a GatewayResponse of a specified response # type on the given RestApi and resets it with the default settings. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :response_type # \[Required\] The response type of the associated GatewayResponse. # Valid values are # * ACCESS\_DENIED # * API\_CONFIGURATION\_ERROR # * AUTHORIZER\_FAILURE # * AUTHORIZER\_CONFIGURATION\_ERROR # * BAD\_REQUEST\_PARAMETERS # * BAD\_REQUEST\_BODY # * DEFAULT\_4XX # * DEFAULT\_5XX # * EXPIRED\_TOKEN # * INVALID\_SIGNATURE # * INTEGRATION\_FAILURE # * INTEGRATION\_TIMEOUT # * INVALID\_API\_KEY # * MISSING\_AUTHENTICATION\_TOKEN # * QUOTA\_EXCEEDED # * REQUEST\_TOO\_LARGE # * RESOURCE\_NOT\_FOUND # * THROTTLED # * UNAUTHORIZED # * UNSUPPORTED\_MEDIA\_TYPE # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_gateway_response({ # rest_api_id: "String", # required # response_type: "DEFAULT_4XX", # required, accepts DEFAULT_4XX, DEFAULT_5XX, RESOURCE_NOT_FOUND, UNAUTHORIZED, INVALID_API_KEY, ACCESS_DENIED, AUTHORIZER_FAILURE, AUTHORIZER_CONFIGURATION_ERROR, INVALID_SIGNATURE, EXPIRED_TOKEN, MISSING_AUTHENTICATION_TOKEN, INTEGRATION_FAILURE, INTEGRATION_TIMEOUT, API_CONFIGURATION_ERROR, UNSUPPORTED_MEDIA_TYPE, BAD_REQUEST_PARAMETERS, BAD_REQUEST_BODY, REQUEST_TOO_LARGE, THROTTLED, QUOTA_EXCEEDED # }) # # @overload delete_gateway_response(params = {}) # @param [Hash] params ({}) def delete_gateway_response(params = {}, options = {}) req = build_request(:delete_gateway_response, params) req.send_request(options) end # Represents a delete integration. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies a delete integration request's resource # identifier. # # @option params [required, String] :http_method # \[Required\] Specifies a delete integration request's HTTP method. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_integration({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # }) # # @overload delete_integration(params = {}) # @param [Hash] params ({}) def delete_integration(params = {}, options = {}) req = build_request(:delete_integration, params) req.send_request(options) end # Represents a delete integration response. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies a delete integration response request's # resource identifier. # # @option params [required, String] :http_method # \[Required\] Specifies a delete integration response request's HTTP # method. # # @option params [required, String] :status_code # \[Required\] Specifies a delete integration response request's status # code. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_integration_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # }) # # @overload delete_integration_response(params = {}) # @param [Hash] params ({}) def delete_integration_response(params = {}, options = {}) req = build_request(:delete_integration_response, params) req.send_request(options) end # Deletes an existing Method resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the Method resource. # # @option params [required, String] :http_method # \[Required\] The HTTP verb of the Method resource. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_method({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # }) # # @overload delete_method(params = {}) # @param [Hash] params ({}) def delete_method(params = {}, options = {}) req = build_request(:delete_method, params) req.send_request(options) end # Deletes an existing MethodResponse resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the MethodResponse resource. # # @option params [required, String] :http_method # \[Required\] The HTTP verb of the Method resource. # # @option params [required, String] :status_code # \[Required\] The status code identifier for the MethodResponse # resource. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_method_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # }) # # @overload delete_method_response(params = {}) # @param [Hash] params ({}) def delete_method_response(params = {}, options = {}) req = build_request(:delete_method_response, params) req.send_request(options) end # Deletes a model. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :model_name # \[Required\] The name of the model to delete. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_model({ # rest_api_id: "String", # required # model_name: "String", # required # }) # # @overload delete_model(params = {}) # @param [Hash] params ({}) def delete_model(params = {}, options = {}) req = build_request(:delete_model, params) req.send_request(options) end # Deletes a RequestValidator of a given RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :request_validator_id # \[Required\] The identifier of the RequestValidator to be deleted. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_request_validator({ # rest_api_id: "String", # required # request_validator_id: "String", # required # }) # # @overload delete_request_validator(params = {}) # @param [Hash] params ({}) def delete_request_validator(params = {}, options = {}) req = build_request(:delete_request_validator, params) req.send_request(options) end # Deletes a Resource resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The identifier of the Resource resource. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_resource({ # rest_api_id: "String", # required # resource_id: "String", # required # }) # # @overload delete_resource(params = {}) # @param [Hash] params ({}) def delete_resource(params = {}, options = {}) req = build_request(:delete_resource, params) req.send_request(options) end # Deletes the specified API. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_rest_api({ # rest_api_id: "String", # required # }) # # @overload delete_rest_api(params = {}) # @param [Hash] params ({}) def delete_rest_api(params = {}, options = {}) req = build_request(:delete_rest_api, params) req.send_request(options) end # Deletes a Stage resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # \[Required\] The name of the Stage resource to delete. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_stage({ # rest_api_id: "String", # required # stage_name: "String", # required # }) # # @overload delete_stage(params = {}) # @param [Hash] params ({}) def delete_stage(params = {}, options = {}) req = build_request(:delete_stage, params) req.send_request(options) end # Deletes a usage plan of a given plan Id. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the to-be-deleted usage plan. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_usage_plan({ # usage_plan_id: "String", # required # }) # # @overload delete_usage_plan(params = {}) # @param [Hash] params ({}) def delete_usage_plan(params = {}, options = {}) req = build_request(:delete_usage_plan, params) req.send_request(options) end # Deletes a usage plan key and remove the underlying API key from the # associated usage plan. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the UsagePlan resource representing the usage # plan containing the to-be-deleted UsagePlanKey resource representing a # plan customer. # # @option params [required, String] :key_id # \[Required\] The Id of the UsagePlanKey resource to be deleted. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_usage_plan_key({ # usage_plan_id: "String", # required # key_id: "String", # required # }) # # @overload delete_usage_plan_key(params = {}) # @param [Hash] params ({}) def delete_usage_plan_key(params = {}, options = {}) req = build_request(:delete_usage_plan_key, params) req.send_request(options) end # Deletes an existing VpcLink of a specified identifier. # # @option params [required, String] :vpc_link_id # \[Required\] The identifier of the VpcLink. It is used in an # Integration to reference this VpcLink. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_vpc_link({ # vpc_link_id: "String", # required # }) # # @overload delete_vpc_link(params = {}) # @param [Hash] params ({}) def delete_vpc_link(params = {}, options = {}) req = build_request(:delete_vpc_link, params) req.send_request(options) end # Flushes all authorizer cache entries on a stage. # # @option params [required, String] :rest_api_id # The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # The name of the stage to flush. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.flush_stage_authorizers_cache({ # rest_api_id: "String", # required # stage_name: "String", # required # }) # # @overload flush_stage_authorizers_cache(params = {}) # @param [Hash] params ({}) def flush_stage_authorizers_cache(params = {}, options = {}) req = build_request(:flush_stage_authorizers_cache, params) req.send_request(options) end # Flushes a stage's cache. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # \[Required\] The name of the stage to flush its cache. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.flush_stage_cache({ # rest_api_id: "String", # required # stage_name: "String", # required # }) # # @overload flush_stage_cache(params = {}) # @param [Hash] params ({}) def flush_stage_cache(params = {}, options = {}) req = build_request(:flush_stage_cache, params) req.send_request(options) end # Generates a ClientCertificate resource. # # @option params [String] :description # The description of the ClientCertificate. # # @option params [Hash] :tags # The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @return [Types::ClientCertificate] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ClientCertificate#client_certificate_id #client_certificate_id} => String # * {Types::ClientCertificate#description #description} => String # * {Types::ClientCertificate#pem_encoded_certificate #pem_encoded_certificate} => String # * {Types::ClientCertificate#created_date #created_date} => Time # * {Types::ClientCertificate#expiration_date #expiration_date} => Time # * {Types::ClientCertificate#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.generate_client_certificate({ # description: "String", # tags: { # "String" => "String", # }, # }) # # @example Response structure # # resp.client_certificate_id #=> String # resp.description #=> String # resp.pem_encoded_certificate #=> String # resp.created_date #=> Time # resp.expiration_date #=> Time # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload generate_client_certificate(params = {}) # @param [Hash] params ({}) def generate_client_certificate(params = {}, options = {}) req = build_request(:generate_client_certificate, params) req.send_request(options) end # Gets information about the current Account resource. # # @return [Types::Account] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Account#cloudwatch_role_arn #cloudwatch_role_arn} => String # * {Types::Account#throttle_settings #throttle_settings} => Types::ThrottleSettings # * {Types::Account#features #features} => Array<String> # * {Types::Account#api_key_version #api_key_version} => String # # @example Response structure # # resp.cloudwatch_role_arn #=> String # resp.throttle_settings.burst_limit #=> Integer # resp.throttle_settings.rate_limit #=> Float # resp.features #=> Array # resp.features[0] #=> String # resp.api_key_version #=> String # # @overload get_account(params = {}) # @param [Hash] params ({}) def get_account(params = {}, options = {}) req = build_request(:get_account, params) req.send_request(options) end # Gets information about the current ApiKey resource. # # @option params [required, String] :api_key # \[Required\] The identifier of the ApiKey resource. # # @option params [Boolean] :include_value # A boolean flag to specify whether (`true`) or not (`false`) the result # contains the key value. # # @return [Types::ApiKey] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ApiKey#id #id} => String # * {Types::ApiKey#value #value} => String # * {Types::ApiKey#name #name} => String # * {Types::ApiKey#customer_id #customer_id} => String # * {Types::ApiKey#description #description} => String # * {Types::ApiKey#enabled #enabled} => Boolean # * {Types::ApiKey#created_date #created_date} => Time # * {Types::ApiKey#last_updated_date #last_updated_date} => Time # * {Types::ApiKey#stage_keys #stage_keys} => Array<String> # * {Types::ApiKey#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_api_key({ # api_key: "String", # required # include_value: false, # }) # # @example Response structure # # resp.id #=> String # resp.value #=> String # resp.name #=> String # resp.customer_id #=> String # resp.description #=> String # resp.enabled #=> Boolean # resp.created_date #=> Time # resp.last_updated_date #=> Time # resp.stage_keys #=> Array # resp.stage_keys[0] #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload get_api_key(params = {}) # @param [Hash] params ({}) def get_api_key(params = {}, options = {}) req = build_request(:get_api_key, params) req.send_request(options) end # Gets information about the current ApiKeys resource. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @option params [String] :name_query # The name of queried API keys. # # @option params [String] :customer_id # The identifier of a customer in AWS Marketplace or an external system, # such as a developer portal. # # @option params [Boolean] :include_values # A boolean flag to specify whether (`true`) or not (`false`) the result # contains key values. # # @return [Types::ApiKeys] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ApiKeys#warnings #warnings} => Array<String> # * {Types::ApiKeys#position #position} => String # * {Types::ApiKeys#items #items} => Array<Types::ApiKey> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_api_keys({ # position: "String", # limit: 1, # name_query: "String", # customer_id: "String", # include_values: false, # }) # # @example Response structure # # resp.warnings #=> Array # resp.warnings[0] #=> String # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].value #=> String # resp.items[0].name #=> String # resp.items[0].customer_id #=> String # resp.items[0].description #=> String # resp.items[0].enabled #=> Boolean # resp.items[0].created_date #=> Time # resp.items[0].last_updated_date #=> Time # resp.items[0].stage_keys #=> Array # resp.items[0].stage_keys[0] #=> String # resp.items[0].tags #=> Hash # resp.items[0].tags["String"] #=> String # # @overload get_api_keys(params = {}) # @param [Hash] params ({}) def get_api_keys(params = {}, options = {}) req = build_request(:get_api_keys, params) req.send_request(options) end # Describe an existing Authorizer resource. # #
# [AWS CLI][1] #
# # # # [1]: https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-authorizer.html # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :authorizer_id # \[Required\] The identifier of the Authorizer resource. # # @return [Types::Authorizer] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Authorizer#id #id} => String # * {Types::Authorizer#name #name} => String # * {Types::Authorizer#type #type} => String # * {Types::Authorizer#provider_arns #provider_arns} => Array<String> # * {Types::Authorizer#auth_type #auth_type} => String # * {Types::Authorizer#authorizer_uri #authorizer_uri} => String # * {Types::Authorizer#authorizer_credentials #authorizer_credentials} => String # * {Types::Authorizer#identity_source #identity_source} => String # * {Types::Authorizer#identity_validation_expression #identity_validation_expression} => String # * {Types::Authorizer#authorizer_result_ttl_in_seconds #authorizer_result_ttl_in_seconds} => Integer # # @example Request syntax with placeholder values # # resp = client.get_authorizer({ # rest_api_id: "String", # required # authorizer_id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.type #=> String, one of "TOKEN", "REQUEST", "COGNITO_USER_POOLS" # resp.provider_arns #=> Array # resp.provider_arns[0] #=> String # resp.auth_type #=> String # resp.authorizer_uri #=> String # resp.authorizer_credentials #=> String # resp.identity_source #=> String # resp.identity_validation_expression #=> String # resp.authorizer_result_ttl_in_seconds #=> Integer # # @overload get_authorizer(params = {}) # @param [Hash] params ({}) def get_authorizer(params = {}, options = {}) req = build_request(:get_authorizer, params) req.send_request(options) end # Describe an existing Authorizers resource. # #
# [AWS CLI][1] #
# # # # [1]: https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-authorizers.html # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::Authorizers] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Authorizers#position #position} => String # * {Types::Authorizers#items #items} => Array<Types::Authorizer> # # @example Request syntax with placeholder values # # resp = client.get_authorizers({ # rest_api_id: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].name #=> String # resp.items[0].type #=> String, one of "TOKEN", "REQUEST", "COGNITO_USER_POOLS" # resp.items[0].provider_arns #=> Array # resp.items[0].provider_arns[0] #=> String # resp.items[0].auth_type #=> String # resp.items[0].authorizer_uri #=> String # resp.items[0].authorizer_credentials #=> String # resp.items[0].identity_source #=> String # resp.items[0].identity_validation_expression #=> String # resp.items[0].authorizer_result_ttl_in_seconds #=> Integer # # @overload get_authorizers(params = {}) # @param [Hash] params ({}) def get_authorizers(params = {}, options = {}) req = build_request(:get_authorizers, params) req.send_request(options) end # Describe a BasePathMapping resource. # # @option params [required, String] :domain_name # \[Required\] The domain name of the BasePathMapping resource to be # described. # # @option params [required, String] :base_path # \[Required\] The base path name that callers of the API must provide # as part of the URL after the domain name. This value must be unique # for all of the mappings across a single API. Specify '(none)' if you # do not want callers to specify any base path name after the domain # name. # # @return [Types::BasePathMapping] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BasePathMapping#base_path #base_path} => String # * {Types::BasePathMapping#rest_api_id #rest_api_id} => String # * {Types::BasePathMapping#stage #stage} => String # # @example Request syntax with placeholder values # # resp = client.get_base_path_mapping({ # domain_name: "String", # required # base_path: "String", # required # }) # # @example Response structure # # resp.base_path #=> String # resp.rest_api_id #=> String # resp.stage #=> String # # @overload get_base_path_mapping(params = {}) # @param [Hash] params ({}) def get_base_path_mapping(params = {}, options = {}) req = build_request(:get_base_path_mapping, params) req.send_request(options) end # Represents a collection of BasePathMapping resources. # # @option params [required, String] :domain_name # \[Required\] The domain name of a BasePathMapping resource. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::BasePathMappings] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BasePathMappings#position #position} => String # * {Types::BasePathMappings#items #items} => Array<Types::BasePathMapping> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_base_path_mappings({ # domain_name: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].base_path #=> String # resp.items[0].rest_api_id #=> String # resp.items[0].stage #=> String # # @overload get_base_path_mappings(params = {}) # @param [Hash] params ({}) def get_base_path_mappings(params = {}, options = {}) req = build_request(:get_base_path_mappings, params) req.send_request(options) end # Gets information about the current ClientCertificate resource. # # @option params [required, String] :client_certificate_id # \[Required\] The identifier of the ClientCertificate resource to be # described. # # @return [Types::ClientCertificate] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ClientCertificate#client_certificate_id #client_certificate_id} => String # * {Types::ClientCertificate#description #description} => String # * {Types::ClientCertificate#pem_encoded_certificate #pem_encoded_certificate} => String # * {Types::ClientCertificate#created_date #created_date} => Time # * {Types::ClientCertificate#expiration_date #expiration_date} => Time # * {Types::ClientCertificate#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_client_certificate({ # client_certificate_id: "String", # required # }) # # @example Response structure # # resp.client_certificate_id #=> String # resp.description #=> String # resp.pem_encoded_certificate #=> String # resp.created_date #=> Time # resp.expiration_date #=> Time # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload get_client_certificate(params = {}) # @param [Hash] params ({}) def get_client_certificate(params = {}, options = {}) req = build_request(:get_client_certificate, params) req.send_request(options) end # Gets a collection of ClientCertificate resources. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::ClientCertificates] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ClientCertificates#position #position} => String # * {Types::ClientCertificates#items #items} => Array<Types::ClientCertificate> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_client_certificates({ # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].client_certificate_id #=> String # resp.items[0].description #=> String # resp.items[0].pem_encoded_certificate #=> String # resp.items[0].created_date #=> Time # resp.items[0].expiration_date #=> Time # resp.items[0].tags #=> Hash # resp.items[0].tags["String"] #=> String # # @overload get_client_certificates(params = {}) # @param [Hash] params ({}) def get_client_certificates(params = {}, options = {}) req = build_request(:get_client_certificates, params) req.send_request(options) end # Gets information about a Deployment resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :deployment_id # \[Required\] The identifier of the Deployment resource to get # information about. # # @option params [Array] :embed # A query parameter to retrieve the specified embedded resources of the # returned Deployment resource in the response. In a REST API call, this # `embed` parameter value is a list of comma-separated strings, as in # `GET # /restapis/\{restapi_id\}/deployments/\{deployment_id\}?embed=var1,var2`. # The SDK and other platform-dependent libraries might use a different # format for the list. Currently, this request supports only retrieval # of the embedded API summary this way. Hence, the parameter value must # be a single-valued list containing only the `"apisummary"` string. For # example, `GET # /restapis/\{restapi_id\}/deployments/\{deployment_id\}?embed=apisummary`. # # @return [Types::Deployment] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Deployment#id #id} => String # * {Types::Deployment#description #description} => String # * {Types::Deployment#created_date #created_date} => Time # * {Types::Deployment#api_summary #api_summary} => Hash<String,Hash<String,Types::MethodSnapshot>> # # @example Request syntax with placeholder values # # resp = client.get_deployment({ # rest_api_id: "String", # required # deployment_id: "String", # required # embed: ["String"], # }) # # @example Response structure # # resp.id #=> String # resp.description #=> String # resp.created_date #=> Time # resp.api_summary #=> Hash # resp.api_summary["String"] #=> Hash # resp.api_summary["String"]["String"].authorization_type #=> String # resp.api_summary["String"]["String"].api_key_required #=> Boolean # # @overload get_deployment(params = {}) # @param [Hash] params ({}) def get_deployment(params = {}, options = {}) req = build_request(:get_deployment, params) req.send_request(options) end # Gets information about a Deployments collection. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::Deployments] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Deployments#position #position} => String # * {Types::Deployments#items #items} => Array<Types::Deployment> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_deployments({ # rest_api_id: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].description #=> String # resp.items[0].created_date #=> Time # resp.items[0].api_summary #=> Hash # resp.items[0].api_summary["String"] #=> Hash # resp.items[0].api_summary["String"]["String"].authorization_type #=> String # resp.items[0].api_summary["String"]["String"].api_key_required #=> Boolean # # @overload get_deployments(params = {}) # @param [Hash] params ({}) def get_deployments(params = {}, options = {}) req = build_request(:get_deployments, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :documentation_part_id # \[Required\] The string identifier of the associated RestApi. # # @return [Types::DocumentationPart] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationPart#id #id} => String # * {Types::DocumentationPart#location #location} => Types::DocumentationPartLocation # * {Types::DocumentationPart#properties #properties} => String # # @example Request syntax with placeholder values # # resp = client.get_documentation_part({ # rest_api_id: "String", # required # documentation_part_id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.location.type #=> String, one of "API", "AUTHORIZER", "MODEL", "RESOURCE", "METHOD", "PATH_PARAMETER", "QUERY_PARAMETER", "REQUEST_HEADER", "REQUEST_BODY", "RESPONSE", "RESPONSE_HEADER", "RESPONSE_BODY" # resp.location.path #=> String # resp.location.method #=> String # resp.location.status_code #=> String # resp.location.name #=> String # resp.properties #=> String # # @overload get_documentation_part(params = {}) # @param [Hash] params ({}) def get_documentation_part(params = {}, options = {}) req = build_request(:get_documentation_part, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :type # The type of API entities of the to-be-retrieved documentation parts. # # @option params [String] :name_query # The name of API entities of the to-be-retrieved documentation parts. # # @option params [String] :path # The path of API entities of the to-be-retrieved documentation parts. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @option params [String] :location_status # The status of the API documentation parts to retrieve. Valid values # are `DOCUMENTED` for retrieving DocumentationPart resources with # content and `UNDOCUMENTED` for DocumentationPart resources without # content. # # @return [Types::DocumentationParts] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationParts#position #position} => String # * {Types::DocumentationParts#items #items} => Array<Types::DocumentationPart> # # @example Request syntax with placeholder values # # resp = client.get_documentation_parts({ # rest_api_id: "String", # required # type: "API", # accepts API, AUTHORIZER, MODEL, RESOURCE, METHOD, PATH_PARAMETER, QUERY_PARAMETER, REQUEST_HEADER, REQUEST_BODY, RESPONSE, RESPONSE_HEADER, RESPONSE_BODY # name_query: "String", # path: "String", # position: "String", # limit: 1, # location_status: "DOCUMENTED", # accepts DOCUMENTED, UNDOCUMENTED # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].location.type #=> String, one of "API", "AUTHORIZER", "MODEL", "RESOURCE", "METHOD", "PATH_PARAMETER", "QUERY_PARAMETER", "REQUEST_HEADER", "REQUEST_BODY", "RESPONSE", "RESPONSE_HEADER", "RESPONSE_BODY" # resp.items[0].location.path #=> String # resp.items[0].location.method #=> String # resp.items[0].location.status_code #=> String # resp.items[0].location.name #=> String # resp.items[0].properties #=> String # # @overload get_documentation_parts(params = {}) # @param [Hash] params ({}) def get_documentation_parts(params = {}, options = {}) req = build_request(:get_documentation_parts, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :documentation_version # \[Required\] The version identifier of the to-be-retrieved # documentation snapshot. # # @return [Types::DocumentationVersion] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationVersion#version #version} => String # * {Types::DocumentationVersion#created_date #created_date} => Time # * {Types::DocumentationVersion#description #description} => String # # @example Request syntax with placeholder values # # resp = client.get_documentation_version({ # rest_api_id: "String", # required # documentation_version: "String", # required # }) # # @example Response structure # # resp.version #=> String # resp.created_date #=> Time # resp.description #=> String # # @overload get_documentation_version(params = {}) # @param [Hash] params ({}) def get_documentation_version(params = {}, options = {}) req = build_request(:get_documentation_version, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::DocumentationVersions] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationVersions#position #position} => String # * {Types::DocumentationVersions#items #items} => Array<Types::DocumentationVersion> # # @example Request syntax with placeholder values # # resp = client.get_documentation_versions({ # rest_api_id: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].version #=> String # resp.items[0].created_date #=> Time # resp.items[0].description #=> String # # @overload get_documentation_versions(params = {}) # @param [Hash] params ({}) def get_documentation_versions(params = {}, options = {}) req = build_request(:get_documentation_versions, params) req.send_request(options) end # Represents a domain name that is contained in a simpler, more # intuitive URL that can be called. # # @option params [required, String] :domain_name # \[Required\] The name of the DomainName resource. # # @return [Types::DomainName] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DomainName#domain_name #domain_name} => String # * {Types::DomainName#certificate_name #certificate_name} => String # * {Types::DomainName#certificate_arn #certificate_arn} => String # * {Types::DomainName#certificate_upload_date #certificate_upload_date} => Time # * {Types::DomainName#regional_domain_name #regional_domain_name} => String # * {Types::DomainName#regional_hosted_zone_id #regional_hosted_zone_id} => String # * {Types::DomainName#regional_certificate_name #regional_certificate_name} => String # * {Types::DomainName#regional_certificate_arn #regional_certificate_arn} => String # * {Types::DomainName#distribution_domain_name #distribution_domain_name} => String # * {Types::DomainName#distribution_hosted_zone_id #distribution_hosted_zone_id} => String # * {Types::DomainName#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::DomainName#domain_name_status #domain_name_status} => String # * {Types::DomainName#domain_name_status_message #domain_name_status_message} => String # * {Types::DomainName#security_policy #security_policy} => String # * {Types::DomainName#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_domain_name({ # domain_name: "String", # required # }) # # @example Response structure # # resp.domain_name #=> String # resp.certificate_name #=> String # resp.certificate_arn #=> String # resp.certificate_upload_date #=> Time # resp.regional_domain_name #=> String # resp.regional_hosted_zone_id #=> String # resp.regional_certificate_name #=> String # resp.regional_certificate_arn #=> String # resp.distribution_domain_name #=> String # resp.distribution_hosted_zone_id #=> String # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.domain_name_status #=> String, one of "AVAILABLE", "UPDATING", "PENDING" # resp.domain_name_status_message #=> String # resp.security_policy #=> String, one of "TLS_1_0", "TLS_1_2" # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload get_domain_name(params = {}) # @param [Hash] params ({}) def get_domain_name(params = {}, options = {}) req = build_request(:get_domain_name, params) req.send_request(options) end # Represents a collection of DomainName resources. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::DomainNames] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DomainNames#position #position} => String # * {Types::DomainNames#items #items} => Array<Types::DomainName> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_domain_names({ # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].domain_name #=> String # resp.items[0].certificate_name #=> String # resp.items[0].certificate_arn #=> String # resp.items[0].certificate_upload_date #=> Time # resp.items[0].regional_domain_name #=> String # resp.items[0].regional_hosted_zone_id #=> String # resp.items[0].regional_certificate_name #=> String # resp.items[0].regional_certificate_arn #=> String # resp.items[0].distribution_domain_name #=> String # resp.items[0].distribution_hosted_zone_id #=> String # resp.items[0].endpoint_configuration.types #=> Array # resp.items[0].endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.items[0].endpoint_configuration.vpc_endpoint_ids #=> Array # resp.items[0].endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.items[0].domain_name_status #=> String, one of "AVAILABLE", "UPDATING", "PENDING" # resp.items[0].domain_name_status_message #=> String # resp.items[0].security_policy #=> String, one of "TLS_1_0", "TLS_1_2" # resp.items[0].tags #=> Hash # resp.items[0].tags["String"] #=> String # # @overload get_domain_names(params = {}) # @param [Hash] params ({}) def get_domain_names(params = {}, options = {}) req = build_request(:get_domain_names, params) req.send_request(options) end # Exports a deployed version of a RestApi in a specified format. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # \[Required\] The name of the Stage that will be exported. # # @option params [required, String] :export_type # \[Required\] The type of export. Acceptable values are 'oas30' for # OpenAPI 3.0.x and 'swagger' for Swagger/OpenAPI 2.0. # # @option params [Hash] :parameters # A key-value map of query string parameters that specify properties of # the export, depending on the requested `exportType`. For `exportType` # `oas30` and `swagger`, any combination of the following parameters are # supported: `extensions='integrations'` or `extensions='apigateway'` # will export the API with x-amazon-apigateway-integration extensions. # `extensions='authorizers'` will export the API with # x-amazon-apigateway-authorizer extensions. `postman` will export the # API with Postman extensions, allowing for import to the Postman tool # # @option params [String] :accepts # The content-type of the export, for example `application/json`. # Currently `application/json` and `application/yaml` are supported for # `exportType` of`oas30` and `swagger`. This should be specified in the # `Accept` header for direct API requests. # # @return [Types::ExportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ExportResponse#content_type #content_type} => String # * {Types::ExportResponse#content_disposition #content_disposition} => String # * {Types::ExportResponse#body #body} => String # # @example Request syntax with placeholder values # # resp = client.get_export({ # rest_api_id: "String", # required # stage_name: "String", # required # export_type: "String", # required # parameters: { # "String" => "String", # }, # accepts: "String", # }) # # @example Response structure # # resp.content_type #=> String # resp.content_disposition #=> String # resp.body #=> String # # @overload get_export(params = {}) # @param [Hash] params ({}) def get_export(params = {}, options = {}) req = build_request(:get_export, params) req.send_request(options) end # Gets a GatewayResponse of a specified response type on the given # RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :response_type # \[Required\] The response type of the associated GatewayResponse. # Valid values are # * ACCESS\_DENIED # * API\_CONFIGURATION\_ERROR # * AUTHORIZER\_FAILURE # * AUTHORIZER\_CONFIGURATION\_ERROR # * BAD\_REQUEST\_PARAMETERS # * BAD\_REQUEST\_BODY # * DEFAULT\_4XX # * DEFAULT\_5XX # * EXPIRED\_TOKEN # * INVALID\_SIGNATURE # * INTEGRATION\_FAILURE # * INTEGRATION\_TIMEOUT # * INVALID\_API\_KEY # * MISSING\_AUTHENTICATION\_TOKEN # * QUOTA\_EXCEEDED # * REQUEST\_TOO\_LARGE # * RESOURCE\_NOT\_FOUND # * THROTTLED # * UNAUTHORIZED # * UNSUPPORTED\_MEDIA\_TYPE # # @return [Types::GatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GatewayResponse#response_type #response_type} => String # * {Types::GatewayResponse#status_code #status_code} => String # * {Types::GatewayResponse#response_parameters #response_parameters} => Hash<String,String> # * {Types::GatewayResponse#response_templates #response_templates} => Hash<String,String> # * {Types::GatewayResponse#default_response #default_response} => Boolean # # @example Request syntax with placeholder values # # resp = client.get_gateway_response({ # rest_api_id: "String", # required # response_type: "DEFAULT_4XX", # required, accepts DEFAULT_4XX, DEFAULT_5XX, RESOURCE_NOT_FOUND, UNAUTHORIZED, INVALID_API_KEY, ACCESS_DENIED, AUTHORIZER_FAILURE, AUTHORIZER_CONFIGURATION_ERROR, INVALID_SIGNATURE, EXPIRED_TOKEN, MISSING_AUTHENTICATION_TOKEN, INTEGRATION_FAILURE, INTEGRATION_TIMEOUT, API_CONFIGURATION_ERROR, UNSUPPORTED_MEDIA_TYPE, BAD_REQUEST_PARAMETERS, BAD_REQUEST_BODY, REQUEST_TOO_LARGE, THROTTLED, QUOTA_EXCEEDED # }) # # @example Response structure # # resp.response_type #=> String, one of "DEFAULT_4XX", "DEFAULT_5XX", "RESOURCE_NOT_FOUND", "UNAUTHORIZED", "INVALID_API_KEY", "ACCESS_DENIED", "AUTHORIZER_FAILURE", "AUTHORIZER_CONFIGURATION_ERROR", "INVALID_SIGNATURE", "EXPIRED_TOKEN", "MISSING_AUTHENTICATION_TOKEN", "INTEGRATION_FAILURE", "INTEGRATION_TIMEOUT", "API_CONFIGURATION_ERROR", "UNSUPPORTED_MEDIA_TYPE", "BAD_REQUEST_PARAMETERS", "BAD_REQUEST_BODY", "REQUEST_TOO_LARGE", "THROTTLED", "QUOTA_EXCEEDED" # resp.status_code #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> String # resp.response_templates #=> Hash # resp.response_templates["String"] #=> String # resp.default_response #=> Boolean # # @overload get_gateway_response(params = {}) # @param [Hash] params ({}) def get_gateway_response(params = {}, options = {}) req = build_request(:get_gateway_response, params) req.send_request(options) end # Gets the GatewayResponses collection on the given RestApi. If an API # developer has not added any definitions for gateway responses, the # result will be the API Gateway-generated default GatewayResponses # collection for the supported response types. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :position # The current pagination position in the paged result set. The # GatewayResponse collection does not support pagination and the # position does not apply here. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. The GatewayResponses collection does # not support pagination and the limit does not apply here. # # @return [Types::GatewayResponses] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GatewayResponses#position #position} => String # * {Types::GatewayResponses#items #items} => Array<Types::GatewayResponse> # # @example Request syntax with placeholder values # # resp = client.get_gateway_responses({ # rest_api_id: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].response_type #=> String, one of "DEFAULT_4XX", "DEFAULT_5XX", "RESOURCE_NOT_FOUND", "UNAUTHORIZED", "INVALID_API_KEY", "ACCESS_DENIED", "AUTHORIZER_FAILURE", "AUTHORIZER_CONFIGURATION_ERROR", "INVALID_SIGNATURE", "EXPIRED_TOKEN", "MISSING_AUTHENTICATION_TOKEN", "INTEGRATION_FAILURE", "INTEGRATION_TIMEOUT", "API_CONFIGURATION_ERROR", "UNSUPPORTED_MEDIA_TYPE", "BAD_REQUEST_PARAMETERS", "BAD_REQUEST_BODY", "REQUEST_TOO_LARGE", "THROTTLED", "QUOTA_EXCEEDED" # resp.items[0].status_code #=> String # resp.items[0].response_parameters #=> Hash # resp.items[0].response_parameters["String"] #=> String # resp.items[0].response_templates #=> Hash # resp.items[0].response_templates["String"] #=> String # resp.items[0].default_response #=> Boolean # # @overload get_gateway_responses(params = {}) # @param [Hash] params ({}) def get_gateway_responses(params = {}, options = {}) req = build_request(:get_gateway_responses, params) req.send_request(options) end # Get the integration settings. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies a get integration request's resource # identifier # # @option params [required, String] :http_method # \[Required\] Specifies a get integration request's HTTP method. # # @return [Types::Integration] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Integration#type #type} => String # * {Types::Integration#http_method #http_method} => String # * {Types::Integration#uri #uri} => String # * {Types::Integration#connection_type #connection_type} => String # * {Types::Integration#connection_id #connection_id} => String # * {Types::Integration#credentials #credentials} => String # * {Types::Integration#request_parameters #request_parameters} => Hash<String,String> # * {Types::Integration#request_templates #request_templates} => Hash<String,String> # * {Types::Integration#passthrough_behavior #passthrough_behavior} => String # * {Types::Integration#content_handling #content_handling} => String # * {Types::Integration#timeout_in_millis #timeout_in_millis} => Integer # * {Types::Integration#cache_namespace #cache_namespace} => String # * {Types::Integration#cache_key_parameters #cache_key_parameters} => Array<String> # * {Types::Integration#integration_responses #integration_responses} => Hash<String,Types::IntegrationResponse> # * {Types::Integration#tls_config #tls_config} => Types::TlsConfig # # @example Request syntax with placeholder values # # resp = client.get_integration({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # }) # # @example Response structure # # resp.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.http_method #=> String # resp.uri #=> String # resp.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.connection_id #=> String # resp.credentials #=> String # resp.request_parameters #=> Hash # resp.request_parameters["String"] #=> String # resp.request_templates #=> Hash # resp.request_templates["String"] #=> String # resp.passthrough_behavior #=> String # resp.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.timeout_in_millis #=> Integer # resp.cache_namespace #=> String # resp.cache_key_parameters #=> Array # resp.cache_key_parameters[0] #=> String # resp.integration_responses #=> Hash # resp.integration_responses["String"].status_code #=> String # resp.integration_responses["String"].selection_pattern #=> String # resp.integration_responses["String"].response_parameters #=> Hash # resp.integration_responses["String"].response_parameters["String"] #=> String # resp.integration_responses["String"].response_templates #=> Hash # resp.integration_responses["String"].response_templates["String"] #=> String # resp.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.tls_config.insecure_skip_verification #=> Boolean # # @overload get_integration(params = {}) # @param [Hash] params ({}) def get_integration(params = {}, options = {}) req = build_request(:get_integration, params) req.send_request(options) end # Represents a get integration response. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies a get integration response request's resource # identifier. # # @option params [required, String] :http_method # \[Required\] Specifies a get integration response request's HTTP # method. # # @option params [required, String] :status_code # \[Required\] Specifies a get integration response request's status # code. # # @return [Types::IntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::IntegrationResponse#status_code #status_code} => String # * {Types::IntegrationResponse#selection_pattern #selection_pattern} => String # * {Types::IntegrationResponse#response_parameters #response_parameters} => Hash<String,String> # * {Types::IntegrationResponse#response_templates #response_templates} => Hash<String,String> # * {Types::IntegrationResponse#content_handling #content_handling} => String # # @example Request syntax with placeholder values # # resp = client.get_integration_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # }) # # @example Response structure # # resp.status_code #=> String # resp.selection_pattern #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> String # resp.response_templates #=> Hash # resp.response_templates["String"] #=> String # resp.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # # @overload get_integration_response(params = {}) # @param [Hash] params ({}) def get_integration_response(params = {}, options = {}) req = build_request(:get_integration_response, params) req.send_request(options) end # Describe an existing Method resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the Method resource. # # @option params [required, String] :http_method # \[Required\] Specifies the method request's HTTP method type. # # @return [Types::Method] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Method#http_method #http_method} => String # * {Types::Method#authorization_type #authorization_type} => String # * {Types::Method#authorizer_id #authorizer_id} => String # * {Types::Method#api_key_required #api_key_required} => Boolean # * {Types::Method#request_validator_id #request_validator_id} => String # * {Types::Method#operation_name #operation_name} => String # * {Types::Method#request_parameters #request_parameters} => Hash<String,Boolean> # * {Types::Method#request_models #request_models} => Hash<String,String> # * {Types::Method#method_responses #method_responses} => Hash<String,Types::MethodResponse> # * {Types::Method#method_integration #method_integration} => Types::Integration # * {Types::Method#authorization_scopes #authorization_scopes} => Array<String> # # @example Request syntax with placeholder values # # resp = client.get_method({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # }) # # @example Response structure # # resp.http_method #=> String # resp.authorization_type #=> String # resp.authorizer_id #=> String # resp.api_key_required #=> Boolean # resp.request_validator_id #=> String # resp.operation_name #=> String # resp.request_parameters #=> Hash # resp.request_parameters["String"] #=> Boolean # resp.request_models #=> Hash # resp.request_models["String"] #=> String # resp.method_responses #=> Hash # resp.method_responses["String"].status_code #=> String # resp.method_responses["String"].response_parameters #=> Hash # resp.method_responses["String"].response_parameters["String"] #=> Boolean # resp.method_responses["String"].response_models #=> Hash # resp.method_responses["String"].response_models["String"] #=> String # resp.method_integration.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.method_integration.http_method #=> String # resp.method_integration.uri #=> String # resp.method_integration.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.method_integration.connection_id #=> String # resp.method_integration.credentials #=> String # resp.method_integration.request_parameters #=> Hash # resp.method_integration.request_parameters["String"] #=> String # resp.method_integration.request_templates #=> Hash # resp.method_integration.request_templates["String"] #=> String # resp.method_integration.passthrough_behavior #=> String # resp.method_integration.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.method_integration.timeout_in_millis #=> Integer # resp.method_integration.cache_namespace #=> String # resp.method_integration.cache_key_parameters #=> Array # resp.method_integration.cache_key_parameters[0] #=> String # resp.method_integration.integration_responses #=> Hash # resp.method_integration.integration_responses["String"].status_code #=> String # resp.method_integration.integration_responses["String"].selection_pattern #=> String # resp.method_integration.integration_responses["String"].response_parameters #=> Hash # resp.method_integration.integration_responses["String"].response_parameters["String"] #=> String # resp.method_integration.integration_responses["String"].response_templates #=> Hash # resp.method_integration.integration_responses["String"].response_templates["String"] #=> String # resp.method_integration.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.method_integration.tls_config.insecure_skip_verification #=> Boolean # resp.authorization_scopes #=> Array # resp.authorization_scopes[0] #=> String # # @overload get_method(params = {}) # @param [Hash] params ({}) def get_method(params = {}, options = {}) req = build_request(:get_method, params) req.send_request(options) end # Describes a MethodResponse resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the MethodResponse resource. # # @option params [required, String] :http_method # \[Required\] The HTTP verb of the Method resource. # # @option params [required, String] :status_code # \[Required\] The status code for the MethodResponse resource. # # @return [Types::MethodResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::MethodResponse#status_code #status_code} => String # * {Types::MethodResponse#response_parameters #response_parameters} => Hash<String,Boolean> # * {Types::MethodResponse#response_models #response_models} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_method_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # }) # # @example Response structure # # resp.status_code #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> Boolean # resp.response_models #=> Hash # resp.response_models["String"] #=> String # # @overload get_method_response(params = {}) # @param [Hash] params ({}) def get_method_response(params = {}, options = {}) req = build_request(:get_method_response, params) req.send_request(options) end # Describes an existing model defined for a RestApi resource. # # @option params [required, String] :rest_api_id # \[Required\] The RestApi identifier under which the Model exists. # # @option params [required, String] :model_name # \[Required\] The name of the model as an identifier. # # @option params [Boolean] :flatten # A query parameter of a Boolean value to resolve (`true`) all external # model references and returns a flattened model schema or not (`false`) # The default is `false`. # # @return [Types::Model] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Model#id #id} => String # * {Types::Model#name #name} => String # * {Types::Model#description #description} => String # * {Types::Model#schema #schema} => String # * {Types::Model#content_type #content_type} => String # # @example Request syntax with placeholder values # # resp = client.get_model({ # rest_api_id: "String", # required # model_name: "String", # required # flatten: false, # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.schema #=> String # resp.content_type #=> String # # @overload get_model(params = {}) # @param [Hash] params ({}) def get_model(params = {}, options = {}) req = build_request(:get_model, params) req.send_request(options) end # Generates a sample mapping template that can be used to transform a # payload into the structure of a model. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :model_name # \[Required\] The name of the model for which to generate a template. # # @return [Types::Template] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Template#value #value} => String # # @example Request syntax with placeholder values # # resp = client.get_model_template({ # rest_api_id: "String", # required # model_name: "String", # required # }) # # @example Response structure # # resp.value #=> String # # @overload get_model_template(params = {}) # @param [Hash] params ({}) def get_model_template(params = {}, options = {}) req = build_request(:get_model_template, params) req.send_request(options) end # Describes existing Models defined for a RestApi resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::Models] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Models#position #position} => String # * {Types::Models#items #items} => Array<Types::Model> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_models({ # rest_api_id: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].name #=> String # resp.items[0].description #=> String # resp.items[0].schema #=> String # resp.items[0].content_type #=> String # # @overload get_models(params = {}) # @param [Hash] params ({}) def get_models(params = {}, options = {}) req = build_request(:get_models, params) req.send_request(options) end # Gets a RequestValidator of a given RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :request_validator_id # \[Required\] The identifier of the RequestValidator to be retrieved. # # @return [Types::RequestValidator] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RequestValidator#id #id} => String # * {Types::RequestValidator#name #name} => String # * {Types::RequestValidator#validate_request_body #validate_request_body} => Boolean # * {Types::RequestValidator#validate_request_parameters #validate_request_parameters} => Boolean # # @example Request syntax with placeholder values # # resp = client.get_request_validator({ # rest_api_id: "String", # required # request_validator_id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.validate_request_body #=> Boolean # resp.validate_request_parameters #=> Boolean # # @overload get_request_validator(params = {}) # @param [Hash] params ({}) def get_request_validator(params = {}, options = {}) req = build_request(:get_request_validator, params) req.send_request(options) end # Gets the RequestValidators collection of a given RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::RequestValidators] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RequestValidators#position #position} => String # * {Types::RequestValidators#items #items} => Array<Types::RequestValidator> # # @example Request syntax with placeholder values # # resp = client.get_request_validators({ # rest_api_id: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].name #=> String # resp.items[0].validate_request_body #=> Boolean # resp.items[0].validate_request_parameters #=> Boolean # # @overload get_request_validators(params = {}) # @param [Hash] params ({}) def get_request_validators(params = {}, options = {}) req = build_request(:get_request_validators, params) req.send_request(options) end # Lists information about a resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The identifier for the Resource resource. # # @option params [Array] :embed # A query parameter to retrieve the specified resources embedded in the # returned Resource representation in the response. This `embed` # parameter value is a list of comma-separated strings. Currently, the # request supports only retrieval of the embedded Method resources this # way. The query parameter value must be a single-valued list and # contain the `"methods"` string. For example, `GET # /restapis/\{restapi_id\}/resources/\{resource_id\}?embed=methods`. # # @return [Types::Resource] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Resource#id #id} => String # * {Types::Resource#parent_id #parent_id} => String # * {Types::Resource#path_part #path_part} => String # * {Types::Resource#path #path} => String # * {Types::Resource#resource_methods #resource_methods} => Hash<String,Types::Method> # # @example Request syntax with placeholder values # # resp = client.get_resource({ # rest_api_id: "String", # required # resource_id: "String", # required # embed: ["String"], # }) # # @example Response structure # # resp.id #=> String # resp.parent_id #=> String # resp.path_part #=> String # resp.path #=> String # resp.resource_methods #=> Hash # resp.resource_methods["String"].http_method #=> String # resp.resource_methods["String"].authorization_type #=> String # resp.resource_methods["String"].authorizer_id #=> String # resp.resource_methods["String"].api_key_required #=> Boolean # resp.resource_methods["String"].request_validator_id #=> String # resp.resource_methods["String"].operation_name #=> String # resp.resource_methods["String"].request_parameters #=> Hash # resp.resource_methods["String"].request_parameters["String"] #=> Boolean # resp.resource_methods["String"].request_models #=> Hash # resp.resource_methods["String"].request_models["String"] #=> String # resp.resource_methods["String"].method_responses #=> Hash # resp.resource_methods["String"].method_responses["String"].status_code #=> String # resp.resource_methods["String"].method_responses["String"].response_parameters #=> Hash # resp.resource_methods["String"].method_responses["String"].response_parameters["String"] #=> Boolean # resp.resource_methods["String"].method_responses["String"].response_models #=> Hash # resp.resource_methods["String"].method_responses["String"].response_models["String"] #=> String # resp.resource_methods["String"].method_integration.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.resource_methods["String"].method_integration.http_method #=> String # resp.resource_methods["String"].method_integration.uri #=> String # resp.resource_methods["String"].method_integration.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.resource_methods["String"].method_integration.connection_id #=> String # resp.resource_methods["String"].method_integration.credentials #=> String # resp.resource_methods["String"].method_integration.request_parameters #=> Hash # resp.resource_methods["String"].method_integration.request_parameters["String"] #=> String # resp.resource_methods["String"].method_integration.request_templates #=> Hash # resp.resource_methods["String"].method_integration.request_templates["String"] #=> String # resp.resource_methods["String"].method_integration.passthrough_behavior #=> String # resp.resource_methods["String"].method_integration.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.resource_methods["String"].method_integration.timeout_in_millis #=> Integer # resp.resource_methods["String"].method_integration.cache_namespace #=> String # resp.resource_methods["String"].method_integration.cache_key_parameters #=> Array # resp.resource_methods["String"].method_integration.cache_key_parameters[0] #=> String # resp.resource_methods["String"].method_integration.integration_responses #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].status_code #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].selection_pattern #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].response_parameters #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].response_parameters["String"] #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].response_templates #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].response_templates["String"] #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.resource_methods["String"].method_integration.tls_config.insecure_skip_verification #=> Boolean # resp.resource_methods["String"].authorization_scopes #=> Array # resp.resource_methods["String"].authorization_scopes[0] #=> String # # @overload get_resource(params = {}) # @param [Hash] params ({}) def get_resource(params = {}, options = {}) req = build_request(:get_resource, params) req.send_request(options) end # Lists information about a collection of Resource resources. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @option params [Array] :embed # A query parameter used to retrieve the specified resources embedded in # the returned Resources resource in the response. This `embed` # parameter value is a list of comma-separated strings. Currently, the # request supports only retrieval of the embedded Method resources this # way. The query parameter value must be a single-valued list and # contain the `"methods"` string. For example, `GET # /restapis/\{restapi_id\}/resources?embed=methods`. # # @return [Types::Resources] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Resources#position #position} => String # * {Types::Resources#items #items} => Array<Types::Resource> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_resources({ # rest_api_id: "String", # required # position: "String", # limit: 1, # embed: ["String"], # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].parent_id #=> String # resp.items[0].path_part #=> String # resp.items[0].path #=> String # resp.items[0].resource_methods #=> Hash # resp.items[0].resource_methods["String"].http_method #=> String # resp.items[0].resource_methods["String"].authorization_type #=> String # resp.items[0].resource_methods["String"].authorizer_id #=> String # resp.items[0].resource_methods["String"].api_key_required #=> Boolean # resp.items[0].resource_methods["String"].request_validator_id #=> String # resp.items[0].resource_methods["String"].operation_name #=> String # resp.items[0].resource_methods["String"].request_parameters #=> Hash # resp.items[0].resource_methods["String"].request_parameters["String"] #=> Boolean # resp.items[0].resource_methods["String"].request_models #=> Hash # resp.items[0].resource_methods["String"].request_models["String"] #=> String # resp.items[0].resource_methods["String"].method_responses #=> Hash # resp.items[0].resource_methods["String"].method_responses["String"].status_code #=> String # resp.items[0].resource_methods["String"].method_responses["String"].response_parameters #=> Hash # resp.items[0].resource_methods["String"].method_responses["String"].response_parameters["String"] #=> Boolean # resp.items[0].resource_methods["String"].method_responses["String"].response_models #=> Hash # resp.items[0].resource_methods["String"].method_responses["String"].response_models["String"] #=> String # resp.items[0].resource_methods["String"].method_integration.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.items[0].resource_methods["String"].method_integration.http_method #=> String # resp.items[0].resource_methods["String"].method_integration.uri #=> String # resp.items[0].resource_methods["String"].method_integration.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.items[0].resource_methods["String"].method_integration.connection_id #=> String # resp.items[0].resource_methods["String"].method_integration.credentials #=> String # resp.items[0].resource_methods["String"].method_integration.request_parameters #=> Hash # resp.items[0].resource_methods["String"].method_integration.request_parameters["String"] #=> String # resp.items[0].resource_methods["String"].method_integration.request_templates #=> Hash # resp.items[0].resource_methods["String"].method_integration.request_templates["String"] #=> String # resp.items[0].resource_methods["String"].method_integration.passthrough_behavior #=> String # resp.items[0].resource_methods["String"].method_integration.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.items[0].resource_methods["String"].method_integration.timeout_in_millis #=> Integer # resp.items[0].resource_methods["String"].method_integration.cache_namespace #=> String # resp.items[0].resource_methods["String"].method_integration.cache_key_parameters #=> Array # resp.items[0].resource_methods["String"].method_integration.cache_key_parameters[0] #=> String # resp.items[0].resource_methods["String"].method_integration.integration_responses #=> Hash # resp.items[0].resource_methods["String"].method_integration.integration_responses["String"].status_code #=> String # resp.items[0].resource_methods["String"].method_integration.integration_responses["String"].selection_pattern #=> String # resp.items[0].resource_methods["String"].method_integration.integration_responses["String"].response_parameters #=> Hash # resp.items[0].resource_methods["String"].method_integration.integration_responses["String"].response_parameters["String"] #=> String # resp.items[0].resource_methods["String"].method_integration.integration_responses["String"].response_templates #=> Hash # resp.items[0].resource_methods["String"].method_integration.integration_responses["String"].response_templates["String"] #=> String # resp.items[0].resource_methods["String"].method_integration.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.items[0].resource_methods["String"].method_integration.tls_config.insecure_skip_verification #=> Boolean # resp.items[0].resource_methods["String"].authorization_scopes #=> Array # resp.items[0].resource_methods["String"].authorization_scopes[0] #=> String # # @overload get_resources(params = {}) # @param [Hash] params ({}) def get_resources(params = {}, options = {}) req = build_request(:get_resources, params) req.send_request(options) end # Lists the RestApi resource in the collection. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @return [Types::RestApi] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RestApi#id #id} => String # * {Types::RestApi#name #name} => String # * {Types::RestApi#description #description} => String # * {Types::RestApi#created_date #created_date} => Time # * {Types::RestApi#version #version} => String # * {Types::RestApi#warnings #warnings} => Array<String> # * {Types::RestApi#binary_media_types #binary_media_types} => Array<String> # * {Types::RestApi#minimum_compression_size #minimum_compression_size} => Integer # * {Types::RestApi#api_key_source #api_key_source} => String # * {Types::RestApi#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::RestApi#policy #policy} => String # * {Types::RestApi#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_rest_api({ # rest_api_id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.created_date #=> Time # resp.version #=> String # resp.warnings #=> Array # resp.warnings[0] #=> String # resp.binary_media_types #=> Array # resp.binary_media_types[0] #=> String # resp.minimum_compression_size #=> Integer # resp.api_key_source #=> String, one of "HEADER", "AUTHORIZER" # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.policy #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload get_rest_api(params = {}) # @param [Hash] params ({}) def get_rest_api(params = {}, options = {}) req = build_request(:get_rest_api, params) req.send_request(options) end # Lists the RestApis resources for your collection. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::RestApis] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RestApis#position #position} => String # * {Types::RestApis#items #items} => Array<Types::RestApi> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_rest_apis({ # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].name #=> String # resp.items[0].description #=> String # resp.items[0].created_date #=> Time # resp.items[0].version #=> String # resp.items[0].warnings #=> Array # resp.items[0].warnings[0] #=> String # resp.items[0].binary_media_types #=> Array # resp.items[0].binary_media_types[0] #=> String # resp.items[0].minimum_compression_size #=> Integer # resp.items[0].api_key_source #=> String, one of "HEADER", "AUTHORIZER" # resp.items[0].endpoint_configuration.types #=> Array # resp.items[0].endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.items[0].endpoint_configuration.vpc_endpoint_ids #=> Array # resp.items[0].endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.items[0].policy #=> String # resp.items[0].tags #=> Hash # resp.items[0].tags["String"] #=> String # # @overload get_rest_apis(params = {}) # @param [Hash] params ({}) def get_rest_apis(params = {}, options = {}) req = build_request(:get_rest_apis, params) req.send_request(options) end # Generates a client SDK for a RestApi and Stage. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # \[Required\] The name of the Stage that the SDK will use. # # @option params [required, String] :sdk_type # \[Required\] The language for the generated SDK. Currently `java`, # `javascript`, `android`, `objectivec` (for iOS), `swift` (for iOS), # and `ruby` are supported. # # @option params [Hash] :parameters # A string-to-string key-value map of query parameters # `sdkType`-dependent properties of the SDK. For `sdkType` of # `objectivec` or `swift`, a parameter named `classPrefix` is required. # For `sdkType` of `android`, parameters named `groupId`, `artifactId`, # `artifactVersion`, and `invokerPackage` are required. For `sdkType` of # `java`, parameters named `serviceName` and `javaPackageName` are # required. # # @return [Types::SdkResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::SdkResponse#content_type #content_type} => String # * {Types::SdkResponse#content_disposition #content_disposition} => String # * {Types::SdkResponse#body #body} => String # # @example Request syntax with placeholder values # # resp = client.get_sdk({ # rest_api_id: "String", # required # stage_name: "String", # required # sdk_type: "String", # required # parameters: { # "String" => "String", # }, # }) # # @example Response structure # # resp.content_type #=> String # resp.content_disposition #=> String # resp.body #=> String # # @overload get_sdk(params = {}) # @param [Hash] params ({}) def get_sdk(params = {}, options = {}) req = build_request(:get_sdk, params) req.send_request(options) end # @option params [required, String] :id # \[Required\] The identifier of the queried SdkType instance. # # @return [Types::SdkType] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::SdkType#id #id} => String # * {Types::SdkType#friendly_name #friendly_name} => String # * {Types::SdkType#description #description} => String # * {Types::SdkType#configuration_properties #configuration_properties} => Array<Types::SdkConfigurationProperty> # # @example Request syntax with placeholder values # # resp = client.get_sdk_type({ # id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.friendly_name #=> String # resp.description #=> String # resp.configuration_properties #=> Array # resp.configuration_properties[0].name #=> String # resp.configuration_properties[0].friendly_name #=> String # resp.configuration_properties[0].description #=> String # resp.configuration_properties[0].required #=> Boolean # resp.configuration_properties[0].default_value #=> String # # @overload get_sdk_type(params = {}) # @param [Hash] params ({}) def get_sdk_type(params = {}, options = {}) req = build_request(:get_sdk_type, params) req.send_request(options) end # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::SdkTypes] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::SdkTypes#position #position} => String # * {Types::SdkTypes#items #items} => Array<Types::SdkType> # # @example Request syntax with placeholder values # # resp = client.get_sdk_types({ # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].friendly_name #=> String # resp.items[0].description #=> String # resp.items[0].configuration_properties #=> Array # resp.items[0].configuration_properties[0].name #=> String # resp.items[0].configuration_properties[0].friendly_name #=> String # resp.items[0].configuration_properties[0].description #=> String # resp.items[0].configuration_properties[0].required #=> Boolean # resp.items[0].configuration_properties[0].default_value #=> String # # @overload get_sdk_types(params = {}) # @param [Hash] params ({}) def get_sdk_types(params = {}, options = {}) req = build_request(:get_sdk_types, params) req.send_request(options) end # Gets information about a Stage resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # \[Required\] The name of the Stage resource to get information about. # # @return [Types::Stage] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Stage#deployment_id #deployment_id} => String # * {Types::Stage#client_certificate_id #client_certificate_id} => String # * {Types::Stage#stage_name #stage_name} => String # * {Types::Stage#description #description} => String # * {Types::Stage#cache_cluster_enabled #cache_cluster_enabled} => Boolean # * {Types::Stage#cache_cluster_size #cache_cluster_size} => String # * {Types::Stage#cache_cluster_status #cache_cluster_status} => String # * {Types::Stage#method_settings #method_settings} => Hash<String,Types::MethodSetting> # * {Types::Stage#variables #variables} => Hash<String,String> # * {Types::Stage#documentation_version #documentation_version} => String # * {Types::Stage#access_log_settings #access_log_settings} => Types::AccessLogSettings # * {Types::Stage#canary_settings #canary_settings} => Types::CanarySettings # * {Types::Stage#tracing_enabled #tracing_enabled} => Boolean # * {Types::Stage#web_acl_arn #web_acl_arn} => String # * {Types::Stage#tags #tags} => Hash<String,String> # * {Types::Stage#created_date #created_date} => Time # * {Types::Stage#last_updated_date #last_updated_date} => Time # # @example Request syntax with placeholder values # # resp = client.get_stage({ # rest_api_id: "String", # required # stage_name: "String", # required # }) # # @example Response structure # # resp.deployment_id #=> String # resp.client_certificate_id #=> String # resp.stage_name #=> String # resp.description #=> String # resp.cache_cluster_enabled #=> Boolean # resp.cache_cluster_size #=> String, one of "0.5", "1.6", "6.1", "13.5", "28.4", "58.2", "118", "237" # resp.cache_cluster_status #=> String, one of "CREATE_IN_PROGRESS", "AVAILABLE", "DELETE_IN_PROGRESS", "NOT_AVAILABLE", "FLUSH_IN_PROGRESS" # resp.method_settings #=> Hash # resp.method_settings["String"].metrics_enabled #=> Boolean # resp.method_settings["String"].logging_level #=> String # resp.method_settings["String"].data_trace_enabled #=> Boolean # resp.method_settings["String"].throttling_burst_limit #=> Integer # resp.method_settings["String"].throttling_rate_limit #=> Float # resp.method_settings["String"].caching_enabled #=> Boolean # resp.method_settings["String"].cache_ttl_in_seconds #=> Integer # resp.method_settings["String"].cache_data_encrypted #=> Boolean # resp.method_settings["String"].require_authorization_for_cache_control #=> Boolean # resp.method_settings["String"].unauthorized_cache_control_header_strategy #=> String, one of "FAIL_WITH_403", "SUCCEED_WITH_RESPONSE_HEADER", "SUCCEED_WITHOUT_RESPONSE_HEADER" # resp.variables #=> Hash # resp.variables["String"] #=> String # resp.documentation_version #=> String # resp.access_log_settings.format #=> String # resp.access_log_settings.destination_arn #=> String # resp.canary_settings.percent_traffic #=> Float # resp.canary_settings.deployment_id #=> String # resp.canary_settings.stage_variable_overrides #=> Hash # resp.canary_settings.stage_variable_overrides["String"] #=> String # resp.canary_settings.use_stage_cache #=> Boolean # resp.tracing_enabled #=> Boolean # resp.web_acl_arn #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # resp.created_date #=> Time # resp.last_updated_date #=> Time # # @overload get_stage(params = {}) # @param [Hash] params ({}) def get_stage(params = {}, options = {}) req = build_request(:get_stage, params) req.send_request(options) end # Gets information about one or more Stage resources. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :deployment_id # The stages' deployment identifiers. # # @return [Types::Stages] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Stages#item #item} => Array<Types::Stage> # # @example Request syntax with placeholder values # # resp = client.get_stages({ # rest_api_id: "String", # required # deployment_id: "String", # }) # # @example Response structure # # resp.item #=> Array # resp.item[0].deployment_id #=> String # resp.item[0].client_certificate_id #=> String # resp.item[0].stage_name #=> String # resp.item[0].description #=> String # resp.item[0].cache_cluster_enabled #=> Boolean # resp.item[0].cache_cluster_size #=> String, one of "0.5", "1.6", "6.1", "13.5", "28.4", "58.2", "118", "237" # resp.item[0].cache_cluster_status #=> String, one of "CREATE_IN_PROGRESS", "AVAILABLE", "DELETE_IN_PROGRESS", "NOT_AVAILABLE", "FLUSH_IN_PROGRESS" # resp.item[0].method_settings #=> Hash # resp.item[0].method_settings["String"].metrics_enabled #=> Boolean # resp.item[0].method_settings["String"].logging_level #=> String # resp.item[0].method_settings["String"].data_trace_enabled #=> Boolean # resp.item[0].method_settings["String"].throttling_burst_limit #=> Integer # resp.item[0].method_settings["String"].throttling_rate_limit #=> Float # resp.item[0].method_settings["String"].caching_enabled #=> Boolean # resp.item[0].method_settings["String"].cache_ttl_in_seconds #=> Integer # resp.item[0].method_settings["String"].cache_data_encrypted #=> Boolean # resp.item[0].method_settings["String"].require_authorization_for_cache_control #=> Boolean # resp.item[0].method_settings["String"].unauthorized_cache_control_header_strategy #=> String, one of "FAIL_WITH_403", "SUCCEED_WITH_RESPONSE_HEADER", "SUCCEED_WITHOUT_RESPONSE_HEADER" # resp.item[0].variables #=> Hash # resp.item[0].variables["String"] #=> String # resp.item[0].documentation_version #=> String # resp.item[0].access_log_settings.format #=> String # resp.item[0].access_log_settings.destination_arn #=> String # resp.item[0].canary_settings.percent_traffic #=> Float # resp.item[0].canary_settings.deployment_id #=> String # resp.item[0].canary_settings.stage_variable_overrides #=> Hash # resp.item[0].canary_settings.stage_variable_overrides["String"] #=> String # resp.item[0].canary_settings.use_stage_cache #=> Boolean # resp.item[0].tracing_enabled #=> Boolean # resp.item[0].web_acl_arn #=> String # resp.item[0].tags #=> Hash # resp.item[0].tags["String"] #=> String # resp.item[0].created_date #=> Time # resp.item[0].last_updated_date #=> Time # # @overload get_stages(params = {}) # @param [Hash] params ({}) def get_stages(params = {}, options = {}) req = build_request(:get_stages, params) req.send_request(options) end # Gets the Tags collection for a given resource. # # @option params [required, String] :resource_arn # \[Required\] The ARN of a resource that can be tagged. # # @option params [String] :position # (Not currently supported) The current pagination position in the paged # result set. # # @option params [Integer] :limit # (Not currently supported) The maximum number of returned results per # page. The default value is 25 and the maximum value is 500. # # @return [Types::Tags] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Tags#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_tags({ # resource_arn: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload get_tags(params = {}) # @param [Hash] params ({}) def get_tags(params = {}, options = {}) req = build_request(:get_tags, params) req.send_request(options) end # Gets the usage data of a usage plan in a specified time interval. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the usage plan associated with the usage data. # # @option params [String] :key_id # The Id of the API key associated with the resultant usage data. # # @option params [required, String] :start_date # \[Required\] The starting date (e.g., 2016-01-01) of the usage data. # # @option params [required, String] :end_date # \[Required\] The ending date (e.g., 2016-12-31) of the usage data. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::Usage] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Usage#usage_plan_id #usage_plan_id} => String # * {Types::Usage#start_date #start_date} => String # * {Types::Usage#end_date #end_date} => String # * {Types::Usage#position #position} => String # * {Types::Usage#items #items} => Hash<String,Array<Array<Integer>>> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_usage({ # usage_plan_id: "String", # required # key_id: "String", # start_date: "String", # required # end_date: "String", # required # position: "String", # limit: 1, # }) # # @example Response structure # # resp.usage_plan_id #=> String # resp.start_date #=> String # resp.end_date #=> String # resp.position #=> String # resp.items #=> Hash # resp.items["String"] #=> Array # resp.items["String"][0] #=> Array # resp.items["String"][0][0] #=> Integer # # @overload get_usage(params = {}) # @param [Hash] params ({}) def get_usage(params = {}, options = {}) req = build_request(:get_usage, params) req.send_request(options) end # Gets a usage plan of a given plan identifier. # # @option params [required, String] :usage_plan_id # \[Required\] The identifier of the UsagePlan resource to be retrieved. # # @return [Types::UsagePlan] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UsagePlan#id #id} => String # * {Types::UsagePlan#name #name} => String # * {Types::UsagePlan#description #description} => String # * {Types::UsagePlan#api_stages #api_stages} => Array<Types::ApiStage> # * {Types::UsagePlan#throttle #throttle} => Types::ThrottleSettings # * {Types::UsagePlan#quota #quota} => Types::QuotaSettings # * {Types::UsagePlan#product_code #product_code} => String # * {Types::UsagePlan#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_usage_plan({ # usage_plan_id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.api_stages #=> Array # resp.api_stages[0].api_id #=> String # resp.api_stages[0].stage #=> String # resp.api_stages[0].throttle #=> Hash # resp.api_stages[0].throttle["String"].burst_limit #=> Integer # resp.api_stages[0].throttle["String"].rate_limit #=> Float # resp.throttle.burst_limit #=> Integer # resp.throttle.rate_limit #=> Float # resp.quota.limit #=> Integer # resp.quota.offset #=> Integer # resp.quota.period #=> String, one of "DAY", "WEEK", "MONTH" # resp.product_code #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload get_usage_plan(params = {}) # @param [Hash] params ({}) def get_usage_plan(params = {}, options = {}) req = build_request(:get_usage_plan, params) req.send_request(options) end # Gets a usage plan key of a given key identifier. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the UsagePlan resource representing the usage # plan containing the to-be-retrieved UsagePlanKey resource representing # a plan customer. # # @option params [required, String] :key_id # \[Required\] The key Id of the to-be-retrieved UsagePlanKey resource # representing a plan customer. # # @return [Types::UsagePlanKey] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UsagePlanKey#id #id} => String # * {Types::UsagePlanKey#type #type} => String # * {Types::UsagePlanKey#value #value} => String # * {Types::UsagePlanKey#name #name} => String # # @example Request syntax with placeholder values # # resp = client.get_usage_plan_key({ # usage_plan_id: "String", # required # key_id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.type #=> String # resp.value #=> String # resp.name #=> String # # @overload get_usage_plan_key(params = {}) # @param [Hash] params ({}) def get_usage_plan_key(params = {}, options = {}) req = build_request(:get_usage_plan_key, params) req.send_request(options) end # Gets all the usage plan keys representing the API keys added to a # specified usage plan. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the UsagePlan resource representing the usage # plan containing the to-be-retrieved UsagePlanKey resource representing # a plan customer. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @option params [String] :name_query # A query parameter specifying the name of the to-be-returned usage plan # keys. # # @return [Types::UsagePlanKeys] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UsagePlanKeys#position #position} => String # * {Types::UsagePlanKeys#items #items} => Array<Types::UsagePlanKey> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_usage_plan_keys({ # usage_plan_id: "String", # required # position: "String", # limit: 1, # name_query: "String", # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].type #=> String # resp.items[0].value #=> String # resp.items[0].name #=> String # # @overload get_usage_plan_keys(params = {}) # @param [Hash] params ({}) def get_usage_plan_keys(params = {}, options = {}) req = build_request(:get_usage_plan_keys, params) req.send_request(options) end # Gets all the usage plans of the caller's account. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [String] :key_id # The identifier of the API key associated with the usage plans. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::UsagePlans] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UsagePlans#position #position} => String # * {Types::UsagePlans#items #items} => Array<Types::UsagePlan> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_usage_plans({ # position: "String", # key_id: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].name #=> String # resp.items[0].description #=> String # resp.items[0].api_stages #=> Array # resp.items[0].api_stages[0].api_id #=> String # resp.items[0].api_stages[0].stage #=> String # resp.items[0].api_stages[0].throttle #=> Hash # resp.items[0].api_stages[0].throttle["String"].burst_limit #=> Integer # resp.items[0].api_stages[0].throttle["String"].rate_limit #=> Float # resp.items[0].throttle.burst_limit #=> Integer # resp.items[0].throttle.rate_limit #=> Float # resp.items[0].quota.limit #=> Integer # resp.items[0].quota.offset #=> Integer # resp.items[0].quota.period #=> String, one of "DAY", "WEEK", "MONTH" # resp.items[0].product_code #=> String # resp.items[0].tags #=> Hash # resp.items[0].tags["String"] #=> String # # @overload get_usage_plans(params = {}) # @param [Hash] params ({}) def get_usage_plans(params = {}, options = {}) req = build_request(:get_usage_plans, params) req.send_request(options) end # Gets a specified VPC link under the caller's account in a region. # # @option params [required, String] :vpc_link_id # \[Required\] The identifier of the VpcLink. It is used in an # Integration to reference this VpcLink. # # @return [Types::VpcLink] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::VpcLink#id #id} => String # * {Types::VpcLink#name #name} => String # * {Types::VpcLink#description #description} => String # * {Types::VpcLink#target_arns #target_arns} => Array<String> # * {Types::VpcLink#status #status} => String # * {Types::VpcLink#status_message #status_message} => String # * {Types::VpcLink#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.get_vpc_link({ # vpc_link_id: "String", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.target_arns #=> Array # resp.target_arns[0] #=> String # resp.status #=> String, one of "AVAILABLE", "PENDING", "DELETING", "FAILED" # resp.status_message #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload get_vpc_link(params = {}) # @param [Hash] params ({}) def get_vpc_link(params = {}, options = {}) req = build_request(:get_vpc_link, params) req.send_request(options) end # Gets the VpcLinks collection under the caller's account in a selected # region. # # @option params [String] :position # The current pagination position in the paged result set. # # @option params [Integer] :limit # The maximum number of returned results per page. The default value is # 25 and the maximum value is 500. # # @return [Types::VpcLinks] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::VpcLinks#position #position} => String # * {Types::VpcLinks#items #items} => Array<Types::VpcLink> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.get_vpc_links({ # position: "String", # limit: 1, # }) # # @example Response structure # # resp.position #=> String # resp.items #=> Array # resp.items[0].id #=> String # resp.items[0].name #=> String # resp.items[0].description #=> String # resp.items[0].target_arns #=> Array # resp.items[0].target_arns[0] #=> String # resp.items[0].status #=> String, one of "AVAILABLE", "PENDING", "DELETING", "FAILED" # resp.items[0].status_message #=> String # resp.items[0].tags #=> Hash # resp.items[0].tags["String"] #=> String # # @overload get_vpc_links(params = {}) # @param [Hash] params ({}) def get_vpc_links(params = {}, options = {}) req = build_request(:get_vpc_links, params) req.send_request(options) end # Import API keys from an external source, such as a CSV-formatted file. # # @option params [required, String, StringIO, File] :body # The payload of the POST request to import API keys. For the payload # format, see [API Key File Format][1]. # # # # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/api-key-file-format.html # # @option params [required, String] :format # A query parameter to specify the input format to imported API keys. # Currently, only the `csv` format is supported. # # @option params [Boolean] :fail_on_warnings # A query parameter to indicate whether to rollback ApiKey importation # (`true`) or not (`false`) when error is encountered. # # @return [Types::ApiKeyIds] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ApiKeyIds#ids #ids} => Array<String> # * {Types::ApiKeyIds#warnings #warnings} => Array<String> # # @example Request syntax with placeholder values # # resp = client.import_api_keys({ # body: "data", # required # format: "csv", # required, accepts csv # fail_on_warnings: false, # }) # # @example Response structure # # resp.ids #=> Array # resp.ids[0] #=> String # resp.warnings #=> Array # resp.warnings[0] #=> String # # @overload import_api_keys(params = {}) # @param [Hash] params ({}) def import_api_keys(params = {}, options = {}) req = build_request(:import_api_keys, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :mode # A query parameter to indicate whether to overwrite (`OVERWRITE`) any # existing DocumentationParts definition or to merge (`MERGE`) the new # definition into the existing one. The default value is `MERGE`. # # @option params [Boolean] :fail_on_warnings # A query parameter to specify whether to rollback the documentation # importation (`true`) or not (`false`) when a warning is encountered. # The default value is `false`. # # @option params [required, String, StringIO, File] :body # \[Required\] Raw byte array representing the to-be-imported # documentation parts. To import from an OpenAPI file, this is a JSON # object. # # @return [Types::DocumentationPartIds] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationPartIds#ids #ids} => Array<String> # * {Types::DocumentationPartIds#warnings #warnings} => Array<String> # # @example Request syntax with placeholder values # # resp = client.import_documentation_parts({ # rest_api_id: "String", # required # mode: "merge", # accepts merge, overwrite # fail_on_warnings: false, # body: "data", # required # }) # # @example Response structure # # resp.ids #=> Array # resp.ids[0] #=> String # resp.warnings #=> Array # resp.warnings[0] #=> String # # @overload import_documentation_parts(params = {}) # @param [Hash] params ({}) def import_documentation_parts(params = {}, options = {}) req = build_request(:import_documentation_parts, params) req.send_request(options) end # A feature of the API Gateway control service for creating a new API # from an external API definition file. # # @option params [Boolean] :fail_on_warnings # A query parameter to indicate whether to rollback the API creation # (`true`) or not (`false`) when a warning is encountered. The default # value is `false`. # # @option params [Hash] :parameters # A key-value map of context-specific query string parameters specifying # the behavior of different API importing operations. The following # shows operation-specific parameters and their supported values. # # To exclude DocumentationParts from the import, set `parameters` as # `ignore=documentation`. # # To configure the endpoint type, set `parameters` as # `endpointConfigurationTypes=EDGE`, # `endpointConfigurationTypes=REGIONAL`, or # `endpointConfigurationTypes=PRIVATE`. The default endpoint type is # `EDGE`. # # To handle imported `basepath`, set `parameters` as `basepath=ignore`, # `basepath=prepend` or `basepath=split`. # # For example, the AWS CLI command to exclude documentation from the # imported API is: # # aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json' # # The AWS CLI command to set the regional endpoint on the imported API # is: # # aws apigateway import-rest-api --parameters endpointConfigurationTypes=REGIONAL --body 'file:///path/to/imported-api-body.json' # # @option params [required, String, StringIO, File] :body # \[Required\] The POST request body containing external API # definitions. Currently, only OpenAPI definition JSON/YAML files are # supported. The maximum size of the API definition file is 6MB. # # @return [Types::RestApi] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RestApi#id #id} => String # * {Types::RestApi#name #name} => String # * {Types::RestApi#description #description} => String # * {Types::RestApi#created_date #created_date} => Time # * {Types::RestApi#version #version} => String # * {Types::RestApi#warnings #warnings} => Array<String> # * {Types::RestApi#binary_media_types #binary_media_types} => Array<String> # * {Types::RestApi#minimum_compression_size #minimum_compression_size} => Integer # * {Types::RestApi#api_key_source #api_key_source} => String # * {Types::RestApi#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::RestApi#policy #policy} => String # * {Types::RestApi#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.import_rest_api({ # fail_on_warnings: false, # parameters: { # "String" => "String", # }, # body: "data", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.created_date #=> Time # resp.version #=> String # resp.warnings #=> Array # resp.warnings[0] #=> String # resp.binary_media_types #=> Array # resp.binary_media_types[0] #=> String # resp.minimum_compression_size #=> Integer # resp.api_key_source #=> String, one of "HEADER", "AUTHORIZER" # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.policy #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload import_rest_api(params = {}) # @param [Hash] params ({}) def import_rest_api(params = {}, options = {}) req = build_request(:import_rest_api, params) req.send_request(options) end # Creates a customization of a GatewayResponse of a specified response # type and status code on the given RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :response_type # \[Required\] The response type of the associated GatewayResponse. # Valid values are # * ACCESS\_DENIED # * API\_CONFIGURATION\_ERROR # * AUTHORIZER\_FAILURE # * AUTHORIZER\_CONFIGURATION\_ERROR # * BAD\_REQUEST\_PARAMETERS # * BAD\_REQUEST\_BODY # * DEFAULT\_4XX # * DEFAULT\_5XX # * EXPIRED\_TOKEN # * INVALID\_SIGNATURE # * INTEGRATION\_FAILURE # * INTEGRATION\_TIMEOUT # * INVALID\_API\_KEY # * MISSING\_AUTHENTICATION\_TOKEN # * QUOTA\_EXCEEDED # * REQUEST\_TOO\_LARGE # * RESOURCE\_NOT\_FOUND # * THROTTLED # * UNAUTHORIZED # * UNSUPPORTED\_MEDIA\_TYPE # # @option params [String] :status_code # The HTTP status code of the GatewayResponse. # # @option params [Hash] :response_parameters # Response parameters (paths, query strings and headers) of the # GatewayResponse as a string-to-string map of key-value pairs. # # @option params [Hash] :response_templates # Response templates of the GatewayResponse as a string-to-string map of # key-value pairs. # # @return [Types::GatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GatewayResponse#response_type #response_type} => String # * {Types::GatewayResponse#status_code #status_code} => String # * {Types::GatewayResponse#response_parameters #response_parameters} => Hash<String,String> # * {Types::GatewayResponse#response_templates #response_templates} => Hash<String,String> # * {Types::GatewayResponse#default_response #default_response} => Boolean # # @example Request syntax with placeholder values # # resp = client.put_gateway_response({ # rest_api_id: "String", # required # response_type: "DEFAULT_4XX", # required, accepts DEFAULT_4XX, DEFAULT_5XX, RESOURCE_NOT_FOUND, UNAUTHORIZED, INVALID_API_KEY, ACCESS_DENIED, AUTHORIZER_FAILURE, AUTHORIZER_CONFIGURATION_ERROR, INVALID_SIGNATURE, EXPIRED_TOKEN, MISSING_AUTHENTICATION_TOKEN, INTEGRATION_FAILURE, INTEGRATION_TIMEOUT, API_CONFIGURATION_ERROR, UNSUPPORTED_MEDIA_TYPE, BAD_REQUEST_PARAMETERS, BAD_REQUEST_BODY, REQUEST_TOO_LARGE, THROTTLED, QUOTA_EXCEEDED # status_code: "StatusCode", # response_parameters: { # "String" => "String", # }, # response_templates: { # "String" => "String", # }, # }) # # @example Response structure # # resp.response_type #=> String, one of "DEFAULT_4XX", "DEFAULT_5XX", "RESOURCE_NOT_FOUND", "UNAUTHORIZED", "INVALID_API_KEY", "ACCESS_DENIED", "AUTHORIZER_FAILURE", "AUTHORIZER_CONFIGURATION_ERROR", "INVALID_SIGNATURE", "EXPIRED_TOKEN", "MISSING_AUTHENTICATION_TOKEN", "INTEGRATION_FAILURE", "INTEGRATION_TIMEOUT", "API_CONFIGURATION_ERROR", "UNSUPPORTED_MEDIA_TYPE", "BAD_REQUEST_PARAMETERS", "BAD_REQUEST_BODY", "REQUEST_TOO_LARGE", "THROTTLED", "QUOTA_EXCEEDED" # resp.status_code #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> String # resp.response_templates #=> Hash # resp.response_templates["String"] #=> String # resp.default_response #=> Boolean # # @overload put_gateway_response(params = {}) # @param [Hash] params ({}) def put_gateway_response(params = {}, options = {}) req = build_request(:put_gateway_response, params) req.send_request(options) end # Sets up a method's integration. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies a put integration request's resource ID. # # @option params [required, String] :http_method # \[Required\] Specifies a put integration request's HTTP method. # # @option params [required, String] :type # \[Required\] Specifies a put integration input's type. # # @option params [String] :integration_http_method # Specifies a put integration HTTP method. When the integration type is # HTTP or AWS, this field is required. # # @option params [String] :uri # Specifies Uniform Resource Identifier (URI) of the integration # endpoint. # # * For `HTTP` or `HTTP_PROXY` integrations, the URI must be a fully # formed, encoded HTTP(S) URL according to the [RFC-3986 # specification][1], for either standard integration, where # `connectionType` is not `VPC_LINK`, or private integration, where # `connectionType` is `VPC_LINK`. For a private HTTP integration, the # URI is not used for routing. # # * For `AWS` or `AWS_PROXY` integrations, the URI is of the form # `arn:aws:apigateway:\{region\}:\{subdomain.service|service\}:path|action/\{service_api\}`. # Here, `\{Region\}` is the API Gateway region (e.g., `us-east-1`); # `\{service\}` is the name of the integrated AWS service (e.g., # `s3`); and `\{subdomain\}` is a designated subdomain supported by # certain AWS service for fast host-name lookup. `action` can be used # for an AWS service action-based API, using an # `Action=\{name\}&\{p1\}=\{v1\}&p2=\{v2\}...` query string. The # ensuing `\{service_api\}` refers to a supported action `\{name\}` # plus any required input parameters. Alternatively, `path` can be # used for an AWS service path-based API. The ensuing `service_api` # refers to the path to an AWS service resource, including the region # of the integrated AWS service, if applicable. For example, for # integration with the S3 API of `GetObject`, the `uri` can be either # `arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket=\{bucket\}&Key=\{key\}` # or `arn:aws:apigateway:us-west-2:s3:path/\{bucket\}/\{key\}` # # # # [1]: https://en.wikipedia.org/wiki/Uniform_Resource_Identifier # # @option params [String] :connection_type # The type of the network connection to the integration endpoint. The # valid value is `INTERNET` for connections through the public routable # internet or `VPC_LINK` for private connections between API Gateway and # a network load balancer in a VPC. The default value is `INTERNET`. # # @option params [String] :connection_id # The ([`id`][1]) of the VpcLink used for the integration when # `connectionType=VPC_LINK` and undefined, otherwise. # # # # [1]: https://docs.aws.amazon.com/apigateway/api-reference/resource/vpc-link/#id # # @option params [String] :credentials # Specifies whether credentials are required for a put integration. # # @option params [Hash] :request_parameters # A key-value map specifying request parameters that are passed from the # method request to the back end. The key is an integration request # parameter name and the associated value is a method request parameter # value or static value that must be enclosed within single quotes and # pre-encoded as required by the back end. The method request parameter # value must match the pattern of # `method.request.\{location\}.\{name\}`, where `location` is # `querystring`, `path`, or `header` and `name` must be a valid and # unique method request parameter name. # # @option params [Hash] :request_templates # Represents a map of Velocity templates that are applied on the request # payload based on the value of the Content-Type header sent by the # client. The content type value is the key in this map, and the # template (as a String) is the value. # # @option params [String] :passthrough_behavior # Specifies the pass-through behavior for incoming requests based on the # Content-Type header in the request, and the available mapping # templates specified as the `requestTemplates` property on the # Integration resource. There are three valid values: `WHEN_NO_MATCH`, # `WHEN_NO_TEMPLATES`, and `NEVER`. # # * `WHEN_NO_MATCH` passes the request body for unmapped content types # through to the integration back end without transformation. # # * `NEVER` rejects unmapped content types with an HTTP 415 # 'Unsupported Media Type' response. # # * `WHEN_NO_TEMPLATES` allows pass-through when the integration has NO # content types mapped to templates. However if there is at least one # content type defined, unmapped content types will be rejected with # the same 415 response. # # @option params [String] :cache_namespace # Specifies a group of related cached parameters. By default, API # Gateway uses the resource ID as the `cacheNamespace`. You can specify # the same `cacheNamespace` across resources to return the same cached # data for requests to different resources. # # @option params [Array] :cache_key_parameters # A list of request parameters whose values API Gateway caches. To be # valid values for `cacheKeyParameters`, these parameters must also be # specified for Method `requestParameters`. # # @option params [String] :content_handling # Specifies how to handle request payload content type conversions. # Supported values are `CONVERT_TO_BINARY` and `CONVERT_TO_TEXT`, with # the following behaviors: # # * `CONVERT_TO_BINARY`\: Converts a request payload from a # Base64-encoded string to the corresponding binary blob. # # * `CONVERT_TO_TEXT`\: Converts a request payload from a binary blob to # a Base64-encoded string. # # If this property is not defined, the request payload will be passed # through from the method request to integration request without # modification, provided that the `passthroughBehavior` is configured to # support payload pass-through. # # @option params [Integer] :timeout_in_millis # Custom timeout between 50 and 29,000 milliseconds. The default value # is 29,000 milliseconds or 29 seconds. # # @option params [Types::TlsConfig] :tls_config # # @return [Types::Integration] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Integration#type #type} => String # * {Types::Integration#http_method #http_method} => String # * {Types::Integration#uri #uri} => String # * {Types::Integration#connection_type #connection_type} => String # * {Types::Integration#connection_id #connection_id} => String # * {Types::Integration#credentials #credentials} => String # * {Types::Integration#request_parameters #request_parameters} => Hash<String,String> # * {Types::Integration#request_templates #request_templates} => Hash<String,String> # * {Types::Integration#passthrough_behavior #passthrough_behavior} => String # * {Types::Integration#content_handling #content_handling} => String # * {Types::Integration#timeout_in_millis #timeout_in_millis} => Integer # * {Types::Integration#cache_namespace #cache_namespace} => String # * {Types::Integration#cache_key_parameters #cache_key_parameters} => Array<String> # * {Types::Integration#integration_responses #integration_responses} => Hash<String,Types::IntegrationResponse> # * {Types::Integration#tls_config #tls_config} => Types::TlsConfig # # @example Request syntax with placeholder values # # resp = client.put_integration({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # type: "HTTP", # required, accepts HTTP, AWS, MOCK, HTTP_PROXY, AWS_PROXY # integration_http_method: "String", # uri: "String", # connection_type: "INTERNET", # accepts INTERNET, VPC_LINK # connection_id: "String", # credentials: "String", # request_parameters: { # "String" => "String", # }, # request_templates: { # "String" => "String", # }, # passthrough_behavior: "String", # cache_namespace: "String", # cache_key_parameters: ["String"], # content_handling: "CONVERT_TO_BINARY", # accepts CONVERT_TO_BINARY, CONVERT_TO_TEXT # timeout_in_millis: 1, # tls_config: { # insecure_skip_verification: false, # }, # }) # # @example Response structure # # resp.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.http_method #=> String # resp.uri #=> String # resp.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.connection_id #=> String # resp.credentials #=> String # resp.request_parameters #=> Hash # resp.request_parameters["String"] #=> String # resp.request_templates #=> Hash # resp.request_templates["String"] #=> String # resp.passthrough_behavior #=> String # resp.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.timeout_in_millis #=> Integer # resp.cache_namespace #=> String # resp.cache_key_parameters #=> Array # resp.cache_key_parameters[0] #=> String # resp.integration_responses #=> Hash # resp.integration_responses["String"].status_code #=> String # resp.integration_responses["String"].selection_pattern #=> String # resp.integration_responses["String"].response_parameters #=> Hash # resp.integration_responses["String"].response_parameters["String"] #=> String # resp.integration_responses["String"].response_templates #=> Hash # resp.integration_responses["String"].response_templates["String"] #=> String # resp.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.tls_config.insecure_skip_verification #=> Boolean # # @overload put_integration(params = {}) # @param [Hash] params ({}) def put_integration(params = {}, options = {}) req = build_request(:put_integration, params) req.send_request(options) end # Represents a put integration. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies a put integration response request's resource # identifier. # # @option params [required, String] :http_method # \[Required\] Specifies a put integration response request's HTTP # method. # # @option params [required, String] :status_code # \[Required\] Specifies the status code that is used to map the # integration response to an existing MethodResponse. # # @option params [String] :selection_pattern # Specifies the selection pattern of a put integration response. # # @option params [Hash] :response_parameters # A key-value map specifying response parameters that are passed to the # method response from the back end. The key is a method response header # parameter name and the mapped value is an integration response header # value, a static value enclosed within a pair of single quotes, or a # JSON expression from the integration response body. The mapping key # must match the pattern of `method.response.header.\{name\}`, where # `name` is a valid and unique header name. The mapped non-static value # must match the pattern of `integration.response.header.\{name\}` or # `integration.response.body.\{JSON-expression\}`, where `name` must be # a valid and unique response header name and `JSON-expression` a valid # JSON expression without the `$` prefix. # # @option params [Hash] :response_templates # Specifies a put integration response's templates. # # @option params [String] :content_handling # Specifies how to handle response payload content type conversions. # Supported values are `CONVERT_TO_BINARY` and `CONVERT_TO_TEXT`, with # the following behaviors: # # * `CONVERT_TO_BINARY`\: Converts a response payload from a # Base64-encoded string to the corresponding binary blob. # # * `CONVERT_TO_TEXT`\: Converts a response payload from a binary blob # to a Base64-encoded string. # # If this property is not defined, the response payload will be passed # through from the integration response to the method response without # modification. # # @return [Types::IntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::IntegrationResponse#status_code #status_code} => String # * {Types::IntegrationResponse#selection_pattern #selection_pattern} => String # * {Types::IntegrationResponse#response_parameters #response_parameters} => Hash<String,String> # * {Types::IntegrationResponse#response_templates #response_templates} => Hash<String,String> # * {Types::IntegrationResponse#content_handling #content_handling} => String # # @example Request syntax with placeholder values # # resp = client.put_integration_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # selection_pattern: "String", # response_parameters: { # "String" => "String", # }, # response_templates: { # "String" => "String", # }, # content_handling: "CONVERT_TO_BINARY", # accepts CONVERT_TO_BINARY, CONVERT_TO_TEXT # }) # # @example Response structure # # resp.status_code #=> String # resp.selection_pattern #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> String # resp.response_templates #=> Hash # resp.response_templates["String"] #=> String # resp.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # # @overload put_integration_response(params = {}) # @param [Hash] params ({}) def put_integration_response(params = {}, options = {}) req = build_request(:put_integration_response, params) req.send_request(options) end # Add a method to an existing Resource resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the new Method resource. # # @option params [required, String] :http_method # \[Required\] Specifies the method request's HTTP method type. # # @option params [required, String] :authorization_type # \[Required\] The method's authorization type. Valid values are `NONE` # for open access, `AWS_IAM` for using AWS IAM permissions, `CUSTOM` for # using a custom authorizer, or `COGNITO_USER_POOLS` for using a Cognito # user pool. # # @option params [String] :authorizer_id # Specifies the identifier of an Authorizer to use on this Method, if # the type is CUSTOM or COGNITO\_USER\_POOLS. The authorizer identifier # is generated by API Gateway when you created the authorizer. # # @option params [Boolean] :api_key_required # Specifies whether the method required a valid ApiKey. # # @option params [String] :operation_name # A human-friendly operation identifier for the method. For example, you # can assign the `operationName` of `ListPets` for the `GET /pets` # method in the `PetStore` example. # # @option params [Hash] :request_parameters # A key-value map defining required or optional method request # parameters that can be accepted by API Gateway. A key defines a method # request parameter name matching the pattern of # `method.request.\{location\}.\{name\}`, where `location` is # `querystring`, `path`, or `header` and `name` is a valid and unique # parameter name. The value associated with the key is a Boolean flag # indicating whether the parameter is required (`true`) or optional # (`false`). The method request parameter names defined here are # available in Integration to be mapped to integration request # parameters or body-mapping templates. # # @option params [Hash] :request_models # Specifies the Model resources used for the request's content type. # Request models are represented as a key/value map, with a content type # as the key and a Model name as the value. # # @option params [String] :request_validator_id # The identifier of a RequestValidator for validating the method # request. # # @option params [Array] :authorization_scopes # A list of authorization scopes configured on the method. The scopes # are used with a `COGNITO_USER_POOLS` authorizer to authorize the # method invocation. The authorization works by matching the method # scopes against the scopes parsed from the access token in the incoming # request. The method invocation is authorized if any method scopes # matches a claimed scope in the access token. Otherwise, the invocation # is not authorized. When the method scope is configured, the client # must provide an access token instead of an identity token for # authorization purposes. # # @return [Types::Method] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Method#http_method #http_method} => String # * {Types::Method#authorization_type #authorization_type} => String # * {Types::Method#authorizer_id #authorizer_id} => String # * {Types::Method#api_key_required #api_key_required} => Boolean # * {Types::Method#request_validator_id #request_validator_id} => String # * {Types::Method#operation_name #operation_name} => String # * {Types::Method#request_parameters #request_parameters} => Hash<String,Boolean> # * {Types::Method#request_models #request_models} => Hash<String,String> # * {Types::Method#method_responses #method_responses} => Hash<String,Types::MethodResponse> # * {Types::Method#method_integration #method_integration} => Types::Integration # * {Types::Method#authorization_scopes #authorization_scopes} => Array<String> # # @example Request syntax with placeholder values # # resp = client.put_method({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # authorization_type: "String", # required # authorizer_id: "String", # api_key_required: false, # operation_name: "String", # request_parameters: { # "String" => false, # }, # request_models: { # "String" => "String", # }, # request_validator_id: "String", # authorization_scopes: ["String"], # }) # # @example Response structure # # resp.http_method #=> String # resp.authorization_type #=> String # resp.authorizer_id #=> String # resp.api_key_required #=> Boolean # resp.request_validator_id #=> String # resp.operation_name #=> String # resp.request_parameters #=> Hash # resp.request_parameters["String"] #=> Boolean # resp.request_models #=> Hash # resp.request_models["String"] #=> String # resp.method_responses #=> Hash # resp.method_responses["String"].status_code #=> String # resp.method_responses["String"].response_parameters #=> Hash # resp.method_responses["String"].response_parameters["String"] #=> Boolean # resp.method_responses["String"].response_models #=> Hash # resp.method_responses["String"].response_models["String"] #=> String # resp.method_integration.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.method_integration.http_method #=> String # resp.method_integration.uri #=> String # resp.method_integration.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.method_integration.connection_id #=> String # resp.method_integration.credentials #=> String # resp.method_integration.request_parameters #=> Hash # resp.method_integration.request_parameters["String"] #=> String # resp.method_integration.request_templates #=> Hash # resp.method_integration.request_templates["String"] #=> String # resp.method_integration.passthrough_behavior #=> String # resp.method_integration.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.method_integration.timeout_in_millis #=> Integer # resp.method_integration.cache_namespace #=> String # resp.method_integration.cache_key_parameters #=> Array # resp.method_integration.cache_key_parameters[0] #=> String # resp.method_integration.integration_responses #=> Hash # resp.method_integration.integration_responses["String"].status_code #=> String # resp.method_integration.integration_responses["String"].selection_pattern #=> String # resp.method_integration.integration_responses["String"].response_parameters #=> Hash # resp.method_integration.integration_responses["String"].response_parameters["String"] #=> String # resp.method_integration.integration_responses["String"].response_templates #=> Hash # resp.method_integration.integration_responses["String"].response_templates["String"] #=> String # resp.method_integration.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.method_integration.tls_config.insecure_skip_verification #=> Boolean # resp.authorization_scopes #=> Array # resp.authorization_scopes[0] #=> String # # @overload put_method(params = {}) # @param [Hash] params ({}) def put_method(params = {}, options = {}) req = build_request(:put_method, params) req.send_request(options) end # Adds a MethodResponse to an existing Method resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the Method resource. # # @option params [required, String] :http_method # \[Required\] The HTTP verb of the Method resource. # # @option params [required, String] :status_code # \[Required\] The method response's status code. # # @option params [Hash] :response_parameters # A key-value map specifying required or optional response parameters # that API Gateway can send back to the caller. A key defines a method # response header name and the associated value is a Boolean flag # indicating whether the method response parameter is required or not. # The method response header names must match the pattern of # `method.response.header.\{name\}`, where `name` is a valid and unique # header name. The response parameter names defined here are available # in the integration response to be mapped from an integration response # header expressed in `integration.response.header.\{name\}`, a static # value enclosed within a pair of single quotes (e.g., # `'application/json'`), or a JSON expression from the back-end response # payload in the form of # `integration.response.body.\{JSON-expression\}`, where # `JSON-expression` is a valid JSON expression without the `$` prefix.) # # @option params [Hash] :response_models # Specifies the Model resources used for the response's content type. # Response models are represented as a key/value map, with a content # type as the key and a Model name as the value. # # @return [Types::MethodResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::MethodResponse#status_code #status_code} => String # * {Types::MethodResponse#response_parameters #response_parameters} => Hash<String,Boolean> # * {Types::MethodResponse#response_models #response_models} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.put_method_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # response_parameters: { # "String" => false, # }, # response_models: { # "String" => "String", # }, # }) # # @example Response structure # # resp.status_code #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> Boolean # resp.response_models #=> Hash # resp.response_models["String"] #=> String # # @overload put_method_response(params = {}) # @param [Hash] params ({}) def put_method_response(params = {}, options = {}) req = build_request(:put_method_response, params) req.send_request(options) end # A feature of the API Gateway control service for updating an existing # API with an input of external API definitions. The update can take the # form of merging the supplied definition into the existing API or # overwriting the existing API. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [String] :mode # The `mode` query parameter to specify the update mode. Valid values # are "merge" and "overwrite". By default, the update mode is # "merge". # # @option params [Boolean] :fail_on_warnings # A query parameter to indicate whether to rollback the API update # (`true`) or not (`false`) when a warning is encountered. The default # value is `false`. # # @option params [Hash] :parameters # Custom header parameters as part of the request. For example, to # exclude DocumentationParts from an imported API, set # `ignore=documentation` as a `parameters` value, as in the AWS CLI # command of `aws apigateway import-rest-api --parameters # ignore=documentation --body 'file:///path/to/imported-api-body.json'`. # # @option params [required, String, StringIO, File] :body # \[Required\] The PUT request body containing external API definitions. # Currently, only OpenAPI definition JSON/YAML files are supported. The # maximum size of the API definition file is 6MB. # # @return [Types::RestApi] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RestApi#id #id} => String # * {Types::RestApi#name #name} => String # * {Types::RestApi#description #description} => String # * {Types::RestApi#created_date #created_date} => Time # * {Types::RestApi#version #version} => String # * {Types::RestApi#warnings #warnings} => Array<String> # * {Types::RestApi#binary_media_types #binary_media_types} => Array<String> # * {Types::RestApi#minimum_compression_size #minimum_compression_size} => Integer # * {Types::RestApi#api_key_source #api_key_source} => String # * {Types::RestApi#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::RestApi#policy #policy} => String # * {Types::RestApi#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.put_rest_api({ # rest_api_id: "String", # required # mode: "merge", # accepts merge, overwrite # fail_on_warnings: false, # parameters: { # "String" => "String", # }, # body: "data", # required # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.created_date #=> Time # resp.version #=> String # resp.warnings #=> Array # resp.warnings[0] #=> String # resp.binary_media_types #=> Array # resp.binary_media_types[0] #=> String # resp.minimum_compression_size #=> Integer # resp.api_key_source #=> String, one of "HEADER", "AUTHORIZER" # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.policy #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload put_rest_api(params = {}) # @param [Hash] params ({}) def put_rest_api(params = {}, options = {}) req = build_request(:put_rest_api, params) req.send_request(options) end # Adds or updates a tag on a given resource. # # @option params [required, String] :resource_arn # \[Required\] The ARN of a resource that can be tagged. # # @option params [required, Hash] :tags # \[Required\] The key-value map of strings. The valid character set is # \[a-zA-Z+-=.\_:/\]. The tag key can be up to 128 characters and must # not start with `aws:`. The tag value can be up to 256 characters. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.tag_resource({ # resource_arn: "String", # required # tags: { # required # "String" => "String", # }, # }) # # @overload tag_resource(params = {}) # @param [Hash] params ({}) def tag_resource(params = {}, options = {}) req = build_request(:tag_resource, params) req.send_request(options) end # Simulate the execution of an Authorizer in your RestApi with headers, # parameters, and an incoming request body. # #
# [Use Lambda Function as Authorizer][1] [Use Cognito User Pool as # Authorizer][2] #
# # # # [1]: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html # [2]: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :authorizer_id # \[Required\] Specifies a test invoke authorizer request's Authorizer # ID. # # @option params [Hash] :headers # \[Required\] A key-value map of headers to simulate an incoming # invocation request. This is where the incoming authorization token, or # identity source, should be specified. # # @option params [Hash] :multi_value_headers # \[Optional\] The headers as a map from string to list of values to # simulate an incoming invocation request. This is where the incoming # authorization token, or identity source, may be specified. # # @option params [String] :path_with_query_string # \[Optional\] The URI path, including query string, of the simulated # invocation request. Use this to specify path parameters and query # string parameters. # # @option params [String] :body # \[Optional\] The simulated request body of an incoming invocation # request. # # @option params [Hash] :stage_variables # A key-value map of stage variables to simulate an invocation on a # deployed Stage. # # @option params [Hash] :additional_context # \[Optional\] A key-value map of additional context variables. # # @return [Types::TestInvokeAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::TestInvokeAuthorizerResponse#client_status #client_status} => Integer # * {Types::TestInvokeAuthorizerResponse#log #log} => String # * {Types::TestInvokeAuthorizerResponse#latency #latency} => Integer # * {Types::TestInvokeAuthorizerResponse#principal_id #principal_id} => String # * {Types::TestInvokeAuthorizerResponse#policy #policy} => String # * {Types::TestInvokeAuthorizerResponse#authorization #authorization} => Hash<String,Array<String>> # * {Types::TestInvokeAuthorizerResponse#claims #claims} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.test_invoke_authorizer({ # rest_api_id: "String", # required # authorizer_id: "String", # required # headers: { # "String" => "String", # }, # multi_value_headers: { # "String" => ["String"], # }, # path_with_query_string: "String", # body: "String", # stage_variables: { # "String" => "String", # }, # additional_context: { # "String" => "String", # }, # }) # # @example Response structure # # resp.client_status #=> Integer # resp.log #=> String # resp.latency #=> Integer # resp.principal_id #=> String # resp.policy #=> String # resp.authorization #=> Hash # resp.authorization["String"] #=> Array # resp.authorization["String"][0] #=> String # resp.claims #=> Hash # resp.claims["String"] #=> String # # @overload test_invoke_authorizer(params = {}) # @param [Hash] params ({}) def test_invoke_authorizer(params = {}, options = {}) req = build_request(:test_invoke_authorizer, params) req.send_request(options) end # Simulate the execution of a Method in your RestApi with headers, # parameters, and an incoming request body. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies a test invoke method request's resource ID. # # @option params [required, String] :http_method # \[Required\] Specifies a test invoke method request's HTTP method. # # @option params [String] :path_with_query_string # The URI path, including query string, of the simulated invocation # request. Use this to specify path parameters and query string # parameters. # # @option params [String] :body # The simulated request body of an incoming invocation request. # # @option params [Hash] :headers # A key-value map of headers to simulate an incoming invocation request. # # @option params [Hash] :multi_value_headers # The headers as a map from string to list of values to simulate an # incoming invocation request. # # @option params [String] :client_certificate_id # A ClientCertificate identifier to use in the test invocation. API # Gateway will use the certificate when making the HTTPS request to the # defined back-end endpoint. # # @option params [Hash] :stage_variables # A key-value map of stage variables to simulate an invocation on a # deployed Stage. # # @return [Types::TestInvokeMethodResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::TestInvokeMethodResponse#status #status} => Integer # * {Types::TestInvokeMethodResponse#body #body} => String # * {Types::TestInvokeMethodResponse#headers #headers} => Hash<String,String> # * {Types::TestInvokeMethodResponse#multi_value_headers #multi_value_headers} => Hash<String,Array<String>> # * {Types::TestInvokeMethodResponse#log #log} => String # * {Types::TestInvokeMethodResponse#latency #latency} => Integer # # @example Request syntax with placeholder values # # resp = client.test_invoke_method({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # path_with_query_string: "String", # body: "String", # headers: { # "String" => "String", # }, # multi_value_headers: { # "String" => ["String"], # }, # client_certificate_id: "String", # stage_variables: { # "String" => "String", # }, # }) # # @example Response structure # # resp.status #=> Integer # resp.body #=> String # resp.headers #=> Hash # resp.headers["String"] #=> String # resp.multi_value_headers #=> Hash # resp.multi_value_headers["String"] #=> Array # resp.multi_value_headers["String"][0] #=> String # resp.log #=> String # resp.latency #=> Integer # # @overload test_invoke_method(params = {}) # @param [Hash] params ({}) def test_invoke_method(params = {}, options = {}) req = build_request(:test_invoke_method, params) req.send_request(options) end # Removes a tag from a given resource. # # @option params [required, String] :resource_arn # \[Required\] The ARN of a resource that can be tagged. # # @option params [required, Array] :tag_keys # \[Required\] The Tag keys to delete. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.untag_resource({ # resource_arn: "String", # required # tag_keys: ["String"], # required # }) # # @overload untag_resource(params = {}) # @param [Hash] params ({}) def untag_resource(params = {}, options = {}) req = build_request(:untag_resource, params) req.send_request(options) end # Changes information about the current Account resource. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Account] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Account#cloudwatch_role_arn #cloudwatch_role_arn} => String # * {Types::Account#throttle_settings #throttle_settings} => Types::ThrottleSettings # * {Types::Account#features #features} => Array<String> # * {Types::Account#api_key_version #api_key_version} => String # # @example Request syntax with placeholder values # # resp = client.update_account({ # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.cloudwatch_role_arn #=> String # resp.throttle_settings.burst_limit #=> Integer # resp.throttle_settings.rate_limit #=> Float # resp.features #=> Array # resp.features[0] #=> String # resp.api_key_version #=> String # # @overload update_account(params = {}) # @param [Hash] params ({}) def update_account(params = {}, options = {}) req = build_request(:update_account, params) req.send_request(options) end # Changes information about an ApiKey resource. # # @option params [required, String] :api_key # \[Required\] The identifier of the ApiKey resource to be updated. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::ApiKey] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ApiKey#id #id} => String # * {Types::ApiKey#value #value} => String # * {Types::ApiKey#name #name} => String # * {Types::ApiKey#customer_id #customer_id} => String # * {Types::ApiKey#description #description} => String # * {Types::ApiKey#enabled #enabled} => Boolean # * {Types::ApiKey#created_date #created_date} => Time # * {Types::ApiKey#last_updated_date #last_updated_date} => Time # * {Types::ApiKey#stage_keys #stage_keys} => Array<String> # * {Types::ApiKey#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.update_api_key({ # api_key: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.value #=> String # resp.name #=> String # resp.customer_id #=> String # resp.description #=> String # resp.enabled #=> Boolean # resp.created_date #=> Time # resp.last_updated_date #=> Time # resp.stage_keys #=> Array # resp.stage_keys[0] #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload update_api_key(params = {}) # @param [Hash] params ({}) def update_api_key(params = {}, options = {}) req = build_request(:update_api_key, params) req.send_request(options) end # Updates an existing Authorizer resource. # #
# [AWS CLI][1] #
# # # # [1]: https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-authorizer.html # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :authorizer_id # \[Required\] The identifier of the Authorizer resource. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Authorizer] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Authorizer#id #id} => String # * {Types::Authorizer#name #name} => String # * {Types::Authorizer#type #type} => String # * {Types::Authorizer#provider_arns #provider_arns} => Array<String> # * {Types::Authorizer#auth_type #auth_type} => String # * {Types::Authorizer#authorizer_uri #authorizer_uri} => String # * {Types::Authorizer#authorizer_credentials #authorizer_credentials} => String # * {Types::Authorizer#identity_source #identity_source} => String # * {Types::Authorizer#identity_validation_expression #identity_validation_expression} => String # * {Types::Authorizer#authorizer_result_ttl_in_seconds #authorizer_result_ttl_in_seconds} => Integer # # @example Request syntax with placeholder values # # resp = client.update_authorizer({ # rest_api_id: "String", # required # authorizer_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.type #=> String, one of "TOKEN", "REQUEST", "COGNITO_USER_POOLS" # resp.provider_arns #=> Array # resp.provider_arns[0] #=> String # resp.auth_type #=> String # resp.authorizer_uri #=> String # resp.authorizer_credentials #=> String # resp.identity_source #=> String # resp.identity_validation_expression #=> String # resp.authorizer_result_ttl_in_seconds #=> Integer # # @overload update_authorizer(params = {}) # @param [Hash] params ({}) def update_authorizer(params = {}, options = {}) req = build_request(:update_authorizer, params) req.send_request(options) end # Changes information about the BasePathMapping resource. # # @option params [required, String] :domain_name # \[Required\] The domain name of the BasePathMapping resource to # change. # # @option params [required, String] :base_path # \[Required\] The base path of the BasePathMapping resource to change. # # To specify an empty base path, set this parameter to `'(none)'`. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::BasePathMapping] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BasePathMapping#base_path #base_path} => String # * {Types::BasePathMapping#rest_api_id #rest_api_id} => String # * {Types::BasePathMapping#stage #stage} => String # # @example Request syntax with placeholder values # # resp = client.update_base_path_mapping({ # domain_name: "String", # required # base_path: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.base_path #=> String # resp.rest_api_id #=> String # resp.stage #=> String # # @overload update_base_path_mapping(params = {}) # @param [Hash] params ({}) def update_base_path_mapping(params = {}, options = {}) req = build_request(:update_base_path_mapping, params) req.send_request(options) end # Changes information about an ClientCertificate resource. # # @option params [required, String] :client_certificate_id # \[Required\] The identifier of the ClientCertificate resource to be # updated. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::ClientCertificate] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ClientCertificate#client_certificate_id #client_certificate_id} => String # * {Types::ClientCertificate#description #description} => String # * {Types::ClientCertificate#pem_encoded_certificate #pem_encoded_certificate} => String # * {Types::ClientCertificate#created_date #created_date} => Time # * {Types::ClientCertificate#expiration_date #expiration_date} => Time # * {Types::ClientCertificate#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.update_client_certificate({ # client_certificate_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.client_certificate_id #=> String # resp.description #=> String # resp.pem_encoded_certificate #=> String # resp.created_date #=> Time # resp.expiration_date #=> Time # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload update_client_certificate(params = {}) # @param [Hash] params ({}) def update_client_certificate(params = {}, options = {}) req = build_request(:update_client_certificate, params) req.send_request(options) end # Changes information about a Deployment resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :deployment_id # The replacement identifier for the Deployment resource to change # information about. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Deployment] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Deployment#id #id} => String # * {Types::Deployment#description #description} => String # * {Types::Deployment#created_date #created_date} => Time # * {Types::Deployment#api_summary #api_summary} => Hash<String,Hash<String,Types::MethodSnapshot>> # # @example Request syntax with placeholder values # # resp = client.update_deployment({ # rest_api_id: "String", # required # deployment_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.description #=> String # resp.created_date #=> Time # resp.api_summary #=> Hash # resp.api_summary["String"] #=> Hash # resp.api_summary["String"]["String"].authorization_type #=> String # resp.api_summary["String"]["String"].api_key_required #=> Boolean # # @overload update_deployment(params = {}) # @param [Hash] params ({}) def update_deployment(params = {}, options = {}) req = build_request(:update_deployment, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :documentation_part_id # \[Required\] The identifier of the to-be-updated documentation part. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::DocumentationPart] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationPart#id #id} => String # * {Types::DocumentationPart#location #location} => Types::DocumentationPartLocation # * {Types::DocumentationPart#properties #properties} => String # # @example Request syntax with placeholder values # # resp = client.update_documentation_part({ # rest_api_id: "String", # required # documentation_part_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.location.type #=> String, one of "API", "AUTHORIZER", "MODEL", "RESOURCE", "METHOD", "PATH_PARAMETER", "QUERY_PARAMETER", "REQUEST_HEADER", "REQUEST_BODY", "RESPONSE", "RESPONSE_HEADER", "RESPONSE_BODY" # resp.location.path #=> String # resp.location.method #=> String # resp.location.status_code #=> String # resp.location.name #=> String # resp.properties #=> String # # @overload update_documentation_part(params = {}) # @param [Hash] params ({}) def update_documentation_part(params = {}, options = {}) req = build_request(:update_documentation_part, params) req.send_request(options) end # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi.. # # @option params [required, String] :documentation_version # \[Required\] The version identifier of the to-be-updated documentation # version. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::DocumentationVersion] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DocumentationVersion#version #version} => String # * {Types::DocumentationVersion#created_date #created_date} => Time # * {Types::DocumentationVersion#description #description} => String # # @example Request syntax with placeholder values # # resp = client.update_documentation_version({ # rest_api_id: "String", # required # documentation_version: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.version #=> String # resp.created_date #=> Time # resp.description #=> String # # @overload update_documentation_version(params = {}) # @param [Hash] params ({}) def update_documentation_version(params = {}, options = {}) req = build_request(:update_documentation_version, params) req.send_request(options) end # Changes information about the DomainName resource. # # @option params [required, String] :domain_name # \[Required\] The name of the DomainName resource to be changed. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::DomainName] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DomainName#domain_name #domain_name} => String # * {Types::DomainName#certificate_name #certificate_name} => String # * {Types::DomainName#certificate_arn #certificate_arn} => String # * {Types::DomainName#certificate_upload_date #certificate_upload_date} => Time # * {Types::DomainName#regional_domain_name #regional_domain_name} => String # * {Types::DomainName#regional_hosted_zone_id #regional_hosted_zone_id} => String # * {Types::DomainName#regional_certificate_name #regional_certificate_name} => String # * {Types::DomainName#regional_certificate_arn #regional_certificate_arn} => String # * {Types::DomainName#distribution_domain_name #distribution_domain_name} => String # * {Types::DomainName#distribution_hosted_zone_id #distribution_hosted_zone_id} => String # * {Types::DomainName#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::DomainName#domain_name_status #domain_name_status} => String # * {Types::DomainName#domain_name_status_message #domain_name_status_message} => String # * {Types::DomainName#security_policy #security_policy} => String # * {Types::DomainName#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.update_domain_name({ # domain_name: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.domain_name #=> String # resp.certificate_name #=> String # resp.certificate_arn #=> String # resp.certificate_upload_date #=> Time # resp.regional_domain_name #=> String # resp.regional_hosted_zone_id #=> String # resp.regional_certificate_name #=> String # resp.regional_certificate_arn #=> String # resp.distribution_domain_name #=> String # resp.distribution_hosted_zone_id #=> String # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.domain_name_status #=> String, one of "AVAILABLE", "UPDATING", "PENDING" # resp.domain_name_status_message #=> String # resp.security_policy #=> String, one of "TLS_1_0", "TLS_1_2" # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload update_domain_name(params = {}) # @param [Hash] params ({}) def update_domain_name(params = {}, options = {}) req = build_request(:update_domain_name, params) req.send_request(options) end # Updates a GatewayResponse of a specified response type on the given # RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :response_type # \[Required\] The response type of the associated GatewayResponse. # Valid values are # * ACCESS\_DENIED # * API\_CONFIGURATION\_ERROR # * AUTHORIZER\_FAILURE # * AUTHORIZER\_CONFIGURATION\_ERROR # * BAD\_REQUEST\_PARAMETERS # * BAD\_REQUEST\_BODY # * DEFAULT\_4XX # * DEFAULT\_5XX # * EXPIRED\_TOKEN # * INVALID\_SIGNATURE # * INTEGRATION\_FAILURE # * INTEGRATION\_TIMEOUT # * INVALID\_API\_KEY # * MISSING\_AUTHENTICATION\_TOKEN # * QUOTA\_EXCEEDED # * REQUEST\_TOO\_LARGE # * RESOURCE\_NOT\_FOUND # * THROTTLED # * UNAUTHORIZED # * UNSUPPORTED\_MEDIA\_TYPE # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::GatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GatewayResponse#response_type #response_type} => String # * {Types::GatewayResponse#status_code #status_code} => String # * {Types::GatewayResponse#response_parameters #response_parameters} => Hash<String,String> # * {Types::GatewayResponse#response_templates #response_templates} => Hash<String,String> # * {Types::GatewayResponse#default_response #default_response} => Boolean # # @example Request syntax with placeholder values # # resp = client.update_gateway_response({ # rest_api_id: "String", # required # response_type: "DEFAULT_4XX", # required, accepts DEFAULT_4XX, DEFAULT_5XX, RESOURCE_NOT_FOUND, UNAUTHORIZED, INVALID_API_KEY, ACCESS_DENIED, AUTHORIZER_FAILURE, AUTHORIZER_CONFIGURATION_ERROR, INVALID_SIGNATURE, EXPIRED_TOKEN, MISSING_AUTHENTICATION_TOKEN, INTEGRATION_FAILURE, INTEGRATION_TIMEOUT, API_CONFIGURATION_ERROR, UNSUPPORTED_MEDIA_TYPE, BAD_REQUEST_PARAMETERS, BAD_REQUEST_BODY, REQUEST_TOO_LARGE, THROTTLED, QUOTA_EXCEEDED # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.response_type #=> String, one of "DEFAULT_4XX", "DEFAULT_5XX", "RESOURCE_NOT_FOUND", "UNAUTHORIZED", "INVALID_API_KEY", "ACCESS_DENIED", "AUTHORIZER_FAILURE", "AUTHORIZER_CONFIGURATION_ERROR", "INVALID_SIGNATURE", "EXPIRED_TOKEN", "MISSING_AUTHENTICATION_TOKEN", "INTEGRATION_FAILURE", "INTEGRATION_TIMEOUT", "API_CONFIGURATION_ERROR", "UNSUPPORTED_MEDIA_TYPE", "BAD_REQUEST_PARAMETERS", "BAD_REQUEST_BODY", "REQUEST_TOO_LARGE", "THROTTLED", "QUOTA_EXCEEDED" # resp.status_code #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> String # resp.response_templates #=> Hash # resp.response_templates["String"] #=> String # resp.default_response #=> Boolean # # @overload update_gateway_response(params = {}) # @param [Hash] params ({}) def update_gateway_response(params = {}, options = {}) req = build_request(:update_gateway_response, params) req.send_request(options) end # Represents an update integration. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Represents an update integration request's resource # identifier. # # @option params [required, String] :http_method # \[Required\] Represents an update integration request's HTTP method. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Integration] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Integration#type #type} => String # * {Types::Integration#http_method #http_method} => String # * {Types::Integration#uri #uri} => String # * {Types::Integration#connection_type #connection_type} => String # * {Types::Integration#connection_id #connection_id} => String # * {Types::Integration#credentials #credentials} => String # * {Types::Integration#request_parameters #request_parameters} => Hash<String,String> # * {Types::Integration#request_templates #request_templates} => Hash<String,String> # * {Types::Integration#passthrough_behavior #passthrough_behavior} => String # * {Types::Integration#content_handling #content_handling} => String # * {Types::Integration#timeout_in_millis #timeout_in_millis} => Integer # * {Types::Integration#cache_namespace #cache_namespace} => String # * {Types::Integration#cache_key_parameters #cache_key_parameters} => Array<String> # * {Types::Integration#integration_responses #integration_responses} => Hash<String,Types::IntegrationResponse> # * {Types::Integration#tls_config #tls_config} => Types::TlsConfig # # @example Request syntax with placeholder values # # resp = client.update_integration({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.http_method #=> String # resp.uri #=> String # resp.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.connection_id #=> String # resp.credentials #=> String # resp.request_parameters #=> Hash # resp.request_parameters["String"] #=> String # resp.request_templates #=> Hash # resp.request_templates["String"] #=> String # resp.passthrough_behavior #=> String # resp.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.timeout_in_millis #=> Integer # resp.cache_namespace #=> String # resp.cache_key_parameters #=> Array # resp.cache_key_parameters[0] #=> String # resp.integration_responses #=> Hash # resp.integration_responses["String"].status_code #=> String # resp.integration_responses["String"].selection_pattern #=> String # resp.integration_responses["String"].response_parameters #=> Hash # resp.integration_responses["String"].response_parameters["String"] #=> String # resp.integration_responses["String"].response_templates #=> Hash # resp.integration_responses["String"].response_templates["String"] #=> String # resp.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.tls_config.insecure_skip_verification #=> Boolean # # @overload update_integration(params = {}) # @param [Hash] params ({}) def update_integration(params = {}, options = {}) req = build_request(:update_integration, params) req.send_request(options) end # Represents an update integration response. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] Specifies an update integration response request's # resource identifier. # # @option params [required, String] :http_method # \[Required\] Specifies an update integration response request's HTTP # method. # # @option params [required, String] :status_code # \[Required\] Specifies an update integration response request's # status code. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::IntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::IntegrationResponse#status_code #status_code} => String # * {Types::IntegrationResponse#selection_pattern #selection_pattern} => String # * {Types::IntegrationResponse#response_parameters #response_parameters} => Hash<String,String> # * {Types::IntegrationResponse#response_templates #response_templates} => Hash<String,String> # * {Types::IntegrationResponse#content_handling #content_handling} => String # # @example Request syntax with placeholder values # # resp = client.update_integration_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.status_code #=> String # resp.selection_pattern #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> String # resp.response_templates #=> Hash # resp.response_templates["String"] #=> String # resp.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # # @overload update_integration_response(params = {}) # @param [Hash] params ({}) def update_integration_response(params = {}, options = {}) req = build_request(:update_integration_response, params) req.send_request(options) end # Updates an existing Method resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the Method resource. # # @option params [required, String] :http_method # \[Required\] The HTTP verb of the Method resource. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Method] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Method#http_method #http_method} => String # * {Types::Method#authorization_type #authorization_type} => String # * {Types::Method#authorizer_id #authorizer_id} => String # * {Types::Method#api_key_required #api_key_required} => Boolean # * {Types::Method#request_validator_id #request_validator_id} => String # * {Types::Method#operation_name #operation_name} => String # * {Types::Method#request_parameters #request_parameters} => Hash<String,Boolean> # * {Types::Method#request_models #request_models} => Hash<String,String> # * {Types::Method#method_responses #method_responses} => Hash<String,Types::MethodResponse> # * {Types::Method#method_integration #method_integration} => Types::Integration # * {Types::Method#authorization_scopes #authorization_scopes} => Array<String> # # @example Request syntax with placeholder values # # resp = client.update_method({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.http_method #=> String # resp.authorization_type #=> String # resp.authorizer_id #=> String # resp.api_key_required #=> Boolean # resp.request_validator_id #=> String # resp.operation_name #=> String # resp.request_parameters #=> Hash # resp.request_parameters["String"] #=> Boolean # resp.request_models #=> Hash # resp.request_models["String"] #=> String # resp.method_responses #=> Hash # resp.method_responses["String"].status_code #=> String # resp.method_responses["String"].response_parameters #=> Hash # resp.method_responses["String"].response_parameters["String"] #=> Boolean # resp.method_responses["String"].response_models #=> Hash # resp.method_responses["String"].response_models["String"] #=> String # resp.method_integration.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.method_integration.http_method #=> String # resp.method_integration.uri #=> String # resp.method_integration.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.method_integration.connection_id #=> String # resp.method_integration.credentials #=> String # resp.method_integration.request_parameters #=> Hash # resp.method_integration.request_parameters["String"] #=> String # resp.method_integration.request_templates #=> Hash # resp.method_integration.request_templates["String"] #=> String # resp.method_integration.passthrough_behavior #=> String # resp.method_integration.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.method_integration.timeout_in_millis #=> Integer # resp.method_integration.cache_namespace #=> String # resp.method_integration.cache_key_parameters #=> Array # resp.method_integration.cache_key_parameters[0] #=> String # resp.method_integration.integration_responses #=> Hash # resp.method_integration.integration_responses["String"].status_code #=> String # resp.method_integration.integration_responses["String"].selection_pattern #=> String # resp.method_integration.integration_responses["String"].response_parameters #=> Hash # resp.method_integration.integration_responses["String"].response_parameters["String"] #=> String # resp.method_integration.integration_responses["String"].response_templates #=> Hash # resp.method_integration.integration_responses["String"].response_templates["String"] #=> String # resp.method_integration.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.method_integration.tls_config.insecure_skip_verification #=> Boolean # resp.authorization_scopes #=> Array # resp.authorization_scopes[0] #=> String # # @overload update_method(params = {}) # @param [Hash] params ({}) def update_method(params = {}, options = {}) req = build_request(:update_method, params) req.send_request(options) end # Updates an existing MethodResponse resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The Resource identifier for the MethodResponse resource. # # @option params [required, String] :http_method # \[Required\] The HTTP verb of the Method resource. # # @option params [required, String] :status_code # \[Required\] The status code for the MethodResponse resource. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::MethodResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::MethodResponse#status_code #status_code} => String # * {Types::MethodResponse#response_parameters #response_parameters} => Hash<String,Boolean> # * {Types::MethodResponse#response_models #response_models} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.update_method_response({ # rest_api_id: "String", # required # resource_id: "String", # required # http_method: "String", # required # status_code: "StatusCode", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.status_code #=> String # resp.response_parameters #=> Hash # resp.response_parameters["String"] #=> Boolean # resp.response_models #=> Hash # resp.response_models["String"] #=> String # # @overload update_method_response(params = {}) # @param [Hash] params ({}) def update_method_response(params = {}, options = {}) req = build_request(:update_method_response, params) req.send_request(options) end # Changes information about a model. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :model_name # \[Required\] The name of the model to update. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Model] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Model#id #id} => String # * {Types::Model#name #name} => String # * {Types::Model#description #description} => String # * {Types::Model#schema #schema} => String # * {Types::Model#content_type #content_type} => String # # @example Request syntax with placeholder values # # resp = client.update_model({ # rest_api_id: "String", # required # model_name: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.schema #=> String # resp.content_type #=> String # # @overload update_model(params = {}) # @param [Hash] params ({}) def update_model(params = {}, options = {}) req = build_request(:update_model, params) req.send_request(options) end # Updates a RequestValidator of a given RestApi. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :request_validator_id # \[Required\] The identifier of RequestValidator to be updated. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::RequestValidator] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RequestValidator#id #id} => String # * {Types::RequestValidator#name #name} => String # * {Types::RequestValidator#validate_request_body #validate_request_body} => Boolean # * {Types::RequestValidator#validate_request_parameters #validate_request_parameters} => Boolean # # @example Request syntax with placeholder values # # resp = client.update_request_validator({ # rest_api_id: "String", # required # request_validator_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.validate_request_body #=> Boolean # resp.validate_request_parameters #=> Boolean # # @overload update_request_validator(params = {}) # @param [Hash] params ({}) def update_request_validator(params = {}, options = {}) req = build_request(:update_request_validator, params) req.send_request(options) end # Changes information about a Resource resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :resource_id # \[Required\] The identifier of the Resource resource. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Resource] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Resource#id #id} => String # * {Types::Resource#parent_id #parent_id} => String # * {Types::Resource#path_part #path_part} => String # * {Types::Resource#path #path} => String # * {Types::Resource#resource_methods #resource_methods} => Hash<String,Types::Method> # # @example Request syntax with placeholder values # # resp = client.update_resource({ # rest_api_id: "String", # required # resource_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.parent_id #=> String # resp.path_part #=> String # resp.path #=> String # resp.resource_methods #=> Hash # resp.resource_methods["String"].http_method #=> String # resp.resource_methods["String"].authorization_type #=> String # resp.resource_methods["String"].authorizer_id #=> String # resp.resource_methods["String"].api_key_required #=> Boolean # resp.resource_methods["String"].request_validator_id #=> String # resp.resource_methods["String"].operation_name #=> String # resp.resource_methods["String"].request_parameters #=> Hash # resp.resource_methods["String"].request_parameters["String"] #=> Boolean # resp.resource_methods["String"].request_models #=> Hash # resp.resource_methods["String"].request_models["String"] #=> String # resp.resource_methods["String"].method_responses #=> Hash # resp.resource_methods["String"].method_responses["String"].status_code #=> String # resp.resource_methods["String"].method_responses["String"].response_parameters #=> Hash # resp.resource_methods["String"].method_responses["String"].response_parameters["String"] #=> Boolean # resp.resource_methods["String"].method_responses["String"].response_models #=> Hash # resp.resource_methods["String"].method_responses["String"].response_models["String"] #=> String # resp.resource_methods["String"].method_integration.type #=> String, one of "HTTP", "AWS", "MOCK", "HTTP_PROXY", "AWS_PROXY" # resp.resource_methods["String"].method_integration.http_method #=> String # resp.resource_methods["String"].method_integration.uri #=> String # resp.resource_methods["String"].method_integration.connection_type #=> String, one of "INTERNET", "VPC_LINK" # resp.resource_methods["String"].method_integration.connection_id #=> String # resp.resource_methods["String"].method_integration.credentials #=> String # resp.resource_methods["String"].method_integration.request_parameters #=> Hash # resp.resource_methods["String"].method_integration.request_parameters["String"] #=> String # resp.resource_methods["String"].method_integration.request_templates #=> Hash # resp.resource_methods["String"].method_integration.request_templates["String"] #=> String # resp.resource_methods["String"].method_integration.passthrough_behavior #=> String # resp.resource_methods["String"].method_integration.content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.resource_methods["String"].method_integration.timeout_in_millis #=> Integer # resp.resource_methods["String"].method_integration.cache_namespace #=> String # resp.resource_methods["String"].method_integration.cache_key_parameters #=> Array # resp.resource_methods["String"].method_integration.cache_key_parameters[0] #=> String # resp.resource_methods["String"].method_integration.integration_responses #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].status_code #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].selection_pattern #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].response_parameters #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].response_parameters["String"] #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].response_templates #=> Hash # resp.resource_methods["String"].method_integration.integration_responses["String"].response_templates["String"] #=> String # resp.resource_methods["String"].method_integration.integration_responses["String"].content_handling #=> String, one of "CONVERT_TO_BINARY", "CONVERT_TO_TEXT" # resp.resource_methods["String"].method_integration.tls_config.insecure_skip_verification #=> Boolean # resp.resource_methods["String"].authorization_scopes #=> Array # resp.resource_methods["String"].authorization_scopes[0] #=> String # # @overload update_resource(params = {}) # @param [Hash] params ({}) def update_resource(params = {}, options = {}) req = build_request(:update_resource, params) req.send_request(options) end # Changes information about the specified API. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::RestApi] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RestApi#id #id} => String # * {Types::RestApi#name #name} => String # * {Types::RestApi#description #description} => String # * {Types::RestApi#created_date #created_date} => Time # * {Types::RestApi#version #version} => String # * {Types::RestApi#warnings #warnings} => Array<String> # * {Types::RestApi#binary_media_types #binary_media_types} => Array<String> # * {Types::RestApi#minimum_compression_size #minimum_compression_size} => Integer # * {Types::RestApi#api_key_source #api_key_source} => String # * {Types::RestApi#endpoint_configuration #endpoint_configuration} => Types::EndpointConfiguration # * {Types::RestApi#policy #policy} => String # * {Types::RestApi#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.update_rest_api({ # rest_api_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.created_date #=> Time # resp.version #=> String # resp.warnings #=> Array # resp.warnings[0] #=> String # resp.binary_media_types #=> Array # resp.binary_media_types[0] #=> String # resp.minimum_compression_size #=> Integer # resp.api_key_source #=> String, one of "HEADER", "AUTHORIZER" # resp.endpoint_configuration.types #=> Array # resp.endpoint_configuration.types[0] #=> String, one of "REGIONAL", "EDGE", "PRIVATE" # resp.endpoint_configuration.vpc_endpoint_ids #=> Array # resp.endpoint_configuration.vpc_endpoint_ids[0] #=> String # resp.policy #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload update_rest_api(params = {}) # @param [Hash] params ({}) def update_rest_api(params = {}, options = {}) req = build_request(:update_rest_api, params) req.send_request(options) end # Changes information about a Stage resource. # # @option params [required, String] :rest_api_id # \[Required\] The string identifier of the associated RestApi. # # @option params [required, String] :stage_name # \[Required\] The name of the Stage resource to change information # about. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Stage] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Stage#deployment_id #deployment_id} => String # * {Types::Stage#client_certificate_id #client_certificate_id} => String # * {Types::Stage#stage_name #stage_name} => String # * {Types::Stage#description #description} => String # * {Types::Stage#cache_cluster_enabled #cache_cluster_enabled} => Boolean # * {Types::Stage#cache_cluster_size #cache_cluster_size} => String # * {Types::Stage#cache_cluster_status #cache_cluster_status} => String # * {Types::Stage#method_settings #method_settings} => Hash<String,Types::MethodSetting> # * {Types::Stage#variables #variables} => Hash<String,String> # * {Types::Stage#documentation_version #documentation_version} => String # * {Types::Stage#access_log_settings #access_log_settings} => Types::AccessLogSettings # * {Types::Stage#canary_settings #canary_settings} => Types::CanarySettings # * {Types::Stage#tracing_enabled #tracing_enabled} => Boolean # * {Types::Stage#web_acl_arn #web_acl_arn} => String # * {Types::Stage#tags #tags} => Hash<String,String> # * {Types::Stage#created_date #created_date} => Time # * {Types::Stage#last_updated_date #last_updated_date} => Time # # @example Request syntax with placeholder values # # resp = client.update_stage({ # rest_api_id: "String", # required # stage_name: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.deployment_id #=> String # resp.client_certificate_id #=> String # resp.stage_name #=> String # resp.description #=> String # resp.cache_cluster_enabled #=> Boolean # resp.cache_cluster_size #=> String, one of "0.5", "1.6", "6.1", "13.5", "28.4", "58.2", "118", "237" # resp.cache_cluster_status #=> String, one of "CREATE_IN_PROGRESS", "AVAILABLE", "DELETE_IN_PROGRESS", "NOT_AVAILABLE", "FLUSH_IN_PROGRESS" # resp.method_settings #=> Hash # resp.method_settings["String"].metrics_enabled #=> Boolean # resp.method_settings["String"].logging_level #=> String # resp.method_settings["String"].data_trace_enabled #=> Boolean # resp.method_settings["String"].throttling_burst_limit #=> Integer # resp.method_settings["String"].throttling_rate_limit #=> Float # resp.method_settings["String"].caching_enabled #=> Boolean # resp.method_settings["String"].cache_ttl_in_seconds #=> Integer # resp.method_settings["String"].cache_data_encrypted #=> Boolean # resp.method_settings["String"].require_authorization_for_cache_control #=> Boolean # resp.method_settings["String"].unauthorized_cache_control_header_strategy #=> String, one of "FAIL_WITH_403", "SUCCEED_WITH_RESPONSE_HEADER", "SUCCEED_WITHOUT_RESPONSE_HEADER" # resp.variables #=> Hash # resp.variables["String"] #=> String # resp.documentation_version #=> String # resp.access_log_settings.format #=> String # resp.access_log_settings.destination_arn #=> String # resp.canary_settings.percent_traffic #=> Float # resp.canary_settings.deployment_id #=> String # resp.canary_settings.stage_variable_overrides #=> Hash # resp.canary_settings.stage_variable_overrides["String"] #=> String # resp.canary_settings.use_stage_cache #=> Boolean # resp.tracing_enabled #=> Boolean # resp.web_acl_arn #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # resp.created_date #=> Time # resp.last_updated_date #=> Time # # @overload update_stage(params = {}) # @param [Hash] params ({}) def update_stage(params = {}, options = {}) req = build_request(:update_stage, params) req.send_request(options) end # Grants a temporary extension to the remaining quota of a usage plan # associated with a specified API key. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the usage plan associated with the usage data. # # @option params [required, String] :key_id # \[Required\] The identifier of the API key associated with the usage # plan in which a temporary extension is granted to the remaining quota. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::Usage] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::Usage#usage_plan_id #usage_plan_id} => String # * {Types::Usage#start_date #start_date} => String # * {Types::Usage#end_date #end_date} => String # * {Types::Usage#position #position} => String # * {Types::Usage#items #items} => Hash<String,Array<Array<Integer>>> # # @example Request syntax with placeholder values # # resp = client.update_usage({ # usage_plan_id: "String", # required # key_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.usage_plan_id #=> String # resp.start_date #=> String # resp.end_date #=> String # resp.position #=> String # resp.items #=> Hash # resp.items["String"] #=> Array # resp.items["String"][0] #=> Array # resp.items["String"][0][0] #=> Integer # # @overload update_usage(params = {}) # @param [Hash] params ({}) def update_usage(params = {}, options = {}) req = build_request(:update_usage, params) req.send_request(options) end # Updates a usage plan of a given plan Id. # # @option params [required, String] :usage_plan_id # \[Required\] The Id of the to-be-updated usage plan. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::UsagePlan] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UsagePlan#id #id} => String # * {Types::UsagePlan#name #name} => String # * {Types::UsagePlan#description #description} => String # * {Types::UsagePlan#api_stages #api_stages} => Array<Types::ApiStage> # * {Types::UsagePlan#throttle #throttle} => Types::ThrottleSettings # * {Types::UsagePlan#quota #quota} => Types::QuotaSettings # * {Types::UsagePlan#product_code #product_code} => String # * {Types::UsagePlan#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.update_usage_plan({ # usage_plan_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.api_stages #=> Array # resp.api_stages[0].api_id #=> String # resp.api_stages[0].stage #=> String # resp.api_stages[0].throttle #=> Hash # resp.api_stages[0].throttle["String"].burst_limit #=> Integer # resp.api_stages[0].throttle["String"].rate_limit #=> Float # resp.throttle.burst_limit #=> Integer # resp.throttle.rate_limit #=> Float # resp.quota.limit #=> Integer # resp.quota.offset #=> Integer # resp.quota.period #=> String, one of "DAY", "WEEK", "MONTH" # resp.product_code #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload update_usage_plan(params = {}) # @param [Hash] params ({}) def update_usage_plan(params = {}, options = {}) req = build_request(:update_usage_plan, params) req.send_request(options) end # Updates an existing VpcLink of a specified identifier. # # @option params [required, String] :vpc_link_id # \[Required\] The identifier of the VpcLink. It is used in an # Integration to reference this VpcLink. # # @option params [Array] :patch_operations # A list of update operations to be applied to the specified resource # and in the order specified in this list. # # @return [Types::VpcLink] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::VpcLink#id #id} => String # * {Types::VpcLink#name #name} => String # * {Types::VpcLink#description #description} => String # * {Types::VpcLink#target_arns #target_arns} => Array<String> # * {Types::VpcLink#status #status} => String # * {Types::VpcLink#status_message #status_message} => String # * {Types::VpcLink#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.update_vpc_link({ # vpc_link_id: "String", # required # patch_operations: [ # { # op: "add", # accepts add, remove, replace, move, copy, test # path: "String", # value: "String", # from: "String", # }, # ], # }) # # @example Response structure # # resp.id #=> String # resp.name #=> String # resp.description #=> String # resp.target_arns #=> Array # resp.target_arns[0] #=> String # resp.status #=> String, one of "AVAILABLE", "PENDING", "DELETING", "FAILED" # resp.status_message #=> String # resp.tags #=> Hash # resp.tags["String"] #=> String # # @overload update_vpc_link(params = {}) # @param [Hash] params ({}) def update_vpc_link(params = {}, options = {}) req = build_request(:update_vpc_link, params) req.send_request(options) end # @!endgroup # @param params ({}) # @api private def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-apigateway' context[:gem_version] = '1.49.0' Seahorse::Client::Request.new(handlers, context) end # @api private # @deprecated def waiter_names [] end class << self # @api private attr_reader :identifier # @api private def errors_module Errors end end end end