/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Request to add a method to an existing Resource resource.See
* Also:
AWS
* API Reference
The string identifier of the associated RestApi.
*/ inline const Aws::String& GetRestApiId() const{ return m_restApiId; } /** *The string identifier of the associated RestApi.
*/ inline bool RestApiIdHasBeenSet() const { return m_restApiIdHasBeenSet; } /** *The string identifier of the associated RestApi.
*/ inline void SetRestApiId(const Aws::String& value) { m_restApiIdHasBeenSet = true; m_restApiId = value; } /** *The string identifier of the associated RestApi.
*/ inline void SetRestApiId(Aws::String&& value) { m_restApiIdHasBeenSet = true; m_restApiId = std::move(value); } /** *The string identifier of the associated RestApi.
*/ inline void SetRestApiId(const char* value) { m_restApiIdHasBeenSet = true; m_restApiId.assign(value); } /** *The string identifier of the associated RestApi.
*/ inline PutMethodRequest& WithRestApiId(const Aws::String& value) { SetRestApiId(value); return *this;} /** *The string identifier of the associated RestApi.
*/ inline PutMethodRequest& WithRestApiId(Aws::String&& value) { SetRestApiId(std::move(value)); return *this;} /** *The string identifier of the associated RestApi.
*/ inline PutMethodRequest& WithRestApiId(const char* value) { SetRestApiId(value); return *this;} /** *The Resource identifier for the new Method resource.
*/ inline const Aws::String& GetResourceId() const{ return m_resourceId; } /** *The Resource identifier for the new Method resource.
*/ inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } /** *The Resource identifier for the new Method resource.
*/ inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } /** *The Resource identifier for the new Method resource.
*/ inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } /** *The Resource identifier for the new Method resource.
*/ inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } /** *The Resource identifier for the new Method resource.
*/ inline PutMethodRequest& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} /** *The Resource identifier for the new Method resource.
*/ inline PutMethodRequest& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} /** *The Resource identifier for the new Method resource.
*/ inline PutMethodRequest& WithResourceId(const char* value) { SetResourceId(value); return *this;} /** *Specifies the method request's HTTP method type.
*/ inline const Aws::String& GetHttpMethod() const{ return m_httpMethod; } /** *Specifies the method request's HTTP method type.
*/ inline bool HttpMethodHasBeenSet() const { return m_httpMethodHasBeenSet; } /** *Specifies the method request's HTTP method type.
*/ inline void SetHttpMethod(const Aws::String& value) { m_httpMethodHasBeenSet = true; m_httpMethod = value; } /** *Specifies the method request's HTTP method type.
*/ inline void SetHttpMethod(Aws::String&& value) { m_httpMethodHasBeenSet = true; m_httpMethod = std::move(value); } /** *Specifies the method request's HTTP method type.
*/ inline void SetHttpMethod(const char* value) { m_httpMethodHasBeenSet = true; m_httpMethod.assign(value); } /** *Specifies the method request's HTTP method type.
*/ inline PutMethodRequest& WithHttpMethod(const Aws::String& value) { SetHttpMethod(value); return *this;} /** *Specifies the method request's HTTP method type.
*/ inline PutMethodRequest& WithHttpMethod(Aws::String&& value) { SetHttpMethod(std::move(value)); return *this;} /** *Specifies the method request's HTTP method type.
*/ inline PutMethodRequest& WithHttpMethod(const char* value) { SetHttpMethod(value); return *this;} /** *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.
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.
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.
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.
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.
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.
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.
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.
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.
*/ inline const Aws::String& GetAuthorizerId() const{ return m_authorizerId; } /** *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.
*/ inline bool AuthorizerIdHasBeenSet() const { return m_authorizerIdHasBeenSet; } /** *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.
*/ inline void SetAuthorizerId(const Aws::String& value) { m_authorizerIdHasBeenSet = true; m_authorizerId = value; } /** *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.
*/ inline void SetAuthorizerId(Aws::String&& value) { m_authorizerIdHasBeenSet = true; m_authorizerId = std::move(value); } /** *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.
*/ inline void SetAuthorizerId(const char* value) { m_authorizerIdHasBeenSet = true; m_authorizerId.assign(value); } /** *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.
*/ inline PutMethodRequest& WithAuthorizerId(const Aws::String& value) { SetAuthorizerId(value); return *this;} /** *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.
*/ inline PutMethodRequest& WithAuthorizerId(Aws::String&& value) { SetAuthorizerId(std::move(value)); return *this;} /** *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.
*/ inline PutMethodRequest& WithAuthorizerId(const char* value) { SetAuthorizerId(value); return *this;} /** *Specifies whether the method required a valid ApiKey.
*/ inline bool GetApiKeyRequired() const{ return m_apiKeyRequired; } /** *Specifies whether the method required a valid ApiKey.
*/ inline bool ApiKeyRequiredHasBeenSet() const { return m_apiKeyRequiredHasBeenSet; } /** *Specifies whether the method required a valid ApiKey.
*/ inline void SetApiKeyRequired(bool value) { m_apiKeyRequiredHasBeenSet = true; m_apiKeyRequired = value; } /** *Specifies whether the method required a valid ApiKey.
*/ inline PutMethodRequest& WithApiKeyRequired(bool value) { SetApiKeyRequired(value); return *this;} /** *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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
*/ inline const Aws::MapSpecifies 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.
*/ inline bool RequestModelsHasBeenSet() const { return m_requestModelsHasBeenSet; } /** *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.
*/ inline void SetRequestModels(const Aws::MapSpecifies 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.
*/ inline void SetRequestModels(Aws::MapSpecifies 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.
*/ inline PutMethodRequest& WithRequestModels(const Aws::MapSpecifies 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.
*/ inline PutMethodRequest& WithRequestModels(Aws::MapSpecifies 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.
*/ inline PutMethodRequest& AddRequestModels(const Aws::String& key, const Aws::String& value) { m_requestModelsHasBeenSet = true; m_requestModels.emplace(key, value); return *this; } /** *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.
*/ inline PutMethodRequest& AddRequestModels(Aws::String&& key, const Aws::String& value) { m_requestModelsHasBeenSet = true; m_requestModels.emplace(std::move(key), value); return *this; } /** *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.
*/ inline PutMethodRequest& AddRequestModels(const Aws::String& key, Aws::String&& value) { m_requestModelsHasBeenSet = true; m_requestModels.emplace(key, std::move(value)); return *this; } /** *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.
*/ inline PutMethodRequest& AddRequestModels(Aws::String&& key, Aws::String&& value) { m_requestModelsHasBeenSet = true; m_requestModels.emplace(std::move(key), std::move(value)); return *this; } /** *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.
*/ inline PutMethodRequest& AddRequestModels(const char* key, Aws::String&& value) { m_requestModelsHasBeenSet = true; m_requestModels.emplace(key, std::move(value)); return *this; } /** *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.
*/ inline PutMethodRequest& AddRequestModels(Aws::String&& key, const char* value) { m_requestModelsHasBeenSet = true; m_requestModels.emplace(std::move(key), value); return *this; } /** *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.
*/ inline PutMethodRequest& AddRequestModels(const char* key, const char* value) { m_requestModelsHasBeenSet = true; m_requestModels.emplace(key, value); return *this; } /** *The identifier of a RequestValidator for validating the method request.
*/ inline const Aws::String& GetRequestValidatorId() const{ return m_requestValidatorId; } /** *The identifier of a RequestValidator for validating the method request.
*/ inline bool RequestValidatorIdHasBeenSet() const { return m_requestValidatorIdHasBeenSet; } /** *The identifier of a RequestValidator for validating the method request.
*/ inline void SetRequestValidatorId(const Aws::String& value) { m_requestValidatorIdHasBeenSet = true; m_requestValidatorId = value; } /** *The identifier of a RequestValidator for validating the method request.
*/ inline void SetRequestValidatorId(Aws::String&& value) { m_requestValidatorIdHasBeenSet = true; m_requestValidatorId = std::move(value); } /** *The identifier of a RequestValidator for validating the method request.
*/ inline void SetRequestValidatorId(const char* value) { m_requestValidatorIdHasBeenSet = true; m_requestValidatorId.assign(value); } /** *The identifier of a RequestValidator for validating the method request.
*/ inline PutMethodRequest& WithRequestValidatorId(const Aws::String& value) { SetRequestValidatorId(value); return *this;} /** *The identifier of a RequestValidator for validating the method request.
*/ inline PutMethodRequest& WithRequestValidatorId(Aws::String&& value) { SetRequestValidatorId(std::move(value)); return *this;} /** *The identifier of a RequestValidator for validating the method request.
*/ inline PutMethodRequest& WithRequestValidatorId(const char* value) { SetRequestValidatorId(value); return *this;} /** *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.
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.
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.
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.
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.
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.
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.
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.
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.