/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a client-facing interface by which the client calls the API to
* access back-end resources. A Method resource is integrated with an Integration
* resource. Both consist of a request and one or more responses. The method
* request takes the client input that is passed to the back end through the
* integration request. A method response returns the output from the back end to
* the client through an integration response. A method request is embodied in a
* Method resource, whereas an integration request is embodied in an Integration
* resource. On the other hand, a method response is represented by a
* MethodResponse resource, whereas an integration response is represented by an
* IntegrationResponse resource. See Also:
AWS
* API Reference
The method's HTTP verb.
*/ inline const Aws::String& GetHttpMethod() const{ return m_httpMethod; } /** *The method's HTTP verb.
*/ inline void SetHttpMethod(const Aws::String& value) { m_httpMethod = value; } /** *The method's HTTP verb.
*/ inline void SetHttpMethod(Aws::String&& value) { m_httpMethod = std::move(value); } /** *The method's HTTP verb.
*/ inline void SetHttpMethod(const char* value) { m_httpMethod.assign(value); } /** *The method's HTTP verb.
*/ inline UpdateMethodResult& WithHttpMethod(const Aws::String& value) { SetHttpMethod(value); return *this;} /** *The method's HTTP verb.
*/ inline UpdateMethodResult& WithHttpMethod(Aws::String&& value) { SetHttpMethod(std::move(value)); return *this;} /** *The method's HTTP verb.
*/ inline UpdateMethodResult& 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 identifier of an Authorizer to use on this method. The
* authorizationType
must be CUSTOM
.
The identifier of an Authorizer to use on this method. The
* authorizationType
must be CUSTOM
.
The identifier of an Authorizer to use on this method. The
* authorizationType
must be CUSTOM
.
The identifier of an Authorizer to use on this method. The
* authorizationType
must be CUSTOM
.
The identifier of an Authorizer to use on this method. The
* authorizationType
must be CUSTOM
.
The identifier of an Authorizer to use on this method. The
* authorizationType
must be CUSTOM
.
The identifier of an Authorizer to use on this method. The
* authorizationType
must be CUSTOM
.
A boolean flag specifying whether a valid ApiKey is required to invoke this * method.
*/ inline bool GetApiKeyRequired() const{ return m_apiKeyRequired; } /** *A boolean flag specifying whether a valid ApiKey is required to invoke this * method.
*/ inline void SetApiKeyRequired(bool value) { m_apiKeyRequired = value; } /** *A boolean flag specifying whether a valid ApiKey is required to invoke this * method.
*/ inline UpdateMethodResult& WithApiKeyRequired(bool value) { SetApiKeyRequired(value); return *this;} /** *The identifier of a RequestValidator for request validation.
*/ inline const Aws::String& GetRequestValidatorId() const{ return m_requestValidatorId; } /** *The identifier of a RequestValidator for request validation.
*/ inline void SetRequestValidatorId(const Aws::String& value) { m_requestValidatorId = value; } /** *The identifier of a RequestValidator for request validation.
*/ inline void SetRequestValidatorId(Aws::String&& value) { m_requestValidatorId = std::move(value); } /** *The identifier of a RequestValidator for request validation.
*/ inline void SetRequestValidatorId(const char* value) { m_requestValidatorId.assign(value); } /** *The identifier of a RequestValidator for request validation.
*/ inline UpdateMethodResult& WithRequestValidatorId(const Aws::String& value) { SetRequestValidatorId(value); return *this;} /** *The identifier of a RequestValidator for request validation.
*/ inline UpdateMethodResult& WithRequestValidatorId(Aws::String&& value) { SetRequestValidatorId(std::move(value)); return *this;} /** *The identifier of a RequestValidator for request validation.
*/ inline UpdateMethodResult& WithRequestValidatorId(const char* value) { SetRequestValidatorId(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 key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map defining required or optional method request parameters that
* can be accepted by API Gateway. A key is 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 templates.
A key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline const Aws::MapA key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline void SetRequestModels(const Aws::MapA key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline void SetRequestModels(Aws::MapA key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& WithRequestModels(const Aws::MapA key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& WithRequestModels(Aws::MapA key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& AddRequestModels(const Aws::String& key, const Aws::String& value) { m_requestModels.emplace(key, value); return *this; } /** *A key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& AddRequestModels(Aws::String&& key, const Aws::String& value) { m_requestModels.emplace(std::move(key), value); return *this; } /** *A key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& AddRequestModels(const Aws::String& key, Aws::String&& value) { m_requestModels.emplace(key, std::move(value)); return *this; } /** *A key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& AddRequestModels(Aws::String&& key, Aws::String&& value) { m_requestModels.emplace(std::move(key), std::move(value)); return *this; } /** *A key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& AddRequestModels(const char* key, Aws::String&& value) { m_requestModels.emplace(key, std::move(value)); return *this; } /** *A key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& AddRequestModels(Aws::String&& key, const char* value) { m_requestModels.emplace(std::move(key), value); return *this; } /** *A key-value map specifying data schemas, represented by Model resources, (as * the mapped value) of the request payloads of given content types (as the mapping * key).
*/ inline UpdateMethodResult& AddRequestModels(const char* key, const char* value) { m_requestModels.emplace(key, value); return *this; } /** *Gets a method response associated with a given HTTP status code.
*/ inline const Aws::MapGets a method response associated with a given HTTP status code.
*/ inline void SetMethodResponses(const Aws::MapGets a method response associated with a given HTTP status code.
*/ inline void SetMethodResponses(Aws::MapGets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& WithMethodResponses(const Aws::MapGets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& WithMethodResponses(Aws::MapGets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& AddMethodResponses(const Aws::String& key, const MethodResponse& value) { m_methodResponses.emplace(key, value); return *this; } /** *Gets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& AddMethodResponses(Aws::String&& key, const MethodResponse& value) { m_methodResponses.emplace(std::move(key), value); return *this; } /** *Gets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& AddMethodResponses(const Aws::String& key, MethodResponse&& value) { m_methodResponses.emplace(key, std::move(value)); return *this; } /** *Gets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& AddMethodResponses(Aws::String&& key, MethodResponse&& value) { m_methodResponses.emplace(std::move(key), std::move(value)); return *this; } /** *Gets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& AddMethodResponses(const char* key, MethodResponse&& value) { m_methodResponses.emplace(key, std::move(value)); return *this; } /** *Gets a method response associated with a given HTTP status code.
*/ inline UpdateMethodResult& AddMethodResponses(const char* key, const MethodResponse& value) { m_methodResponses.emplace(key, value); return *this; } /** *Gets the method's integration responsible for passing the client-submitted * request to the back end and performing necessary transformations to make the * request compliant with the back end.
*/ inline const Integration& GetMethodIntegration() const{ return m_methodIntegration; } /** *Gets the method's integration responsible for passing the client-submitted * request to the back end and performing necessary transformations to make the * request compliant with the back end.
*/ inline void SetMethodIntegration(const Integration& value) { m_methodIntegration = value; } /** *Gets the method's integration responsible for passing the client-submitted * request to the back end and performing necessary transformations to make the * request compliant with the back end.
*/ inline void SetMethodIntegration(Integration&& value) { m_methodIntegration = std::move(value); } /** *Gets the method's integration responsible for passing the client-submitted * request to the back end and performing necessary transformations to make the * request compliant with the back end.
*/ inline UpdateMethodResult& WithMethodIntegration(const Integration& value) { SetMethodIntegration(value); return *this;} /** *Gets the method's integration responsible for passing the client-submitted * request to the back end and performing necessary transformations to make the * request compliant with the back end.
*/ inline UpdateMethodResult& WithMethodIntegration(Integration&& value) { SetMethodIntegration(std::move(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.