Class IntegrationArgs.Builder

  • Enclosing class:
    IntegrationArgs

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

      • Builder

        public Builder()
    • Method Detail

      • cacheKeyParameters

        public IntegrationArgs.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 IntegrationArgs.Builder cacheKeyParameters​(java.util.List<java.lang.String> cacheKeyParameters)
        Parameters:
        cacheKeyParameters - List of cache key parameters for the integration.
        Returns:
        builder
      • cacheKeyParameters

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

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

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

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

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

        public IntegrationArgs.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 IntegrationArgs.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 IntegrationArgs.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 IntegrationArgs.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 IntegrationArgs.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 IntegrationArgs.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 IntegrationArgs.Builder httpMethod​(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 IntegrationArgs.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 IntegrationArgs.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 IntegrationArgs.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
      • passthroughBehavior

        public IntegrationArgs.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 `request_templates` is used.
        Returns:
        builder
      • passthroughBehavior

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

        public IntegrationArgs.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: `request_parameters = { "integration.request.header.X-Some-Other-Header" = "method.request.header.X-Some-Header" }`
        Returns:
        builder
      • requestParameters

        public IntegrationArgs.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: `request_parameters = { "integration.request.header.X-Some-Other-Header" = "method.request.header.X-Some-Header" }`
        Returns:
        builder
      • requestTemplates

        public IntegrationArgs.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 IntegrationArgs.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 IntegrationArgs.Builder resourceId​(com.pulumi.core.Output<java.lang.String> resourceId)
        Parameters:
        resourceId - API resource ID.
        Returns:
        builder
      • resourceId

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

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

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

        public IntegrationArgs.Builder timeoutMilliseconds​(@Nullable
                                                           com.pulumi.core.Output<java.lang.Integer> timeoutMilliseconds)
        Parameters:
        timeoutMilliseconds - Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds.
        Returns:
        builder
      • timeoutMilliseconds

        public IntegrationArgs.Builder timeoutMilliseconds​(java.lang.Integer timeoutMilliseconds)
        Parameters:
        timeoutMilliseconds - Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds.
        Returns:
        builder
      • type

        public IntegrationArgs.Builder type​(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 `connection_type` 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 IntegrationArgs.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 `connection_type` 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 IntegrationArgs.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:012345678901: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 IntegrationArgs.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:012345678901: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