Class RestApiState.Builder

  • Enclosing class:
    RestApiState

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

      • Builder

        public Builder()
    • Method Detail

      • apiKeySource

        public RestApiState.Builder apiKeySource​(@Nullable
                                                 com.pulumi.core.Output<java.lang.String> apiKeySource)
        Parameters:
        apiKeySource - Source of the API key for requests. Valid values are `HEADER` (default) and `AUTHORIZER`. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-api-key-source` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-api-key-source.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • apiKeySource

        public RestApiState.Builder apiKeySource​(java.lang.String apiKeySource)
        Parameters:
        apiKeySource - Source of the API key for requests. Valid values are `HEADER` (default) and `AUTHORIZER`. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-api-key-source` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-api-key-source.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • arn

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

        public RestApiState.Builder arn​(java.lang.String arn)
        Parameters:
        arn - ARN
        Returns:
        builder
      • binaryMediaTypes

        public RestApiState.Builder binaryMediaTypes​(@Nullable
                                                     com.pulumi.core.Output<java.util.List<java.lang.String>> binaryMediaTypes)
        Parameters:
        binaryMediaTypes - List of binary media types supported by the REST API. By default, the REST API supports only UTF-8-encoded text payloads. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-binary-media-types` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-binary-media-types.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • binaryMediaTypes

        public RestApiState.Builder binaryMediaTypes​(java.util.List<java.lang.String> binaryMediaTypes)
        Parameters:
        binaryMediaTypes - List of binary media types supported by the REST API. By default, the REST API supports only UTF-8-encoded text payloads. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-binary-media-types` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-binary-media-types.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • binaryMediaTypes

        public RestApiState.Builder binaryMediaTypes​(java.lang.String... binaryMediaTypes)
        Parameters:
        binaryMediaTypes - List of binary media types supported by the REST API. By default, the REST API supports only UTF-8-encoded text payloads. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-binary-media-types` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-binary-media-types.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • body

        public RestApiState.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 REST API. This configuration, and any updates to it, will replace all REST API configuration except values overridden in this resource configuration and other resource updates applied after this resource but before any `aws.apigateway.Deployment` creation. More information about REST API OpenAPI support can be found in the [API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html).
        Returns:
        builder
      • body

        public RestApiState.Builder body​(java.lang.String body)
        Parameters:
        body - OpenAPI specification that defines the set of routes and integrations to create as part of the REST API. This configuration, and any updates to it, will replace all REST API configuration except values overridden in this resource configuration and other resource updates applied after this resource but before any `aws.apigateway.Deployment` creation. More information about REST API OpenAPI support can be found in the [API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html).
        Returns:
        builder
      • createdDate

        public RestApiState.Builder createdDate​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> createdDate)
        Parameters:
        createdDate - Creation date of the REST API
        Returns:
        builder
      • createdDate

        public RestApiState.Builder createdDate​(java.lang.String createdDate)
        Parameters:
        createdDate - Creation date of the REST API
        Returns:
        builder
      • description

        public RestApiState.Builder description​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> description)
        Parameters:
        description - Description of the REST API. If importing an OpenAPI specification via the `body` argument, this corresponds to the `info.description` field. If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • description

        public RestApiState.Builder description​(java.lang.String description)
        Parameters:
        description - Description of the REST API. If importing an OpenAPI specification via the `body` argument, this corresponds to the `info.description` field. If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • disableExecuteApiEndpoint

        public RestApiState.Builder disableExecuteApiEndpoint​(@Nullable
                                                              com.pulumi.core.Output<java.lang.Boolean> disableExecuteApiEndpoint)
        Parameters:
        disableExecuteApiEndpoint - Whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint. Defaults to `false`. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-endpoint-configuration` extension `disableExecuteApiEndpoint` property](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html). If the argument value is `true` and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • disableExecuteApiEndpoint

        public RestApiState.Builder disableExecuteApiEndpoint​(java.lang.Boolean disableExecuteApiEndpoint)
        Parameters:
        disableExecuteApiEndpoint - Whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint. Defaults to `false`. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-endpoint-configuration` extension `disableExecuteApiEndpoint` property](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html). If the argument value is `true` and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • endpointAccessMode

        public RestApiState.Builder endpointAccessMode​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> endpointAccessMode)
        Parameters:
        endpointAccessMode - Endpoint access mode for the REST API. Valid values are `BASIC` and `STRICT`. Only available for REST APIs that use a `securityPolicy` value beginning with `SecurityPolicy_` and is required when one of those values is configured.
        Returns:
        builder
      • endpointAccessMode

        public RestApiState.Builder endpointAccessMode​(java.lang.String endpointAccessMode)
        Parameters:
        endpointAccessMode - Endpoint access mode for the REST API. Valid values are `BASIC` and `STRICT`. Only available for REST APIs that use a `securityPolicy` value beginning with `SecurityPolicy_` and is required when one of those values is configured.
        Returns:
        builder
      • endpointConfiguration

        public RestApiState.Builder endpointConfiguration​(@Nullable
                                                          com.pulumi.core.Output<RestApiEndpointConfigurationArgs> endpointConfiguration)
        Parameters:
        endpointConfiguration - Configuration block defining API endpoint configuration including endpoint type. Defined below.
        Returns:
        builder
      • endpointConfiguration

        public RestApiState.Builder endpointConfiguration​(RestApiEndpointConfigurationArgs endpointConfiguration)
        Parameters:
        endpointConfiguration - Configuration block defining API endpoint configuration including endpoint type. Defined below.
        Returns:
        builder
      • executionArn

        public RestApiState.Builder executionArn​(@Nullable
                                                 com.pulumi.core.Output<java.lang.String> executionArn)
        Parameters:
        executionArn - Execution ARN part to be used in `lambdaPermission`'s `sourceArn` when allowing API Gateway to invoke a Lambda function, e.g., `arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j`, which can be concatenated with allowed stage, method and resource path.
        Returns:
        builder
      • executionArn

        public RestApiState.Builder executionArn​(java.lang.String executionArn)
        Parameters:
        executionArn - Execution ARN part to be used in `lambdaPermission`'s `sourceArn` when allowing API Gateway to invoke a Lambda function, e.g., `arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j`, which can be concatenated with allowed stage, method and resource path.
        Returns:
        builder
      • failOnWarnings

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

        public RestApiState.Builder failOnWarnings​(java.lang.Boolean failOnWarnings)
        Parameters:
        failOnWarnings - Whether to return an error for warnings while API Gateway is creating or updating the resource. Defaults to `false`.
        Returns:
        builder
      • minimumCompressionSize

        public RestApiState.Builder minimumCompressionSize​(@Nullable
                                                           com.pulumi.core.Output<java.lang.String> minimumCompressionSize)
        Parameters:
        minimumCompressionSize - Minimum response size to compress for the REST API. String containing an integer value between `-1` and `10485760` (10MB). `-1` will disable an existing compression configuration, and all other values will enable compression with the configured size. New resources can simply omit this argument to disable compression, rather than setting the value to `-1`. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-minimum-compression-size` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-openapi-minimum-compression-size.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • minimumCompressionSize

        public RestApiState.Builder minimumCompressionSize​(java.lang.String minimumCompressionSize)
        Parameters:
        minimumCompressionSize - Minimum response size to compress for the REST API. String containing an integer value between `-1` and `10485760` (10MB). `-1` will disable an existing compression configuration, and all other values will enable compression with the configured size. New resources can simply omit this argument to disable compression, rather than setting the value to `-1`. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-minimum-compression-size` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-openapi-minimum-compression-size.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • name

        public RestApiState.Builder name​(@Nullable
                                         com.pulumi.core.Output<java.lang.String> name)
        Parameters:
        name - Name of the REST API. If importing an OpenAPI specification via the `body` argument, this corresponds to the `info.title` field. If the argument value is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • name

        public RestApiState.Builder name​(java.lang.String name)
        Parameters:
        name - Name of the REST API. If importing an OpenAPI specification via the `body` argument, this corresponds to the `info.title` field. If the argument value is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • parameters

        public RestApiState.Builder parameters​(@Nullable
                                               com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> parameters)
        Parameters:
        parameters - Map of customizations for importing the specification in the `body` argument. For example, to exclude DocumentationParts from an imported API, set `ignore` equal to `documentation`. Additional documentation, including other parameters such as `basepath`, can be found in the [API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html).
        Returns:
        builder
      • parameters

        public RestApiState.Builder parameters​(java.util.Map<java.lang.String,​java.lang.String> parameters)
        Parameters:
        parameters - Map of customizations for importing the specification in the `body` argument. For example, to exclude DocumentationParts from an imported API, set `ignore` equal to `documentation`. Additional documentation, including other parameters such as `basepath`, can be found in the [API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html).
        Returns:
        builder
      • policy

        public RestApiState.Builder policy​(@Nullable
                                           com.pulumi.core.Output<java.lang.String> policy)
        Parameters:
        policy - JSON formatted policy document that controls access to the API Gateway. For more information about building AWS IAM policy documents with Pulumi, see the AWS IAM Policy Document Guide. The provider will only perform drift detection of its value when present in a configuration. We recommend using the `aws.apigateway.RestApiPolicy` resource instead. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-policy` extension](https://docs.aws.amazon.com/apigateway/latest/openapi-extensions-policy.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • policy

        public RestApiState.Builder policy​(java.lang.String policy)
        Parameters:
        policy - JSON formatted policy document that controls access to the API Gateway. For more information about building AWS IAM policy documents with Pulumi, see the AWS IAM Policy Document Guide. The provider will only perform drift detection of its value when present in a configuration. We recommend using the `aws.apigateway.RestApiPolicy` resource instead. If importing an OpenAPI specification via the `body` argument, this corresponds to the [`x-amazon-apigateway-policy` extension](https://docs.aws.amazon.com/apigateway/latest/openapi-extensions-policy.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • putRestApiMode

        public RestApiState.Builder putRestApiMode​(@Nullable
                                                   com.pulumi.core.Output<java.lang.String> putRestApiMode)
        Parameters:
        putRestApiMode - Mode of the PutRestApi operation when importing an OpenAPI specification via the `body` argument (create or update operation). Valid values are `merge` and `overwrite`. If not configured, defaults to `overwrite` (for backwards compatibility). This corresponds to the [`x-amazon-apigateway-put-integration-method` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-put-integration-method.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • putRestApiMode

        public RestApiState.Builder putRestApiMode​(java.lang.String putRestApiMode)
        Parameters:
        putRestApiMode - Mode of the PutRestApi operation when importing an OpenAPI specification via the `body` argument (create or update operation). Valid values are `merge` and `overwrite`. If not configured, defaults to `overwrite` (for backwards compatibility). This corresponds to the [`x-amazon-apigateway-put-integration-method` extension](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-put-integration-method.html). If the argument value is provided and is different than the OpenAPI value, the argument value will override the OpenAPI value.
        Returns:
        builder
      • region

        public RestApiState.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 RestApiState.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
      • rootResourceId

        public RestApiState.Builder rootResourceId​(@Nullable
                                                   com.pulumi.core.Output<java.lang.String> rootResourceId)
        Parameters:
        rootResourceId - Resource ID of the REST API's root
        Returns:
        builder
      • rootResourceId

        public RestApiState.Builder rootResourceId​(java.lang.String rootResourceId)
        Parameters:
        rootResourceId - Resource ID of the REST API's root
        Returns:
        builder
      • securityPolicy

        public RestApiState.Builder securityPolicy​(@Nullable
                                                   com.pulumi.core.Output<java.lang.String> securityPolicy)
        Parameters:
        securityPolicy - TLS version + cipher suite for the REST API's default execute-api endpoint. Must be configured for drift detection. When set to a value beginning with `SecurityPolicy_`, `endpointAccessMode` must also be configured. For a list of valid security policies, see [CreateRestApi](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the Amazon API Gateway API Reference.
        Returns:
        builder
      • securityPolicy

        public RestApiState.Builder securityPolicy​(java.lang.String securityPolicy)
        Parameters:
        securityPolicy - TLS version + cipher suite for the REST API's default execute-api endpoint. Must be configured for drift detection. When set to a value beginning with `SecurityPolicy_`, `endpointAccessMode` must also be configured. For a list of valid security policies, see [CreateRestApi](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the Amazon API Gateway API Reference.
        Returns:
        builder
      • tags

        public RestApiState.Builder tags​(@Nullable
                                         com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tags)
        Parameters:
        tags - Key-value map of resource tags. 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 RestApiState.Builder tags​(java.util.Map<java.lang.String,​java.lang.String> tags)
        Parameters:
        tags - Key-value map of resource tags. 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 RestApiState.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 RestApiState.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