Class ApiState.Builder

  • Enclosing class:
    ApiState

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

      • Builder

        public Builder()
      • Builder

        public Builder​(ApiState defaults)
    • Method Detail

      • apiEndpoint

        public ApiState.Builder apiEndpoint​(@Nullable
                                            com.pulumi.core.Output<java.lang.String> apiEndpoint)
        Parameters:
        apiEndpoint - URI of the API, of the form `https://{api-id}.execute-api.{region}.amazonaws.com` for HTTP APIs and `wss://{api-id}.execute-api.{region}.amazonaws.com` for WebSocket APIs.
        Returns:
        builder
      • apiEndpoint

        public ApiState.Builder apiEndpoint​(java.lang.String apiEndpoint)
        Parameters:
        apiEndpoint - URI of the API, of the form `https://{api-id}.execute-api.{region}.amazonaws.com` for HTTP APIs and `wss://{api-id}.execute-api.{region}.amazonaws.com` for WebSocket APIs.
        Returns:
        builder
      • apiKeySelectionExpression

        public ApiState.Builder apiKeySelectionExpression​(@Nullable
                                                          com.pulumi.core.Output<java.lang.String> apiKeySelectionExpression)
        Parameters:
        apiKeySelectionExpression - [API key selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions). Valid values: `$context.authorizer.usageIdentifierKey`, `$request.header.x-api-key`. Defaults to `$request.header.x-api-key`. Applicable for WebSocket APIs.
        Returns:
        builder
      • apiKeySelectionExpression

        public ApiState.Builder apiKeySelectionExpression​(java.lang.String apiKeySelectionExpression)
        Parameters:
        apiKeySelectionExpression - [API key selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions). Valid values: `$context.authorizer.usageIdentifierKey`, `$request.header.x-api-key`. Defaults to `$request.header.x-api-key`. Applicable for WebSocket APIs.
        Returns:
        builder
      • arn

        public ApiState.Builder arn​(@Nullable
                                    com.pulumi.core.Output<java.lang.String> arn)
        Parameters:
        arn - ARN of the API.
        Returns:
        builder
      • arn

        public ApiState.Builder arn​(java.lang.String arn)
        Parameters:
        arn - ARN of the API.
        Returns:
        builder
      • body

        public ApiState.Builder body​(@Nullable
                                     com.pulumi.core.Output<java.lang.String> body)
        Parameters:
        body - OpenAPI specification that defines the set of routes and integrations to create as part of the HTTP APIs. Supported only for HTTP APIs.
        Returns:
        builder
      • body

        public ApiState.Builder body​(java.lang.String body)
        Parameters:
        body - OpenAPI specification that defines the set of routes and integrations to create as part of the HTTP APIs. Supported only for HTTP APIs.
        Returns:
        builder
      • corsConfiguration

        public ApiState.Builder corsConfiguration​(@Nullable
                                                  com.pulumi.core.Output<ApiCorsConfigurationArgs> corsConfiguration)
        Parameters:
        corsConfiguration - Cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs. See `corsConfiguration` Block below.
        Returns:
        builder
      • corsConfiguration

        public ApiState.Builder corsConfiguration​(ApiCorsConfigurationArgs corsConfiguration)
        Parameters:
        corsConfiguration - Cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs. See `corsConfiguration` Block below.
        Returns:
        builder
      • credentialsArn

        public ApiState.Builder credentialsArn​(@Nullable
                                               com.pulumi.core.Output<java.lang.String> credentialsArn)
        Parameters:
        credentialsArn - Part of _quick create_. Specifies any credentials required for the integration. Applicable for HTTP APIs.
        Returns:
        builder
      • credentialsArn

        public ApiState.Builder credentialsArn​(java.lang.String credentialsArn)
        Parameters:
        credentialsArn - Part of _quick create_. Specifies any credentials required for the integration. Applicable for HTTP APIs.
        Returns:
        builder
      • description

        public ApiState.Builder description​(@Nullable
                                            com.pulumi.core.Output<java.lang.String> description)
        Parameters:
        description - Description of the API. Must be less than or equal to 1024 characters in length.
        Returns:
        builder
      • description

        public ApiState.Builder description​(java.lang.String description)
        Parameters:
        description - Description of the API. Must be less than or equal to 1024 characters in length.
        Returns:
        builder
      • disableExecuteApiEndpoint

        public ApiState.Builder disableExecuteApiEndpoint​(@Nullable
                                                          com.pulumi.core.Output<java.lang.Boolean> disableExecuteApiEndpoint)
        Parameters:
        disableExecuteApiEndpoint - Whether clients can invoke the API by using the default `execute-api` endpoint. By default, clients can invoke the API with the default `{api_id}.execute-api.{region}.amazonaws.com endpoint`. To require that clients use a custom domain name to invoke the API, disable the default endpoint.
        Returns:
        builder
      • disableExecuteApiEndpoint

        public ApiState.Builder disableExecuteApiEndpoint​(java.lang.Boolean disableExecuteApiEndpoint)
        Parameters:
        disableExecuteApiEndpoint - Whether clients can invoke the API by using the default `execute-api` endpoint. By default, clients can invoke the API with the default `{api_id}.execute-api.{region}.amazonaws.com endpoint`. To require that clients use a custom domain name to invoke the API, disable the default endpoint.
        Returns:
        builder
      • executionArn

        public ApiState.Builder executionArn​(@Nullable
                                             com.pulumi.core.Output<java.lang.String> executionArn)
        Parameters:
        executionArn - ARN prefix to be used in an `aws.lambda.Permission`'s `sourceArn` attribute or in an `aws.iam.Policy` to authorize access to the [`@connections` API](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-how-to-call-websocket-api-connections.html). See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-control-access-iam.html) for details.
        Returns:
        builder
      • executionArn

        public ApiState.Builder executionArn​(java.lang.String executionArn)
        Parameters:
        executionArn - ARN prefix to be used in an `aws.lambda.Permission`'s `sourceArn` attribute or in an `aws.iam.Policy` to authorize access to the [`@connections` API](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-how-to-call-websocket-api-connections.html). See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-control-access-iam.html) for details.
        Returns:
        builder
      • failOnWarnings

        public ApiState.Builder failOnWarnings​(@Nullable
                                               com.pulumi.core.Output<java.lang.Boolean> failOnWarnings)
        Parameters:
        failOnWarnings - Whether warnings should return an error while API Gateway is creating or updating the resource using an OpenAPI specification. Defaults to `false`. Applicable for HTTP APIs.
        Returns:
        builder
      • failOnWarnings

        public ApiState.Builder failOnWarnings​(java.lang.Boolean failOnWarnings)
        Parameters:
        failOnWarnings - Whether warnings should return an error while API Gateway is creating or updating the resource using an OpenAPI specification. Defaults to `false`. Applicable for HTTP APIs.
        Returns:
        builder
      • ipAddressType

        public ApiState.Builder ipAddressType​(@Nullable
                                              com.pulumi.core.Output<java.lang.String> ipAddressType)
        Parameters:
        ipAddressType - IP address types that can invoke the API. Valid values: `ipv4`, `dualstack`. Use `ipv4` to allow only IPv4 addresses to invoke your API, or use `dualstack` to allow both IPv4 and IPv6 addresses to invoke your API. Defaults to `ipv4`.
        Returns:
        builder
      • ipAddressType

        public ApiState.Builder ipAddressType​(java.lang.String ipAddressType)
        Parameters:
        ipAddressType - IP address types that can invoke the API. Valid values: `ipv4`, `dualstack`. Use `ipv4` to allow only IPv4 addresses to invoke your API, or use `dualstack` to allow both IPv4 and IPv6 addresses to invoke your API. Defaults to `ipv4`.
        Returns:
        builder
      • name

        public ApiState.Builder name​(@Nullable
                                     com.pulumi.core.Output<java.lang.String> name)
        Parameters:
        name - Name of the API. Must be less than or equal to 128 characters in length.
        Returns:
        builder
      • name

        public ApiState.Builder name​(java.lang.String name)
        Parameters:
        name - Name of the API. Must be less than or equal to 128 characters in length.
        Returns:
        builder
      • protocolType

        public ApiState.Builder protocolType​(@Nullable
                                             com.pulumi.core.Output<java.lang.String> protocolType)
        Parameters:
        protocolType - API protocol. Valid values: `HTTP`, `WEBSOCKET`. The following arguments are optional:
        Returns:
        builder
      • protocolType

        public ApiState.Builder protocolType​(java.lang.String protocolType)
        Parameters:
        protocolType - API protocol. Valid values: `HTTP`, `WEBSOCKET`. The following arguments are optional:
        Returns:
        builder
      • region

        public ApiState.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 ApiState.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
      • routeKey

        public ApiState.Builder routeKey​(@Nullable
                                         com.pulumi.core.Output<java.lang.String> routeKey)
        Parameters:
        routeKey - Part of _quick create_. Specifies any [route key](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-routes.html). Applicable for HTTP APIs.
        Returns:
        builder
      • routeKey

        public ApiState.Builder routeKey​(java.lang.String routeKey)
        Parameters:
        routeKey - Part of _quick create_. Specifies any [route key](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-routes.html). Applicable for HTTP APIs.
        Returns:
        builder
      • routeSelectionExpression

        public ApiState.Builder routeSelectionExpression​(@Nullable
                                                         com.pulumi.core.Output<java.lang.String> routeSelectionExpression)
        Parameters:
        routeSelectionExpression - [Route selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-route-selection-expressions) for the API. Defaults to `$request.method $request.path`.
        Returns:
        builder
      • routeSelectionExpression

        public ApiState.Builder routeSelectionExpression​(java.lang.String routeSelectionExpression)
        Parameters:
        routeSelectionExpression - [Route selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-route-selection-expressions) for the API. Defaults to `$request.method $request.path`.
        Returns:
        builder
      • tags

        public ApiState.Builder tags​(@Nullable
                                     com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tags)
        Parameters:
        tags - Map of tags to assign to the API. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tags

        public ApiState.Builder tags​(java.util.Map<java.lang.String,​java.lang.String> tags)
        Parameters:
        tags - Map of tags to assign to the API. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tagsAll

        public ApiState.Builder tagsAll​(@Nullable
                                        com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll)
        Parameters:
        tagsAll - Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tagsAll

        public ApiState.Builder tagsAll​(java.util.Map<java.lang.String,​java.lang.String> tagsAll)
        Parameters:
        tagsAll - Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • target

        public ApiState.Builder target​(@Nullable
                                       com.pulumi.core.Output<java.lang.String> target)
        Parameters:
        target - Part of _quick create_. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be `HTTP_PROXY` or `AWS_PROXY`, respectively. Applicable for HTTP APIs.
        Returns:
        builder
      • target

        public ApiState.Builder target​(java.lang.String target)
        Parameters:
        target - Part of _quick create_. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be `HTTP_PROXY` or `AWS_PROXY`, respectively. Applicable for HTTP APIs.
        Returns:
        builder
      • version

        public ApiState.Builder version​(@Nullable
                                        com.pulumi.core.Output<java.lang.String> version)
        Parameters:
        version - Version identifier for the API. Must be between 1 and 64 characters in length.
        Returns:
        builder
      • version

        public ApiState.Builder version​(java.lang.String version)
        Parameters:
        version - Version identifier for the API. Must be between 1 and 64 characters in length.
        Returns:
        builder