HttpIntegrationProps

class aws_cdk.aws_apigatewayv2.HttpIntegrationProps(*, http_api, integration_type, connection_id=None, connection_type=None, credentials=None, integration_subtype=None, integration_uri=None, method=None, parameter_mapping=None, payload_format_version=None, secure_server_name=None, timeout=None)

Bases: object

The integration properties.

Parameters:
  • http_api (IHttpApi) – The HTTP API to which this integration should be bound.

  • integration_type (HttpIntegrationType) – Integration type.

  • connection_id (Optional[str]) – The ID of the VPC link for a private integration. Supported only for HTTP APIs. Default: - undefined

  • connection_type (Optional[HttpConnectionType]) – The type of the network connection to the integration endpoint. Default: HttpConnectionType.INTERNET

  • credentials (Optional[IntegrationCredentials]) – The credentials with which to invoke the integration. Default: - no credentials, use resource-based permissions on supported AWS services

  • integration_subtype (Optional[HttpIntegrationSubtype]) – Integration subtype. Used for AWS Service integrations, specifies the target of the integration. Default: - none, required if no integrationUri is defined.

  • integration_uri (Optional[str]) – Integration URI. This will be the function ARN in the case of HttpIntegrationType.AWS_PROXY, or HTTP URL in the case of HttpIntegrationType.HTTP_PROXY. Default: - none, required if no integrationSubtype is defined.

  • method (Optional[HttpMethod]) – The HTTP method to use when calling the underlying HTTP proxy. Default: - none. required if the integration type is HttpIntegrationType.HTTP_PROXY.

  • parameter_mapping (Optional[ParameterMapping]) – Specifies how to transform HTTP requests before sending them to the backend. Default: undefined requests are sent to the backend unmodified

  • payload_format_version (Optional[PayloadFormatVersion]) – The version of the payload format. Default: - defaults to latest in the case of HttpIntegrationType.AWS_PROXY`, irrelevant otherwise.

  • secure_server_name (Optional[str]) – Specifies the TLS configuration for a private integration. Default: undefined private integration traffic will use HTTP protocol

  • timeout (Optional[Duration]) – The maximum amount of time an integration will run before it returns without a response. Must be between 50 milliseconds and 29 seconds. Default: Duration.seconds(29)

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk as cdk
from aws_cdk import aws_apigatewayv2 as apigatewayv2

# http_api: apigatewayv2.HttpApi
# integration_credentials: apigatewayv2.IntegrationCredentials
# parameter_mapping: apigatewayv2.ParameterMapping
# payload_format_version: apigatewayv2.PayloadFormatVersion

http_integration_props = apigatewayv2.HttpIntegrationProps(
    http_api=http_api,
    integration_type=apigatewayv2.HttpIntegrationType.HTTP_PROXY,

    # the properties below are optional
    connection_id="connectionId",
    connection_type=apigatewayv2.HttpConnectionType.VPC_LINK,
    credentials=integration_credentials,
    integration_subtype=apigatewayv2.HttpIntegrationSubtype.EVENTBRIDGE_PUT_EVENTS,
    integration_uri="integrationUri",
    method=apigatewayv2.HttpMethod.ANY,
    parameter_mapping=parameter_mapping,
    payload_format_version=payload_format_version,
    secure_server_name="secureServerName",
    timeout=cdk.Duration.minutes(30)
)

Attributes

connection_id

The ID of the VPC link for a private integration.

Supported only for HTTP APIs.

Default:
  • undefined

connection_type

The type of the network connection to the integration endpoint.

Default:

HttpConnectionType.INTERNET

credentials

The credentials with which to invoke the integration.

Default:
  • no credentials, use resource-based permissions on supported AWS services

http_api

The HTTP API to which this integration should be bound.

integration_subtype

Integration subtype.

Used for AWS Service integrations, specifies the target of the integration.

Default:
  • none, required if no integrationUri is defined.

integration_type

Integration type.

integration_uri

Integration URI.

This will be the function ARN in the case of HttpIntegrationType.AWS_PROXY, or HTTP URL in the case of HttpIntegrationType.HTTP_PROXY.

Default:
  • none, required if no integrationSubtype is defined.

method

The HTTP method to use when calling the underlying HTTP proxy.

Default:
  • none. required if the integration type is HttpIntegrationType.HTTP_PROXY.

parameter_mapping

Specifies how to transform HTTP requests before sending them to the backend.

Default:

undefined requests are sent to the backend unmodified

See:

https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html

payload_format_version

The version of the payload format.

Default:
  • defaults to latest in the case of HttpIntegrationType.AWS_PROXY`, irrelevant otherwise.

See:

https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html

secure_server_name

Specifies the TLS configuration for a private integration.

Default:

undefined private integration traffic will use HTTP protocol

See:

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-integration-tlsconfig.html

timeout

The maximum amount of time an integration will run before it returns without a response.

Must be between 50 milliseconds and 29 seconds.

Default:

Duration.seconds(29)