Class ApiArgs.Builder

  • Enclosing class:
    ApiArgs

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

      • Builder

        public Builder()
      • Builder

        public Builder​(ApiArgs defaults)
    • Method Detail

      • apiKeySelectionExpression

        public ApiArgs.Builder apiKeySelectionExpression​(@Nullable
                                                         com.pulumi.core.Output<java.lang.String> apiKeySelectionExpression)
        Parameters:
        apiKeySelectionExpression - An [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 ApiArgs.Builder apiKeySelectionExpression​(java.lang.String apiKeySelectionExpression)
        Parameters:
        apiKeySelectionExpression - An [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
      • body

        public ApiArgs.Builder body​(@Nullable
                                    com.pulumi.core.Output<java.lang.String> body)
        Parameters:
        body - An 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 ApiArgs.Builder body​(java.lang.String body)
        Parameters:
        body - An 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 ApiArgs.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.
        Returns:
        builder
      • corsConfiguration

        public ApiArgs.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.
        Returns:
        builder
      • credentialsArn

        public ApiArgs.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 ApiArgs.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 ApiArgs.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 ApiArgs.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 ApiArgs.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 ApiArgs.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
      • failOnWarnings

        public ApiArgs.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 ApiArgs.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
      • name

        public ApiArgs.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 ApiArgs.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 ApiArgs.Builder protocolType​(com.pulumi.core.Output<java.lang.String> protocolType)
        Parameters:
        protocolType - API protocol. Valid values: `HTTP`, `WEBSOCKET`.
        Returns:
        builder
      • protocolType

        public ApiArgs.Builder protocolType​(java.lang.String protocolType)
        Parameters:
        protocolType - API protocol. Valid values: `HTTP`, `WEBSOCKET`.
        Returns:
        builder
      • routeKey

        public ApiArgs.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 ApiArgs.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 ApiArgs.Builder routeSelectionExpression​(@Nullable
                                                        com.pulumi.core.Output<java.lang.String> routeSelectionExpression)
        Parameters:
        routeSelectionExpression - The [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 ApiArgs.Builder routeSelectionExpression​(java.lang.String routeSelectionExpression)
        Parameters:
        routeSelectionExpression - The [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 ApiArgs.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 `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tags

        public ApiArgs.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 `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • target

        public ApiArgs.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 ApiArgs.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 ApiArgs.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 ApiArgs.Builder version​(java.lang.String version)
        Parameters:
        version - Version identifier for the API. Must be between 1 and 64 characters in length.
        Returns:
        builder