/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Updates an Integration.See Also:
AWS
* API Reference
The API identifier.
*/ inline const Aws::String& GetApiId() const{ return m_apiId; } /** *The API identifier.
*/ inline bool ApiIdHasBeenSet() const { return m_apiIdHasBeenSet; } /** *The API identifier.
*/ inline void SetApiId(const Aws::String& value) { m_apiIdHasBeenSet = true; m_apiId = value; } /** *The API identifier.
*/ inline void SetApiId(Aws::String&& value) { m_apiIdHasBeenSet = true; m_apiId = std::move(value); } /** *The API identifier.
*/ inline void SetApiId(const char* value) { m_apiIdHasBeenSet = true; m_apiId.assign(value); } /** *The API identifier.
*/ inline UpdateIntegrationRequest& WithApiId(const Aws::String& value) { SetApiId(value); return *this;} /** *The API identifier.
*/ inline UpdateIntegrationRequest& WithApiId(Aws::String&& value) { SetApiId(std::move(value)); return *this;} /** *The API identifier.
*/ inline UpdateIntegrationRequest& WithApiId(const char* value) { SetApiId(value); return *this;} /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline const Aws::String& GetConnectionId() const{ return m_connectionId; } /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline bool ConnectionIdHasBeenSet() const { return m_connectionIdHasBeenSet; } /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline void SetConnectionId(const Aws::String& value) { m_connectionIdHasBeenSet = true; m_connectionId = value; } /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline void SetConnectionId(Aws::String&& value) { m_connectionIdHasBeenSet = true; m_connectionId = std::move(value); } /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline void SetConnectionId(const char* value) { m_connectionIdHasBeenSet = true; m_connectionId.assign(value); } /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline UpdateIntegrationRequest& WithConnectionId(const Aws::String& value) { SetConnectionId(value); return *this;} /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline UpdateIntegrationRequest& WithConnectionId(Aws::String&& value) { SetConnectionId(std::move(value)); return *this;} /** *The ID of the VPC link for a private integration. Supported only for HTTP * APIs.
*/ inline UpdateIntegrationRequest& WithConnectionId(const char* value) { SetConnectionId(value); return *this;} /** *The type of the network connection to the integration endpoint. Specify * INTERNET for connections through the public routable internet or VPC_LINK for * private connections between API Gateway and resources in a VPC. The default * value is INTERNET.
*/ inline const ConnectionType& GetConnectionType() const{ return m_connectionType; } /** *The type of the network connection to the integration endpoint. Specify * INTERNET for connections through the public routable internet or VPC_LINK for * private connections between API Gateway and resources in a VPC. The default * value is INTERNET.
*/ inline bool ConnectionTypeHasBeenSet() const { return m_connectionTypeHasBeenSet; } /** *The type of the network connection to the integration endpoint. Specify * INTERNET for connections through the public routable internet or VPC_LINK for * private connections between API Gateway and resources in a VPC. The default * value is INTERNET.
*/ inline void SetConnectionType(const ConnectionType& value) { m_connectionTypeHasBeenSet = true; m_connectionType = value; } /** *The type of the network connection to the integration endpoint. Specify * INTERNET for connections through the public routable internet or VPC_LINK for * private connections between API Gateway and resources in a VPC. The default * value is INTERNET.
*/ inline void SetConnectionType(ConnectionType&& value) { m_connectionTypeHasBeenSet = true; m_connectionType = std::move(value); } /** *The type of the network connection to the integration endpoint. Specify * INTERNET for connections through the public routable internet or VPC_LINK for * private connections between API Gateway and resources in a VPC. The default * value is INTERNET.
*/ inline UpdateIntegrationRequest& WithConnectionType(const ConnectionType& value) { SetConnectionType(value); return *this;} /** *The type of the network connection to the integration endpoint. Specify * INTERNET for connections through the public routable internet or VPC_LINK for * private connections between API Gateway and resources in a VPC. The default * value is INTERNET.
*/ inline UpdateIntegrationRequest& WithConnectionType(ConnectionType&& value) { SetConnectionType(std::move(value)); return *this;} /** *Supported only for WebSocket APIs. 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 * route response or method response without modification.
*/ inline const ContentHandlingStrategy& GetContentHandlingStrategy() const{ return m_contentHandlingStrategy; } /** *Supported only for WebSocket APIs. 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 * route response or method response without modification.
*/ inline bool ContentHandlingStrategyHasBeenSet() const { return m_contentHandlingStrategyHasBeenSet; } /** *Supported only for WebSocket APIs. 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 * route response or method response without modification.
*/ inline void SetContentHandlingStrategy(const ContentHandlingStrategy& value) { m_contentHandlingStrategyHasBeenSet = true; m_contentHandlingStrategy = value; } /** *Supported only for WebSocket APIs. 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 * route response or method response without modification.
*/ inline void SetContentHandlingStrategy(ContentHandlingStrategy&& value) { m_contentHandlingStrategyHasBeenSet = true; m_contentHandlingStrategy = std::move(value); } /** *Supported only for WebSocket APIs. 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 * route response or method response without modification.
*/ inline UpdateIntegrationRequest& WithContentHandlingStrategy(const ContentHandlingStrategy& value) { SetContentHandlingStrategy(value); return *this;} /** *Supported only for WebSocket APIs. 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 * route response or method response without modification.
*/ inline UpdateIntegrationRequest& WithContentHandlingStrategy(ContentHandlingStrategy&& value) { SetContentHandlingStrategy(std::move(value)); return *this;} /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline const Aws::String& GetCredentialsArn() const{ return m_credentialsArn; } /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline bool CredentialsArnHasBeenSet() const { return m_credentialsArnHasBeenSet; } /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline void SetCredentialsArn(const Aws::String& value) { m_credentialsArnHasBeenSet = true; m_credentialsArn = value; } /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline void SetCredentialsArn(Aws::String&& value) { m_credentialsArnHasBeenSet = true; m_credentialsArn = std::move(value); } /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline void SetCredentialsArn(const char* value) { m_credentialsArnHasBeenSet = true; m_credentialsArn.assign(value); } /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline UpdateIntegrationRequest& WithCredentialsArn(const Aws::String& value) { SetCredentialsArn(value); return *this;} /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline UpdateIntegrationRequest& WithCredentialsArn(Aws::String&& value) { SetCredentialsArn(std::move(value)); return *this;} /** *Specifies the credentials required for the integration, if any. For AWS * integrations, three options are available. To specify an IAM Role for API * Gateway to assume, use the role's Amazon Resource Name (ARN). To require that * the caller's identity be passed through from the request, specify the string * arn:aws:iam::*:user/ *. To use resource-based permissions on supported AWS * services, specify null.
*/ inline UpdateIntegrationRequest& WithCredentialsArn(const char* value) { SetCredentialsArn(value); return *this;} /** *The description of the integration
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *The description of the integration
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *The description of the integration
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *The description of the integration
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *The description of the integration
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *The description of the integration
*/ inline UpdateIntegrationRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *The description of the integration
*/ inline UpdateIntegrationRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *The description of the integration
*/ inline UpdateIntegrationRequest& WithDescription(const char* value) { SetDescription(value); return *this;} /** *The integration ID.
*/ inline const Aws::String& GetIntegrationId() const{ return m_integrationId; } /** *The integration ID.
*/ inline bool IntegrationIdHasBeenSet() const { return m_integrationIdHasBeenSet; } /** *The integration ID.
*/ inline void SetIntegrationId(const Aws::String& value) { m_integrationIdHasBeenSet = true; m_integrationId = value; } /** *The integration ID.
*/ inline void SetIntegrationId(Aws::String&& value) { m_integrationIdHasBeenSet = true; m_integrationId = std::move(value); } /** *The integration ID.
*/ inline void SetIntegrationId(const char* value) { m_integrationIdHasBeenSet = true; m_integrationId.assign(value); } /** *The integration ID.
*/ inline UpdateIntegrationRequest& WithIntegrationId(const Aws::String& value) { SetIntegrationId(value); return *this;} /** *The integration ID.
*/ inline UpdateIntegrationRequest& WithIntegrationId(Aws::String&& value) { SetIntegrationId(std::move(value)); return *this;} /** *The integration ID.
*/ inline UpdateIntegrationRequest& WithIntegrationId(const char* value) { SetIntegrationId(value); return *this;} /** *Specifies the integration's HTTP method type.
*/ inline const Aws::String& GetIntegrationMethod() const{ return m_integrationMethod; } /** *Specifies the integration's HTTP method type.
*/ inline bool IntegrationMethodHasBeenSet() const { return m_integrationMethodHasBeenSet; } /** *Specifies the integration's HTTP method type.
*/ inline void SetIntegrationMethod(const Aws::String& value) { m_integrationMethodHasBeenSet = true; m_integrationMethod = value; } /** *Specifies the integration's HTTP method type.
*/ inline void SetIntegrationMethod(Aws::String&& value) { m_integrationMethodHasBeenSet = true; m_integrationMethod = std::move(value); } /** *Specifies the integration's HTTP method type.
*/ inline void SetIntegrationMethod(const char* value) { m_integrationMethodHasBeenSet = true; m_integrationMethod.assign(value); } /** *Specifies the integration's HTTP method type.
*/ inline UpdateIntegrationRequest& WithIntegrationMethod(const Aws::String& value) { SetIntegrationMethod(value); return *this;} /** *Specifies the integration's HTTP method type.
*/ inline UpdateIntegrationRequest& WithIntegrationMethod(Aws::String&& value) { SetIntegrationMethod(std::move(value)); return *this;} /** *Specifies the integration's HTTP method type.
*/ inline UpdateIntegrationRequest& WithIntegrationMethod(const char* value) { SetIntegrationMethod(value); return *this;} /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline const Aws::String& GetIntegrationSubtype() const{ return m_integrationSubtype; } /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline bool IntegrationSubtypeHasBeenSet() const { return m_integrationSubtypeHasBeenSet; } /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline void SetIntegrationSubtype(const Aws::String& value) { m_integrationSubtypeHasBeenSet = true; m_integrationSubtype = value; } /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline void SetIntegrationSubtype(Aws::String&& value) { m_integrationSubtypeHasBeenSet = true; m_integrationSubtype = std::move(value); } /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline void SetIntegrationSubtype(const char* value) { m_integrationSubtypeHasBeenSet = true; m_integrationSubtype.assign(value); } /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline UpdateIntegrationRequest& WithIntegrationSubtype(const Aws::String& value) { SetIntegrationSubtype(value); return *this;} /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline UpdateIntegrationRequest& WithIntegrationSubtype(Aws::String&& value) { SetIntegrationSubtype(std::move(value)); return *this;} /** *Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service * action to invoke. To learn more, see Integration * subtype reference.
*/ inline UpdateIntegrationRequest& WithIntegrationSubtype(const char* value) { SetIntegrationSubtype(value); return *this;} /** *The integration type of an integration. One of the following:
AWS: for * integrating the route or method request with an AWS service action, including * the Lambda function-invoking action. With the Lambda function-invoking action, * this is referred to as the Lambda custom integration. With any other AWS service * action, this is known as AWS integration. Supported only for WebSocket APIs.
*AWS_PROXY: for integrating the route or method request with a Lambda function * or other AWS service action. This integration is also referred to as a Lambda * proxy integration.
HTTP: for integrating the route or method request with * an HTTP endpoint. This integration is also referred to as the HTTP custom * integration. Supported only for WebSocket APIs.
HTTP_PROXY: for * integrating the route or method request with an HTTP endpoint, with the client * request passed through as-is. This is also referred to as HTTP proxy * integration. For HTTP API private integrations, use an HTTP_PROXY * integration.
MOCK: for integrating the route or method request with API * Gateway as a "loopback" endpoint without invoking any backend. Supported only * for WebSocket APIs.
*/ inline const IntegrationType& GetIntegrationType() const{ return m_integrationType; } /** *The integration type of an integration. One of the following:
AWS: for * integrating the route or method request with an AWS service action, including * the Lambda function-invoking action. With the Lambda function-invoking action, * this is referred to as the Lambda custom integration. With any other AWS service * action, this is known as AWS integration. Supported only for WebSocket APIs.
*AWS_PROXY: for integrating the route or method request with a Lambda function * or other AWS service action. This integration is also referred to as a Lambda * proxy integration.
HTTP: for integrating the route or method request with * an HTTP endpoint. This integration is also referred to as the HTTP custom * integration. Supported only for WebSocket APIs.
HTTP_PROXY: for * integrating the route or method request with an HTTP endpoint, with the client * request passed through as-is. This is also referred to as HTTP proxy * integration. For HTTP API private integrations, use an HTTP_PROXY * integration.
MOCK: for integrating the route or method request with API * Gateway as a "loopback" endpoint without invoking any backend. Supported only * for WebSocket APIs.
*/ inline bool IntegrationTypeHasBeenSet() const { return m_integrationTypeHasBeenSet; } /** *The integration type of an integration. One of the following:
AWS: for * integrating the route or method request with an AWS service action, including * the Lambda function-invoking action. With the Lambda function-invoking action, * this is referred to as the Lambda custom integration. With any other AWS service * action, this is known as AWS integration. Supported only for WebSocket APIs.
*AWS_PROXY: for integrating the route or method request with a Lambda function * or other AWS service action. This integration is also referred to as a Lambda * proxy integration.
HTTP: for integrating the route or method request with * an HTTP endpoint. This integration is also referred to as the HTTP custom * integration. Supported only for WebSocket APIs.
HTTP_PROXY: for * integrating the route or method request with an HTTP endpoint, with the client * request passed through as-is. This is also referred to as HTTP proxy * integration. For HTTP API private integrations, use an HTTP_PROXY * integration.
MOCK: for integrating the route or method request with API * Gateway as a "loopback" endpoint without invoking any backend. Supported only * for WebSocket APIs.
*/ inline void SetIntegrationType(const IntegrationType& value) { m_integrationTypeHasBeenSet = true; m_integrationType = value; } /** *The integration type of an integration. One of the following:
AWS: for * integrating the route or method request with an AWS service action, including * the Lambda function-invoking action. With the Lambda function-invoking action, * this is referred to as the Lambda custom integration. With any other AWS service * action, this is known as AWS integration. Supported only for WebSocket APIs.
*AWS_PROXY: for integrating the route or method request with a Lambda function * or other AWS service action. This integration is also referred to as a Lambda * proxy integration.
HTTP: for integrating the route or method request with * an HTTP endpoint. This integration is also referred to as the HTTP custom * integration. Supported only for WebSocket APIs.
HTTP_PROXY: for * integrating the route or method request with an HTTP endpoint, with the client * request passed through as-is. This is also referred to as HTTP proxy * integration. For HTTP API private integrations, use an HTTP_PROXY * integration.
MOCK: for integrating the route or method request with API * Gateway as a "loopback" endpoint without invoking any backend. Supported only * for WebSocket APIs.
*/ inline void SetIntegrationType(IntegrationType&& value) { m_integrationTypeHasBeenSet = true; m_integrationType = std::move(value); } /** *The integration type of an integration. One of the following:
AWS: for * integrating the route or method request with an AWS service action, including * the Lambda function-invoking action. With the Lambda function-invoking action, * this is referred to as the Lambda custom integration. With any other AWS service * action, this is known as AWS integration. Supported only for WebSocket APIs.
*AWS_PROXY: for integrating the route or method request with a Lambda function * or other AWS service action. This integration is also referred to as a Lambda * proxy integration.
HTTP: for integrating the route or method request with * an HTTP endpoint. This integration is also referred to as the HTTP custom * integration. Supported only for WebSocket APIs.
HTTP_PROXY: for * integrating the route or method request with an HTTP endpoint, with the client * request passed through as-is. This is also referred to as HTTP proxy * integration. For HTTP API private integrations, use an HTTP_PROXY * integration.
MOCK: for integrating the route or method request with API * Gateway as a "loopback" endpoint without invoking any backend. Supported only * for WebSocket APIs.
*/ inline UpdateIntegrationRequest& WithIntegrationType(const IntegrationType& value) { SetIntegrationType(value); return *this;} /** *The integration type of an integration. One of the following:
AWS: for * integrating the route or method request with an AWS service action, including * the Lambda function-invoking action. With the Lambda function-invoking action, * this is referred to as the Lambda custom integration. With any other AWS service * action, this is known as AWS integration. Supported only for WebSocket APIs.
*AWS_PROXY: for integrating the route or method request with a Lambda function * or other AWS service action. This integration is also referred to as a Lambda * proxy integration.
HTTP: for integrating the route or method request with * an HTTP endpoint. This integration is also referred to as the HTTP custom * integration. Supported only for WebSocket APIs.
HTTP_PROXY: for * integrating the route or method request with an HTTP endpoint, with the client * request passed through as-is. This is also referred to as HTTP proxy * integration. For HTTP API private integrations, use an HTTP_PROXY * integration.
MOCK: for integrating the route or method request with API * Gateway as a "loopback" endpoint without invoking any backend. Supported only * for WebSocket APIs.
*/ inline UpdateIntegrationRequest& WithIntegrationType(IntegrationType&& value) { SetIntegrationType(std::move(value)); return *this;} /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline const Aws::String& GetIntegrationUri() const{ return m_integrationUri; } /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline bool IntegrationUriHasBeenSet() const { return m_integrationUriHasBeenSet; } /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline void SetIntegrationUri(const Aws::String& value) { m_integrationUriHasBeenSet = true; m_integrationUri = value; } /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline void SetIntegrationUri(Aws::String&& value) { m_integrationUriHasBeenSet = true; m_integrationUri = std::move(value); } /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline void SetIntegrationUri(const char* value) { m_integrationUriHasBeenSet = true; m_integrationUri.assign(value); } /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline UpdateIntegrationRequest& WithIntegrationUri(const Aws::String& value) { SetIntegrationUri(value); return *this;} /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline UpdateIntegrationRequest& WithIntegrationUri(Aws::String&& value) { SetIntegrationUri(std::move(value)); return *this;} /** *For a Lambda integration, specify the URI of a Lambda function.
For an * HTTP integration, specify a fully-qualified URL.
For an HTTP API private * integration, specify the ARN of an Application Load Balancer listener, Network * Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an * AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. * You can use query parameters to target specific resources. To learn more, see DiscoverInstances. * For private integrations, all resources must be owned by the same AWS * account.
*/ inline UpdateIntegrationRequest& WithIntegrationUri(const char* value) { SetIntegrationUri(value); return *this;} /** *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. Supported * only for WebSocket APIs.
WHEN_NO_MATCH passes the request body for * unmapped content types through to the integration backend 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 HTTP 415 Unsupported Media Type response.
*/ inline const PassthroughBehavior& GetPassthroughBehavior() const{ return m_passthroughBehavior; } /** *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. Supported * only for WebSocket APIs.
WHEN_NO_MATCH passes the request body for * unmapped content types through to the integration backend 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 HTTP 415 Unsupported Media Type response.
*/ inline bool PassthroughBehaviorHasBeenSet() const { return m_passthroughBehaviorHasBeenSet; } /** *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. Supported * only for WebSocket APIs.
WHEN_NO_MATCH passes the request body for * unmapped content types through to the integration backend 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 HTTP 415 Unsupported Media Type response.
*/ inline void SetPassthroughBehavior(const PassthroughBehavior& value) { m_passthroughBehaviorHasBeenSet = true; m_passthroughBehavior = value; } /** *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. Supported * only for WebSocket APIs.
WHEN_NO_MATCH passes the request body for * unmapped content types through to the integration backend 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 HTTP 415 Unsupported Media Type response.
*/ inline void SetPassthroughBehavior(PassthroughBehavior&& value) { m_passthroughBehaviorHasBeenSet = true; m_passthroughBehavior = std::move(value); } /** *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. Supported * only for WebSocket APIs.
WHEN_NO_MATCH passes the request body for * unmapped content types through to the integration backend 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 HTTP 415 Unsupported Media Type response.
*/ inline UpdateIntegrationRequest& WithPassthroughBehavior(const PassthroughBehavior& value) { SetPassthroughBehavior(value); return *this;} /** *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. Supported * only for WebSocket APIs.
WHEN_NO_MATCH passes the request body for * unmapped content types through to the integration backend 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 HTTP 415 Unsupported Media Type response.
*/ inline UpdateIntegrationRequest& WithPassthroughBehavior(PassthroughBehavior&& value) { SetPassthroughBehavior(std::move(value)); return *this;} /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline const Aws::String& GetPayloadFormatVersion() const{ return m_payloadFormatVersion; } /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline bool PayloadFormatVersionHasBeenSet() const { return m_payloadFormatVersionHasBeenSet; } /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline void SetPayloadFormatVersion(const Aws::String& value) { m_payloadFormatVersionHasBeenSet = true; m_payloadFormatVersion = value; } /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline void SetPayloadFormatVersion(Aws::String&& value) { m_payloadFormatVersionHasBeenSet = true; m_payloadFormatVersion = std::move(value); } /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline void SetPayloadFormatVersion(const char* value) { m_payloadFormatVersionHasBeenSet = true; m_payloadFormatVersion.assign(value); } /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline UpdateIntegrationRequest& WithPayloadFormatVersion(const Aws::String& value) { SetPayloadFormatVersion(value); return *this;} /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline UpdateIntegrationRequest& WithPayloadFormatVersion(Aws::String&& value) { SetPayloadFormatVersion(std::move(value)); return *this;} /** *Specifies the format of the payload sent to an integration. Required for HTTP * APIs.
*/ inline UpdateIntegrationRequest& WithPayloadFormatVersion(const char* value) { SetPayloadFormatVersion(value); return *this;} /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline const Aws::MapFor WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline bool RequestParametersHasBeenSet() const { return m_requestParametersHasBeenSet; } /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline void SetRequestParameters(const Aws::MapFor WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline void SetRequestParameters(Aws::MapFor WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& WithRequestParameters(const Aws::MapFor WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& WithRequestParameters(Aws::MapFor WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddRequestParameters(const Aws::String& key, const Aws::String& value) { m_requestParametersHasBeenSet = true; m_requestParameters.emplace(key, value); return *this; } /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddRequestParameters(Aws::String&& key, const Aws::String& value) { m_requestParametersHasBeenSet = true; m_requestParameters.emplace(std::move(key), value); return *this; } /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddRequestParameters(const Aws::String& key, Aws::String&& value) { m_requestParametersHasBeenSet = true; m_requestParameters.emplace(key, std::move(value)); return *this; } /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddRequestParameters(Aws::String&& key, Aws::String&& value) { m_requestParametersHasBeenSet = true; m_requestParameters.emplace(std::move(key), std::move(value)); return *this; } /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddRequestParameters(const char* key, Aws::String&& value) { m_requestParametersHasBeenSet = true; m_requestParameters.emplace(key, std::move(value)); return *this; } /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddRequestParameters(Aws::String&& key, const char* value) { m_requestParametersHasBeenSet = true; m_requestParameters.emplace(std::move(key), value); return *this; } /** *For WebSocket APIs, a key-value map specifying request parameters that are
* passed from the method request to the backend. 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 backend. The method request parameter value must match the
* pattern of
* method.request.
For HTTP API integrations with a specified * integrationSubtype, request parameters are a key-value map specifying parameters * that are passed to AWS_PROXY integrations. You can provide static values, or map * request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Working * with AWS service integrations for HTTP APIs.
For HTTP API * integrations, without a specified integrationSubtype request parameters are a * key-value map specifying how to transform HTTP requests before sending them to * the backend. The key should follow the pattern * <action>:<header|querystring|path>.<location> where action can * be append, overwrite or remove. For values, you can provide static values, or * map request data, stage variables, or context variables that are evaluated at * runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddRequestParameters(const char* key, const char* value) { m_requestParametersHasBeenSet = true; m_requestParameters.emplace(key, value); return *this; } /** *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. Supported only for WebSocket APIs.
*/ inline const Aws::MapRepresents 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. Supported only for WebSocket APIs.
*/ inline bool RequestTemplatesHasBeenSet() const { return m_requestTemplatesHasBeenSet; } /** *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. Supported only for WebSocket APIs.
*/ inline void SetRequestTemplates(const Aws::MapRepresents 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. Supported only for WebSocket APIs.
*/ inline void SetRequestTemplates(Aws::MapRepresents 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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& WithRequestTemplates(const Aws::MapRepresents 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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& WithRequestTemplates(Aws::MapRepresents 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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& AddRequestTemplates(const Aws::String& key, const Aws::String& value) { m_requestTemplatesHasBeenSet = true; m_requestTemplates.emplace(key, value); return *this; } /** *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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& AddRequestTemplates(Aws::String&& key, const Aws::String& value) { m_requestTemplatesHasBeenSet = true; m_requestTemplates.emplace(std::move(key), value); return *this; } /** *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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& AddRequestTemplates(const Aws::String& key, Aws::String&& value) { m_requestTemplatesHasBeenSet = true; m_requestTemplates.emplace(key, std::move(value)); return *this; } /** *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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& AddRequestTemplates(Aws::String&& key, Aws::String&& value) { m_requestTemplatesHasBeenSet = true; m_requestTemplates.emplace(std::move(key), std::move(value)); return *this; } /** *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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& AddRequestTemplates(const char* key, Aws::String&& value) { m_requestTemplatesHasBeenSet = true; m_requestTemplates.emplace(key, std::move(value)); return *this; } /** *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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& AddRequestTemplates(Aws::String&& key, const char* value) { m_requestTemplatesHasBeenSet = true; m_requestTemplates.emplace(std::move(key), value); return *this; } /** *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. Supported only for WebSocket APIs.
*/ inline UpdateIntegrationRequest& AddRequestTemplates(const char* key, const char* value) { m_requestTemplatesHasBeenSet = true; m_requestTemplates.emplace(key, value); return *this; } /** *Supported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline const Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline bool ResponseParametersHasBeenSet() const { return m_responseParametersHasBeenSet; } /** *Supported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline void SetResponseParameters(const Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline void SetResponseParameters(Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& WithResponseParameters(const Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& WithResponseParameters(Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddResponseParameters(const Aws::String& key, const Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddResponseParameters(Aws::String&& key, const Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddResponseParameters(const Aws::String& key, Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddResponseParameters(Aws::String&& key, Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddResponseParameters(const char* key, Aws::MapSupported only for HTTP APIs. You use response parameters to transform the * HTTP response from a backend integration before returning the response to * clients. Specify a key-value map from a selection key to response parameters. * The selection key must be a valid HTTP status code within the range of 200-599. * Response parameters are a key-value map. The key must match pattern * <action>:<header>.<location> or overwrite.statuscode. The * action can be append, overwrite or remove. The value can be a static value, or * map to response data, stage variables, or context variables that are evaluated * at runtime. To learn more, see Transforming * API requests and responses.
*/ inline UpdateIntegrationRequest& AddResponseParameters(const char* key, const Aws::MapThe template selection expression for the integration.
*/ inline const Aws::String& GetTemplateSelectionExpression() const{ return m_templateSelectionExpression; } /** *The template selection expression for the integration.
*/ inline bool TemplateSelectionExpressionHasBeenSet() const { return m_templateSelectionExpressionHasBeenSet; } /** *The template selection expression for the integration.
*/ inline void SetTemplateSelectionExpression(const Aws::String& value) { m_templateSelectionExpressionHasBeenSet = true; m_templateSelectionExpression = value; } /** *The template selection expression for the integration.
*/ inline void SetTemplateSelectionExpression(Aws::String&& value) { m_templateSelectionExpressionHasBeenSet = true; m_templateSelectionExpression = std::move(value); } /** *The template selection expression for the integration.
*/ inline void SetTemplateSelectionExpression(const char* value) { m_templateSelectionExpressionHasBeenSet = true; m_templateSelectionExpression.assign(value); } /** *The template selection expression for the integration.
*/ inline UpdateIntegrationRequest& WithTemplateSelectionExpression(const Aws::String& value) { SetTemplateSelectionExpression(value); return *this;} /** *The template selection expression for the integration.
*/ inline UpdateIntegrationRequest& WithTemplateSelectionExpression(Aws::String&& value) { SetTemplateSelectionExpression(std::move(value)); return *this;} /** *The template selection expression for the integration.
*/ inline UpdateIntegrationRequest& WithTemplateSelectionExpression(const char* value) { SetTemplateSelectionExpression(value); return *this;} /** *Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and * between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 * seconds for WebSocket APIs and 30 seconds for HTTP APIs.
*/ inline int GetTimeoutInMillis() const{ return m_timeoutInMillis; } /** *Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and * between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 * seconds for WebSocket APIs and 30 seconds for HTTP APIs.
*/ inline bool TimeoutInMillisHasBeenSet() const { return m_timeoutInMillisHasBeenSet; } /** *Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and * between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 * seconds for WebSocket APIs and 30 seconds for HTTP APIs.
*/ inline void SetTimeoutInMillis(int value) { m_timeoutInMillisHasBeenSet = true; m_timeoutInMillis = value; } /** *Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and * between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 * seconds for WebSocket APIs and 30 seconds for HTTP APIs.
*/ inline UpdateIntegrationRequest& WithTimeoutInMillis(int value) { SetTimeoutInMillis(value); return *this;} /** *The TLS configuration for a private integration. If you specify a TLS * configuration, private integration traffic uses the HTTPS protocol. Supported * only for HTTP APIs.
*/ inline const TlsConfigInput& GetTlsConfig() const{ return m_tlsConfig; } /** *The TLS configuration for a private integration. If you specify a TLS * configuration, private integration traffic uses the HTTPS protocol. Supported * only for HTTP APIs.
*/ inline bool TlsConfigHasBeenSet() const { return m_tlsConfigHasBeenSet; } /** *The TLS configuration for a private integration. If you specify a TLS * configuration, private integration traffic uses the HTTPS protocol. Supported * only for HTTP APIs.
*/ inline void SetTlsConfig(const TlsConfigInput& value) { m_tlsConfigHasBeenSet = true; m_tlsConfig = value; } /** *The TLS configuration for a private integration. If you specify a TLS * configuration, private integration traffic uses the HTTPS protocol. Supported * only for HTTP APIs.
*/ inline void SetTlsConfig(TlsConfigInput&& value) { m_tlsConfigHasBeenSet = true; m_tlsConfig = std::move(value); } /** *The TLS configuration for a private integration. If you specify a TLS * configuration, private integration traffic uses the HTTPS protocol. Supported * only for HTTP APIs.
*/ inline UpdateIntegrationRequest& WithTlsConfig(const TlsConfigInput& value) { SetTlsConfig(value); return *this;} /** *The TLS configuration for a private integration. If you specify a TLS * configuration, private integration traffic uses the HTTPS protocol. Supported * only for HTTP APIs.
*/ inline UpdateIntegrationRequest& WithTlsConfig(TlsConfigInput&& value) { SetTlsConfig(std::move(value)); return *this;} private: Aws::String m_apiId; bool m_apiIdHasBeenSet = false; Aws::String m_connectionId; bool m_connectionIdHasBeenSet = false; ConnectionType m_connectionType; bool m_connectionTypeHasBeenSet = false; ContentHandlingStrategy m_contentHandlingStrategy; bool m_contentHandlingStrategyHasBeenSet = false; Aws::String m_credentialsArn; bool m_credentialsArnHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_integrationId; bool m_integrationIdHasBeenSet = false; Aws::String m_integrationMethod; bool m_integrationMethodHasBeenSet = false; Aws::String m_integrationSubtype; bool m_integrationSubtypeHasBeenSet = false; IntegrationType m_integrationType; bool m_integrationTypeHasBeenSet = false; Aws::String m_integrationUri; bool m_integrationUriHasBeenSet = false; PassthroughBehavior m_passthroughBehavior; bool m_passthroughBehaviorHasBeenSet = false; Aws::String m_payloadFormatVersion; bool m_payloadFormatVersionHasBeenSet = false; Aws::Map