class Aws::APIGateway::Types::PutMethodRequest

Request to add a method to an existing Resource resource.

@note When making an API call, you may pass PutMethodRequest

data as a hash:

    {
      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"],
    }

@!attribute [rw] rest_api_id

\[Required\] The string identifier of the associated RestApi.
@return [String]

@!attribute [rw] resource_id

\[Required\] The Resource identifier for the new Method resource.
@return [String]

@!attribute [rw] http_method

\[Required\] Specifies the method request's HTTP method type.
@return [String]

@!attribute [rw] 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.
@return [String]

@!attribute [rw] 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.
@return [String]

@!attribute [rw] api_key_required

Specifies whether the method required a valid ApiKey.
@return [Boolean]

@!attribute [rw] 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.
@return [String]

@!attribute [rw] 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.
@return [Hash<String,Boolean>]

@!attribute [rw] 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.
@return [Hash<String,String>]

@!attribute [rw] request_validator_id

The identifier of a RequestValidator for validating the method
request.
@return [String]

@!attribute [rw] 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 [Array<String>]

Constants

SENSITIVE