Class IntegrationState.Builder

  • Enclosing class:
    IntegrationState

    public static final class IntegrationState.Builder
    extends java.lang.Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • cacheKeyParameters

        public IntegrationState.Builder cacheKeyParameters​(@Nullable
                                                           com.pulumi.core.Output<java.util.List<java.lang.String>> cacheKeyParameters)
        Parameters:
        cacheKeyParameters - List of cache key parameters for the integration.
        Returns:
        builder
      • cacheKeyParameters

        public IntegrationState.Builder cacheKeyParameters​(java.util.List<java.lang.String> cacheKeyParameters)
        Parameters:
        cacheKeyParameters - List of cache key parameters for the integration.
        Returns:
        builder
      • cacheKeyParameters

        public IntegrationState.Builder cacheKeyParameters​(java.lang.String... cacheKeyParameters)
        Parameters:
        cacheKeyParameters - List of cache key parameters for the integration.
        Returns:
        builder
      • cacheNamespace

        public IntegrationState.Builder cacheNamespace​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> cacheNamespace)
        Parameters:
        cacheNamespace - Integration's cache namespace.
        Returns:
        builder
      • cacheNamespace

        public IntegrationState.Builder cacheNamespace​(java.lang.String cacheNamespace)
        Parameters:
        cacheNamespace - Integration's cache namespace.
        Returns:
        builder
      • connectionId

        public IntegrationState.Builder connectionId​(@Nullable
                                                     com.pulumi.core.Output<java.lang.String> connectionId)
        Parameters:
        connectionId - ID of the VpcLink used for the integration. **Required** if `connectionType` is `VPC_LINK`
        Returns:
        builder
      • connectionId

        public IntegrationState.Builder connectionId​(java.lang.String connectionId)
        Parameters:
        connectionId - ID of the VpcLink used for the integration. **Required** if `connectionType` is `VPC_LINK`
        Returns:
        builder
      • connectionType

        public IntegrationState.Builder connectionType​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> connectionType)
        Parameters:
        connectionType - Integration input's [connectionType](https://docs.aws.amazon.com/apigateway/api-reference/resource/integration/#connectionType). Valid values are `INTERNET` (default for connections through the public routable internet), and `VPC_LINK` (for private connections between API Gateway and a network load balancer in a VPC).
        Returns:
        builder
      • connectionType

        public IntegrationState.Builder connectionType​(java.lang.String connectionType)
        Parameters:
        connectionType - Integration input's [connectionType](https://docs.aws.amazon.com/apigateway/api-reference/resource/integration/#connectionType). Valid values are `INTERNET` (default for connections through the public routable internet), and `VPC_LINK` (for private connections between API Gateway and a network load balancer in a VPC).
        Returns:
        builder
      • contentHandling

        public IntegrationState.Builder contentHandling​(@Nullable
                                                        com.pulumi.core.Output<java.lang.String> contentHandling)
        Parameters:
        contentHandling - How to handle request payload content type conversions. Supported values are `CONVERT_TO_BINARY` and `CONVERT_TO_TEXT`. If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the passthroughBehaviors is configured to support payload pass-through.
        Returns:
        builder
      • contentHandling

        public IntegrationState.Builder contentHandling​(java.lang.String contentHandling)
        Parameters:
        contentHandling - How to handle request payload content type conversions. Supported values are `CONVERT_TO_BINARY` and `CONVERT_TO_TEXT`. If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the passthroughBehaviors is configured to support payload pass-through.
        Returns:
        builder
      • credentials

        public IntegrationState.Builder credentials​(@Nullable
                                                    com.pulumi.core.Output<java.lang.String> credentials)
        Parameters:
        credentials - Credentials required for the integration. For `AWS` integrations, 2 options are available. To specify an IAM Role for Amazon API Gateway to assume, use the role's ARN. To require that the caller's identity be passed through from the request, specify the string `arn:aws:iam::\*:user/\*`.
        Returns:
        builder
      • credentials

        public IntegrationState.Builder credentials​(java.lang.String credentials)
        Parameters:
        credentials - Credentials required for the integration. For `AWS` integrations, 2 options are available. To specify an IAM Role for Amazon API Gateway to assume, use the role's ARN. To require that the caller's identity be passed through from the request, specify the string `arn:aws:iam::\*:user/\*`.
        Returns:
        builder
      • httpMethod

        public IntegrationState.Builder httpMethod​(@Nullable
                                                   com.pulumi.core.Output<java.lang.String> httpMethod)
        Parameters:
        httpMethod - HTTP method (`GET`, `POST`, `PUT`, `DELETE`, `HEAD`, `OPTION`, `ANY`) when calling the associated resource.
        Returns:
        builder
      • httpMethod

        public IntegrationState.Builder httpMethod​(java.lang.String httpMethod)
        Parameters:
        httpMethod - HTTP method (`GET`, `POST`, `PUT`, `DELETE`, `HEAD`, `OPTION`, `ANY`) when calling the associated resource.
        Returns:
        builder
      • integrationHttpMethod

        public IntegrationState.Builder integrationHttpMethod​(@Nullable
                                                              com.pulumi.core.Output<java.lang.String> integrationHttpMethod)
        Parameters:
        integrationHttpMethod - Integration HTTP method (`GET`, `POST`, `PUT`, `DELETE`, `HEAD`, `OPTIONs`, `ANY`, `PATCH`) specifying how API Gateway will interact with the back end. **Required** if `type` is `AWS`, `AWS_PROXY`, `HTTP` or `HTTP_PROXY`. Not all methods are compatible with all `AWS` integrations. e.g., Lambda function [can only be invoked](https://github.com/awslabs/aws-apigateway-importer/issues/9#issuecomment-129651005) via `POST`.
        Returns:
        builder
      • integrationHttpMethod

        public IntegrationState.Builder integrationHttpMethod​(java.lang.String integrationHttpMethod)
        Parameters:
        integrationHttpMethod - Integration HTTP method (`GET`, `POST`, `PUT`, `DELETE`, `HEAD`, `OPTIONs`, `ANY`, `PATCH`) specifying how API Gateway will interact with the back end. **Required** if `type` is `AWS`, `AWS_PROXY`, `HTTP` or `HTTP_PROXY`. Not all methods are compatible with all `AWS` integrations. e.g., Lambda function [can only be invoked](https://github.com/awslabs/aws-apigateway-importer/issues/9#issuecomment-129651005) via `POST`.
        Returns:
        builder
      • integrationTarget

        public IntegrationState.Builder integrationTarget​(@Nullable
                                                          com.pulumi.core.Output<java.lang.String> integrationTarget)
        Parameters:
        integrationTarget - ALB or NLB ARN to send the request to. Used for private integrations with VPC Link V2. When using VPC Link V2, this parameter specifies the load balancer ARN, while `uri` is used to set the Host header.
        Returns:
        builder
      • integrationTarget

        public IntegrationState.Builder integrationTarget​(java.lang.String integrationTarget)
        Parameters:
        integrationTarget - ALB or NLB ARN to send the request to. Used for private integrations with VPC Link V2. When using VPC Link V2, this parameter specifies the load balancer ARN, while `uri` is used to set the Host header.
        Returns:
        builder
      • passthroughBehavior

        public IntegrationState.Builder passthroughBehavior​(@Nullable
                                                            com.pulumi.core.Output<java.lang.String> passthroughBehavior)
        Parameters:
        passthroughBehavior - Integration passthrough behavior (`WHEN_NO_MATCH`, `WHEN_NO_TEMPLATES`, `NEVER`). **Required** if `requestTemplates` is used.
        Returns:
        builder
      • passthroughBehavior

        public IntegrationState.Builder passthroughBehavior​(java.lang.String passthroughBehavior)
        Parameters:
        passthroughBehavior - Integration passthrough behavior (`WHEN_NO_MATCH`, `WHEN_NO_TEMPLATES`, `NEVER`). **Required** if `requestTemplates` is used.
        Returns:
        builder
      • region

        public IntegrationState.Builder region​(@Nullable
                                               com.pulumi.core.Output<java.lang.String> region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • region

        public IntegrationState.Builder region​(java.lang.String region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • requestParameters

        public IntegrationState.Builder requestParameters​(@Nullable
                                                          com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> requestParameters)
        Parameters:
        requestParameters - Map of request query string parameters and headers that should be passed to the backend responder. For example: `requestParameters = { "integration.request.header.X-Some-Other-Header" = "method.request.header.X-Some-Header" }`
        Returns:
        builder
      • requestParameters

        public IntegrationState.Builder requestParameters​(java.util.Map<java.lang.String,​java.lang.String> requestParameters)
        Parameters:
        requestParameters - Map of request query string parameters and headers that should be passed to the backend responder. For example: `requestParameters = { "integration.request.header.X-Some-Other-Header" = "method.request.header.X-Some-Header" }`
        Returns:
        builder
      • requestTemplates

        public IntegrationState.Builder requestTemplates​(@Nullable
                                                         com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> requestTemplates)
        Parameters:
        requestTemplates - Map of the integration's request templates.
        Returns:
        builder
      • requestTemplates

        public IntegrationState.Builder requestTemplates​(java.util.Map<java.lang.String,​java.lang.String> requestTemplates)
        Parameters:
        requestTemplates - Map of the integration's request templates.
        Returns:
        builder
      • resourceId

        public IntegrationState.Builder resourceId​(@Nullable
                                                   com.pulumi.core.Output<java.lang.String> resourceId)
        Parameters:
        resourceId - API resource ID.
        Returns:
        builder
      • resourceId

        public IntegrationState.Builder resourceId​(java.lang.String resourceId)
        Parameters:
        resourceId - API resource ID.
        Returns:
        builder
      • responseTransferMode

        public IntegrationState.Builder responseTransferMode​(@Nullable
                                                             com.pulumi.core.Output<java.lang.String> responseTransferMode)
        Parameters:
        responseTransferMode - Response transfer mode of the integration. Valid values are `BUFFERED` and `STREAM`. Default to `BUFFERED`. Once set, setting the value to `BUFFERED` requires explicitly specifying `BUFFERED`, rather than removing this argument.
        Returns:
        builder
      • responseTransferMode

        public IntegrationState.Builder responseTransferMode​(java.lang.String responseTransferMode)
        Parameters:
        responseTransferMode - Response transfer mode of the integration. Valid values are `BUFFERED` and `STREAM`. Default to `BUFFERED`. Once set, setting the value to `BUFFERED` requires explicitly specifying `BUFFERED`, rather than removing this argument.
        Returns:
        builder
      • restApi

        public IntegrationState.Builder restApi​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> restApi)
        Parameters:
        restApi - ID of the associated REST API.
        Returns:
        builder
      • restApi

        public IntegrationState.Builder restApi​(java.lang.String restApi)
        Parameters:
        restApi - ID of the associated REST API.
        Returns:
        builder
      • timeoutMilliseconds

        public IntegrationState.Builder timeoutMilliseconds​(@Nullable
                                                            com.pulumi.core.Output<java.lang.Integer> timeoutMilliseconds)
        Parameters:
        timeoutMilliseconds - Custom timeout in milliseconds. The minimum value is 50. The maximum value is 300,000 when `responseTransferMode` is `BUFFERED`, and 900,000 when `responseTransferMode` is `STREAM`. The default value is 29,000 milliseconds. You need to raise a [Service Quota Ticket](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) to increase time beyond 29,000 milliseconds for `BUFFERED` mode.
        Returns:
        builder
      • timeoutMilliseconds

        public IntegrationState.Builder timeoutMilliseconds​(java.lang.Integer timeoutMilliseconds)
        Parameters:
        timeoutMilliseconds - Custom timeout in milliseconds. The minimum value is 50. The maximum value is 300,000 when `responseTransferMode` is `BUFFERED`, and 900,000 when `responseTransferMode` is `STREAM`. The default value is 29,000 milliseconds. You need to raise a [Service Quota Ticket](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) to increase time beyond 29,000 milliseconds for `BUFFERED` mode.
        Returns:
        builder
      • type

        public IntegrationState.Builder type​(@Nullable
                                             com.pulumi.core.Output<java.lang.String> type)
        Parameters:
        type - Integration input's [type](https://docs.aws.amazon.com/apigateway/api-reference/resource/integration/). Valid values are `HTTP` (for HTTP backends), `MOCK` (not calling any real backend), `AWS` (for AWS services), `AWS_PROXY` (for Lambda proxy integration) and `HTTP_PROXY` (for HTTP proxy integration). An `HTTP` or `HTTP_PROXY` integration with a `connectionType` of `VPC_LINK` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.
        Returns:
        builder
      • type

        public IntegrationState.Builder type​(java.lang.String type)
        Parameters:
        type - Integration input's [type](https://docs.aws.amazon.com/apigateway/api-reference/resource/integration/). Valid values are `HTTP` (for HTTP backends), `MOCK` (not calling any real backend), `AWS` (for AWS services), `AWS_PROXY` (for Lambda proxy integration) and `HTTP_PROXY` (for HTTP proxy integration). An `HTTP` or `HTTP_PROXY` integration with a `connectionType` of `VPC_LINK` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.
        Returns:
        builder
      • uri

        public IntegrationState.Builder uri​(@Nullable
                                            com.pulumi.core.Output<java.lang.String> uri)
        Parameters:
        uri - Input's URI. **Required** if `type` is `AWS`, `AWS_PROXY`, `HTTP` or `HTTP_PROXY`. For HTTP integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification . For AWS integrations, the URI should be of the form `arn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}`. `region`, `subdomain` and `service` are used to determine the right endpoint. e.g., `arn:aws:apigateway:eu-west-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-west-1:123456789012:function:my-func/invocations`. For private integrations, the URI parameter is not used for routing requests to your endpoint, but is used for setting the Host header and for certificate validation.
        Returns:
        builder
      • uri

        public IntegrationState.Builder uri​(java.lang.String uri)
        Parameters:
        uri - Input's URI. **Required** if `type` is `AWS`, `AWS_PROXY`, `HTTP` or `HTTP_PROXY`. For HTTP integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification . For AWS integrations, the URI should be of the form `arn:aws:apigateway:{region}:{subdomain.service|service}:{path|action}/{service_api}`. `region`, `subdomain` and `service` are used to determine the right endpoint. e.g., `arn:aws:apigateway:eu-west-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-west-1:123456789012:function:my-func/invocations`. For private integrations, the URI parameter is not used for routing requests to your endpoint, but is used for setting the Host header and for certificate validation.
        Returns:
        builder