apigatewayv2

package
v3.38.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Api

type Api struct {
	pulumi.CustomResourceState

	// The 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.
	ApiEndpoint pulumi.StringOutput `pulumi:"apiEndpoint"`
	// 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.
	ApiKeySelectionExpression pulumi.StringPtrOutput `pulumi:"apiKeySelectionExpression"`
	// The ARN of the API.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// An OpenAPI specification that defines the set of routes and integrations to create as part of the HTTP APIs. Supported only for HTTP APIs.
	Body pulumi.StringPtrOutput `pulumi:"body"`
	// The cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs.
	CorsConfiguration ApiCorsConfigurationPtrOutput `pulumi:"corsConfiguration"`
	// Part of _quick create_. Specifies any credentials required for the integration. Applicable for HTTP APIs.
	CredentialsArn pulumi.StringPtrOutput `pulumi:"credentialsArn"`
	// The description of the API. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// 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.
	DisableExecuteApiEndpoint pulumi.BoolPtrOutput `pulumi:"disableExecuteApiEndpoint"`
	// The ARN prefix to be used in an `lambda.Permission`'s `sourceArn` attribute
	// or in an `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.
	ExecutionArn pulumi.StringOutput `pulumi:"executionArn"`
	// 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.
	FailOnWarnings pulumi.BoolPtrOutput `pulumi:"failOnWarnings"`
	// The name of the API. Must be less than or equal to 128 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
	// The API protocol. Valid values: `HTTP`, `WEBSOCKET`.
	ProtocolType pulumi.StringOutput `pulumi:"protocolType"`
	// 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.
	RouteKey pulumi.StringPtrOutput `pulumi:"routeKey"`
	// 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`.
	RouteSelectionExpression pulumi.StringPtrOutput `pulumi:"routeSelectionExpression"`
	// A map of tags to assign to the API.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// 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.
	Target pulumi.StringPtrOutput `pulumi:"target"`
	// A version identifier for the API. Must be between 1 and 64 characters in length.
	Version pulumi.StringPtrOutput `pulumi:"version"`
}

Manages an Amazon API Gateway Version 2 API.

> **Note:** Amazon API Gateway Version 2 resources are used for creating and deploying WebSocket and HTTP APIs. To create and deploy REST APIs, use Amazon API Gateway Version 1.

## Example Usage ### Basic WebSocket API

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewApi(ctx, "example", &apigatewayv2.ApiArgs{
			ProtocolType:             pulumi.String("WEBSOCKET"),
			RouteSelectionExpression: pulumi.String(fmt.Sprintf("%v%v", "$", "request.body.action")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Basic HTTP API

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewApi(ctx, "example", &apigatewayv2.ApiArgs{
			ProtocolType: pulumi.String("HTTP"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_api` can be imported by using the API identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/api:Api example aabbccddee

```

func GetApi

func GetApi(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ApiState, opts ...pulumi.ResourceOption) (*Api, error)

GetApi gets an existing Api resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewApi

func NewApi(ctx *pulumi.Context,
	name string, args *ApiArgs, opts ...pulumi.ResourceOption) (*Api, error)

NewApi registers a new resource with the given unique name, arguments, and options.

func (*Api) ElementType added in v3.13.0

func (*Api) ElementType() reflect.Type

func (*Api) ToApiOutput added in v3.13.0

func (i *Api) ToApiOutput() ApiOutput

func (*Api) ToApiOutputWithContext added in v3.13.0

func (i *Api) ToApiOutputWithContext(ctx context.Context) ApiOutput

func (*Api) ToApiPtrOutput added in v3.25.0

func (i *Api) ToApiPtrOutput() ApiPtrOutput

func (*Api) ToApiPtrOutputWithContext added in v3.25.0

func (i *Api) ToApiPtrOutputWithContext(ctx context.Context) ApiPtrOutput

type ApiArgs

type ApiArgs struct {
	// 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.
	ApiKeySelectionExpression pulumi.StringPtrInput
	// An OpenAPI specification that defines the set of routes and integrations to create as part of the HTTP APIs. Supported only for HTTP APIs.
	Body pulumi.StringPtrInput
	// The cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs.
	CorsConfiguration ApiCorsConfigurationPtrInput
	// Part of _quick create_. Specifies any credentials required for the integration. Applicable for HTTP APIs.
	CredentialsArn pulumi.StringPtrInput
	// The description of the API. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrInput
	// 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.
	DisableExecuteApiEndpoint pulumi.BoolPtrInput
	// 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.
	FailOnWarnings pulumi.BoolPtrInput
	// The name of the API. Must be less than or equal to 128 characters in length.
	Name pulumi.StringPtrInput
	// The API protocol. Valid values: `HTTP`, `WEBSOCKET`.
	ProtocolType pulumi.StringInput
	// 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.
	RouteKey pulumi.StringPtrInput
	// 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`.
	RouteSelectionExpression pulumi.StringPtrInput
	// A map of tags to assign to the API.
	Tags pulumi.StringMapInput
	// 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.
	Target pulumi.StringPtrInput
	// A version identifier for the API. Must be between 1 and 64 characters in length.
	Version pulumi.StringPtrInput
}

The set of arguments for constructing a Api resource.

func (ApiArgs) ElementType

func (ApiArgs) ElementType() reflect.Type

type ApiArray added in v3.25.0

type ApiArray []ApiInput

func (ApiArray) ElementType added in v3.25.0

func (ApiArray) ElementType() reflect.Type

func (ApiArray) ToApiArrayOutput added in v3.25.0

func (i ApiArray) ToApiArrayOutput() ApiArrayOutput

func (ApiArray) ToApiArrayOutputWithContext added in v3.25.0

func (i ApiArray) ToApiArrayOutputWithContext(ctx context.Context) ApiArrayOutput

type ApiArrayInput added in v3.25.0

type ApiArrayInput interface {
	pulumi.Input

	ToApiArrayOutput() ApiArrayOutput
	ToApiArrayOutputWithContext(context.Context) ApiArrayOutput
}

ApiArrayInput is an input type that accepts ApiArray and ApiArrayOutput values. You can construct a concrete instance of `ApiArrayInput` via:

ApiArray{ ApiArgs{...} }

type ApiArrayOutput added in v3.25.0

type ApiArrayOutput struct{ *pulumi.OutputState }

func (ApiArrayOutput) ElementType added in v3.25.0

func (ApiArrayOutput) ElementType() reflect.Type

func (ApiArrayOutput) Index added in v3.25.0

func (ApiArrayOutput) ToApiArrayOutput added in v3.25.0

func (o ApiArrayOutput) ToApiArrayOutput() ApiArrayOutput

func (ApiArrayOutput) ToApiArrayOutputWithContext added in v3.25.0

func (o ApiArrayOutput) ToApiArrayOutputWithContext(ctx context.Context) ApiArrayOutput

type ApiCorsConfiguration

type ApiCorsConfiguration struct {
	// Whether credentials are included in the CORS request.
	AllowCredentials *bool `pulumi:"allowCredentials"`
	// The set of allowed HTTP headers.
	AllowHeaders []string `pulumi:"allowHeaders"`
	// The set of allowed HTTP methods.
	AllowMethods []string `pulumi:"allowMethods"`
	// The set of allowed origins.
	AllowOrigins []string `pulumi:"allowOrigins"`
	// The set of exposed HTTP headers.
	ExposeHeaders []string `pulumi:"exposeHeaders"`
	// The number of seconds that the browser should cache preflight request results.
	MaxAge *int `pulumi:"maxAge"`
}

type ApiCorsConfigurationArgs

type ApiCorsConfigurationArgs struct {
	// Whether credentials are included in the CORS request.
	AllowCredentials pulumi.BoolPtrInput `pulumi:"allowCredentials"`
	// The set of allowed HTTP headers.
	AllowHeaders pulumi.StringArrayInput `pulumi:"allowHeaders"`
	// The set of allowed HTTP methods.
	AllowMethods pulumi.StringArrayInput `pulumi:"allowMethods"`
	// The set of allowed origins.
	AllowOrigins pulumi.StringArrayInput `pulumi:"allowOrigins"`
	// The set of exposed HTTP headers.
	ExposeHeaders pulumi.StringArrayInput `pulumi:"exposeHeaders"`
	// The number of seconds that the browser should cache preflight request results.
	MaxAge pulumi.IntPtrInput `pulumi:"maxAge"`
}

func (ApiCorsConfigurationArgs) ElementType

func (ApiCorsConfigurationArgs) ElementType() reflect.Type

func (ApiCorsConfigurationArgs) ToApiCorsConfigurationOutput

func (i ApiCorsConfigurationArgs) ToApiCorsConfigurationOutput() ApiCorsConfigurationOutput

func (ApiCorsConfigurationArgs) ToApiCorsConfigurationOutputWithContext

func (i ApiCorsConfigurationArgs) ToApiCorsConfigurationOutputWithContext(ctx context.Context) ApiCorsConfigurationOutput

func (ApiCorsConfigurationArgs) ToApiCorsConfigurationPtrOutput

func (i ApiCorsConfigurationArgs) ToApiCorsConfigurationPtrOutput() ApiCorsConfigurationPtrOutput

func (ApiCorsConfigurationArgs) ToApiCorsConfigurationPtrOutputWithContext

func (i ApiCorsConfigurationArgs) ToApiCorsConfigurationPtrOutputWithContext(ctx context.Context) ApiCorsConfigurationPtrOutput

type ApiCorsConfigurationInput

type ApiCorsConfigurationInput interface {
	pulumi.Input

	ToApiCorsConfigurationOutput() ApiCorsConfigurationOutput
	ToApiCorsConfigurationOutputWithContext(context.Context) ApiCorsConfigurationOutput
}

ApiCorsConfigurationInput is an input type that accepts ApiCorsConfigurationArgs and ApiCorsConfigurationOutput values. You can construct a concrete instance of `ApiCorsConfigurationInput` via:

ApiCorsConfigurationArgs{...}

type ApiCorsConfigurationOutput

type ApiCorsConfigurationOutput struct{ *pulumi.OutputState }

func (ApiCorsConfigurationOutput) AllowCredentials

func (o ApiCorsConfigurationOutput) AllowCredentials() pulumi.BoolPtrOutput

Whether credentials are included in the CORS request.

func (ApiCorsConfigurationOutput) AllowHeaders

The set of allowed HTTP headers.

func (ApiCorsConfigurationOutput) AllowMethods

The set of allowed HTTP methods.

func (ApiCorsConfigurationOutput) AllowOrigins

The set of allowed origins.

func (ApiCorsConfigurationOutput) ElementType

func (ApiCorsConfigurationOutput) ElementType() reflect.Type

func (ApiCorsConfigurationOutput) ExposeHeaders

The set of exposed HTTP headers.

func (ApiCorsConfigurationOutput) MaxAge

The number of seconds that the browser should cache preflight request results.

func (ApiCorsConfigurationOutput) ToApiCorsConfigurationOutput

func (o ApiCorsConfigurationOutput) ToApiCorsConfigurationOutput() ApiCorsConfigurationOutput

func (ApiCorsConfigurationOutput) ToApiCorsConfigurationOutputWithContext

func (o ApiCorsConfigurationOutput) ToApiCorsConfigurationOutputWithContext(ctx context.Context) ApiCorsConfigurationOutput

func (ApiCorsConfigurationOutput) ToApiCorsConfigurationPtrOutput

func (o ApiCorsConfigurationOutput) ToApiCorsConfigurationPtrOutput() ApiCorsConfigurationPtrOutput

func (ApiCorsConfigurationOutput) ToApiCorsConfigurationPtrOutputWithContext

func (o ApiCorsConfigurationOutput) ToApiCorsConfigurationPtrOutputWithContext(ctx context.Context) ApiCorsConfigurationPtrOutput

type ApiCorsConfigurationPtrInput

type ApiCorsConfigurationPtrInput interface {
	pulumi.Input

	ToApiCorsConfigurationPtrOutput() ApiCorsConfigurationPtrOutput
	ToApiCorsConfigurationPtrOutputWithContext(context.Context) ApiCorsConfigurationPtrOutput
}

ApiCorsConfigurationPtrInput is an input type that accepts ApiCorsConfigurationArgs, ApiCorsConfigurationPtr and ApiCorsConfigurationPtrOutput values. You can construct a concrete instance of `ApiCorsConfigurationPtrInput` via:

        ApiCorsConfigurationArgs{...}

or:

        nil

type ApiCorsConfigurationPtrOutput

type ApiCorsConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ApiCorsConfigurationPtrOutput) AllowCredentials

func (o ApiCorsConfigurationPtrOutput) AllowCredentials() pulumi.BoolPtrOutput

Whether credentials are included in the CORS request.

func (ApiCorsConfigurationPtrOutput) AllowHeaders

The set of allowed HTTP headers.

func (ApiCorsConfigurationPtrOutput) AllowMethods

The set of allowed HTTP methods.

func (ApiCorsConfigurationPtrOutput) AllowOrigins

The set of allowed origins.

func (ApiCorsConfigurationPtrOutput) Elem

func (ApiCorsConfigurationPtrOutput) ElementType

func (ApiCorsConfigurationPtrOutput) ExposeHeaders

The set of exposed HTTP headers.

func (ApiCorsConfigurationPtrOutput) MaxAge

The number of seconds that the browser should cache preflight request results.

func (ApiCorsConfigurationPtrOutput) ToApiCorsConfigurationPtrOutput

func (o ApiCorsConfigurationPtrOutput) ToApiCorsConfigurationPtrOutput() ApiCorsConfigurationPtrOutput

func (ApiCorsConfigurationPtrOutput) ToApiCorsConfigurationPtrOutputWithContext

func (o ApiCorsConfigurationPtrOutput) ToApiCorsConfigurationPtrOutputWithContext(ctx context.Context) ApiCorsConfigurationPtrOutput

type ApiInput added in v3.13.0

type ApiInput interface {
	pulumi.Input

	ToApiOutput() ApiOutput
	ToApiOutputWithContext(ctx context.Context) ApiOutput
}

type ApiMap added in v3.25.0

type ApiMap map[string]ApiInput

func (ApiMap) ElementType added in v3.25.0

func (ApiMap) ElementType() reflect.Type

func (ApiMap) ToApiMapOutput added in v3.25.0

func (i ApiMap) ToApiMapOutput() ApiMapOutput

func (ApiMap) ToApiMapOutputWithContext added in v3.25.0

func (i ApiMap) ToApiMapOutputWithContext(ctx context.Context) ApiMapOutput

type ApiMapInput added in v3.25.0

type ApiMapInput interface {
	pulumi.Input

	ToApiMapOutput() ApiMapOutput
	ToApiMapOutputWithContext(context.Context) ApiMapOutput
}

ApiMapInput is an input type that accepts ApiMap and ApiMapOutput values. You can construct a concrete instance of `ApiMapInput` via:

ApiMap{ "key": ApiArgs{...} }

type ApiMapOutput added in v3.25.0

type ApiMapOutput struct{ *pulumi.OutputState }

func (ApiMapOutput) ElementType added in v3.25.0

func (ApiMapOutput) ElementType() reflect.Type

func (ApiMapOutput) MapIndex added in v3.25.0

func (o ApiMapOutput) MapIndex(k pulumi.StringInput) ApiOutput

func (ApiMapOutput) ToApiMapOutput added in v3.25.0

func (o ApiMapOutput) ToApiMapOutput() ApiMapOutput

func (ApiMapOutput) ToApiMapOutputWithContext added in v3.25.0

func (o ApiMapOutput) ToApiMapOutputWithContext(ctx context.Context) ApiMapOutput

type ApiMapping

type ApiMapping struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// The [API mapping key](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-mapping-template-reference.html).
	ApiMappingKey pulumi.StringPtrOutput `pulumi:"apiMappingKey"`
	// The domain name. Use the `apigatewayv2.DomainName` resource to configure a domain name.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
	// The API stage. Use the `apigatewayv2.Stage` resource to configure an API stage.
	Stage pulumi.StringOutput `pulumi:"stage"`
}

Manages an Amazon API Gateway Version 2 API mapping. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html).

## Example Usage ### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewApiMapping(ctx, "example", &apigatewayv2.ApiMappingArgs{
			ApiId:      pulumi.Any(aws_apigatewayv2_api.Example.Id),
			DomainName: pulumi.Any(aws_apigatewayv2_domain_name.Example.Id),
			Stage:      pulumi.Any(aws_apigatewayv2_stage.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_api_mapping` can be imported by using the API mapping identifier and domain name, e.g.

```sh

$ pulumi import aws:apigatewayv2/apiMapping:ApiMapping example 1122334/ws-api.example.com

```

func GetApiMapping

func GetApiMapping(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ApiMappingState, opts ...pulumi.ResourceOption) (*ApiMapping, error)

GetApiMapping gets an existing ApiMapping resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewApiMapping

func NewApiMapping(ctx *pulumi.Context,
	name string, args *ApiMappingArgs, opts ...pulumi.ResourceOption) (*ApiMapping, error)

NewApiMapping registers a new resource with the given unique name, arguments, and options.

func (*ApiMapping) ElementType added in v3.13.0

func (*ApiMapping) ElementType() reflect.Type

func (*ApiMapping) ToApiMappingOutput added in v3.13.0

func (i *ApiMapping) ToApiMappingOutput() ApiMappingOutput

func (*ApiMapping) ToApiMappingOutputWithContext added in v3.13.0

func (i *ApiMapping) ToApiMappingOutputWithContext(ctx context.Context) ApiMappingOutput

func (*ApiMapping) ToApiMappingPtrOutput added in v3.25.0

func (i *ApiMapping) ToApiMappingPtrOutput() ApiMappingPtrOutput

func (*ApiMapping) ToApiMappingPtrOutputWithContext added in v3.25.0

func (i *ApiMapping) ToApiMappingPtrOutputWithContext(ctx context.Context) ApiMappingPtrOutput

type ApiMappingArgs

type ApiMappingArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// The [API mapping key](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-mapping-template-reference.html).
	ApiMappingKey pulumi.StringPtrInput
	// The domain name. Use the `apigatewayv2.DomainName` resource to configure a domain name.
	DomainName pulumi.StringInput
	// The API stage. Use the `apigatewayv2.Stage` resource to configure an API stage.
	Stage pulumi.StringInput
}

The set of arguments for constructing a ApiMapping resource.

func (ApiMappingArgs) ElementType

func (ApiMappingArgs) ElementType() reflect.Type

type ApiMappingArray added in v3.25.0

type ApiMappingArray []ApiMappingInput

func (ApiMappingArray) ElementType added in v3.25.0

func (ApiMappingArray) ElementType() reflect.Type

func (ApiMappingArray) ToApiMappingArrayOutput added in v3.25.0

func (i ApiMappingArray) ToApiMappingArrayOutput() ApiMappingArrayOutput

func (ApiMappingArray) ToApiMappingArrayOutputWithContext added in v3.25.0

func (i ApiMappingArray) ToApiMappingArrayOutputWithContext(ctx context.Context) ApiMappingArrayOutput

type ApiMappingArrayInput added in v3.25.0

type ApiMappingArrayInput interface {
	pulumi.Input

	ToApiMappingArrayOutput() ApiMappingArrayOutput
	ToApiMappingArrayOutputWithContext(context.Context) ApiMappingArrayOutput
}

ApiMappingArrayInput is an input type that accepts ApiMappingArray and ApiMappingArrayOutput values. You can construct a concrete instance of `ApiMappingArrayInput` via:

ApiMappingArray{ ApiMappingArgs{...} }

type ApiMappingArrayOutput added in v3.25.0

type ApiMappingArrayOutput struct{ *pulumi.OutputState }

func (ApiMappingArrayOutput) ElementType added in v3.25.0

func (ApiMappingArrayOutput) ElementType() reflect.Type

func (ApiMappingArrayOutput) Index added in v3.25.0

func (ApiMappingArrayOutput) ToApiMappingArrayOutput added in v3.25.0

func (o ApiMappingArrayOutput) ToApiMappingArrayOutput() ApiMappingArrayOutput

func (ApiMappingArrayOutput) ToApiMappingArrayOutputWithContext added in v3.25.0

func (o ApiMappingArrayOutput) ToApiMappingArrayOutputWithContext(ctx context.Context) ApiMappingArrayOutput

type ApiMappingInput added in v3.13.0

type ApiMappingInput interface {
	pulumi.Input

	ToApiMappingOutput() ApiMappingOutput
	ToApiMappingOutputWithContext(ctx context.Context) ApiMappingOutput
}

type ApiMappingMap added in v3.25.0

type ApiMappingMap map[string]ApiMappingInput

func (ApiMappingMap) ElementType added in v3.25.0

func (ApiMappingMap) ElementType() reflect.Type

func (ApiMappingMap) ToApiMappingMapOutput added in v3.25.0

func (i ApiMappingMap) ToApiMappingMapOutput() ApiMappingMapOutput

func (ApiMappingMap) ToApiMappingMapOutputWithContext added in v3.25.0

func (i ApiMappingMap) ToApiMappingMapOutputWithContext(ctx context.Context) ApiMappingMapOutput

type ApiMappingMapInput added in v3.25.0

type ApiMappingMapInput interface {
	pulumi.Input

	ToApiMappingMapOutput() ApiMappingMapOutput
	ToApiMappingMapOutputWithContext(context.Context) ApiMappingMapOutput
}

ApiMappingMapInput is an input type that accepts ApiMappingMap and ApiMappingMapOutput values. You can construct a concrete instance of `ApiMappingMapInput` via:

ApiMappingMap{ "key": ApiMappingArgs{...} }

type ApiMappingMapOutput added in v3.25.0

type ApiMappingMapOutput struct{ *pulumi.OutputState }

func (ApiMappingMapOutput) ElementType added in v3.25.0

func (ApiMappingMapOutput) ElementType() reflect.Type

func (ApiMappingMapOutput) MapIndex added in v3.25.0

func (ApiMappingMapOutput) ToApiMappingMapOutput added in v3.25.0

func (o ApiMappingMapOutput) ToApiMappingMapOutput() ApiMappingMapOutput

func (ApiMappingMapOutput) ToApiMappingMapOutputWithContext added in v3.25.0

func (o ApiMappingMapOutput) ToApiMappingMapOutputWithContext(ctx context.Context) ApiMappingMapOutput

type ApiMappingOutput added in v3.13.0

type ApiMappingOutput struct {
	*pulumi.OutputState
}

func (ApiMappingOutput) ElementType added in v3.13.0

func (ApiMappingOutput) ElementType() reflect.Type

func (ApiMappingOutput) ToApiMappingOutput added in v3.13.0

func (o ApiMappingOutput) ToApiMappingOutput() ApiMappingOutput

func (ApiMappingOutput) ToApiMappingOutputWithContext added in v3.13.0

func (o ApiMappingOutput) ToApiMappingOutputWithContext(ctx context.Context) ApiMappingOutput

func (ApiMappingOutput) ToApiMappingPtrOutput added in v3.25.0

func (o ApiMappingOutput) ToApiMappingPtrOutput() ApiMappingPtrOutput

func (ApiMappingOutput) ToApiMappingPtrOutputWithContext added in v3.25.0

func (o ApiMappingOutput) ToApiMappingPtrOutputWithContext(ctx context.Context) ApiMappingPtrOutput

type ApiMappingPtrInput added in v3.25.0

type ApiMappingPtrInput interface {
	pulumi.Input

	ToApiMappingPtrOutput() ApiMappingPtrOutput
	ToApiMappingPtrOutputWithContext(ctx context.Context) ApiMappingPtrOutput
}

type ApiMappingPtrOutput added in v3.25.0

type ApiMappingPtrOutput struct {
	*pulumi.OutputState
}

func (ApiMappingPtrOutput) ElementType added in v3.25.0

func (ApiMappingPtrOutput) ElementType() reflect.Type

func (ApiMappingPtrOutput) ToApiMappingPtrOutput added in v3.25.0

func (o ApiMappingPtrOutput) ToApiMappingPtrOutput() ApiMappingPtrOutput

func (ApiMappingPtrOutput) ToApiMappingPtrOutputWithContext added in v3.25.0

func (o ApiMappingPtrOutput) ToApiMappingPtrOutputWithContext(ctx context.Context) ApiMappingPtrOutput

type ApiMappingState

type ApiMappingState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// The [API mapping key](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-mapping-template-reference.html).
	ApiMappingKey pulumi.StringPtrInput
	// The domain name. Use the `apigatewayv2.DomainName` resource to configure a domain name.
	DomainName pulumi.StringPtrInput
	// The API stage. Use the `apigatewayv2.Stage` resource to configure an API stage.
	Stage pulumi.StringPtrInput
}

func (ApiMappingState) ElementType

func (ApiMappingState) ElementType() reflect.Type

type ApiOutput added in v3.13.0

type ApiOutput struct {
	*pulumi.OutputState
}

func (ApiOutput) ElementType added in v3.13.0

func (ApiOutput) ElementType() reflect.Type

func (ApiOutput) ToApiOutput added in v3.13.0

func (o ApiOutput) ToApiOutput() ApiOutput

func (ApiOutput) ToApiOutputWithContext added in v3.13.0

func (o ApiOutput) ToApiOutputWithContext(ctx context.Context) ApiOutput

func (ApiOutput) ToApiPtrOutput added in v3.25.0

func (o ApiOutput) ToApiPtrOutput() ApiPtrOutput

func (ApiOutput) ToApiPtrOutputWithContext added in v3.25.0

func (o ApiOutput) ToApiPtrOutputWithContext(ctx context.Context) ApiPtrOutput

type ApiPtrInput added in v3.25.0

type ApiPtrInput interface {
	pulumi.Input

	ToApiPtrOutput() ApiPtrOutput
	ToApiPtrOutputWithContext(ctx context.Context) ApiPtrOutput
}

type ApiPtrOutput added in v3.25.0

type ApiPtrOutput struct {
	*pulumi.OutputState
}

func (ApiPtrOutput) ElementType added in v3.25.0

func (ApiPtrOutput) ElementType() reflect.Type

func (ApiPtrOutput) ToApiPtrOutput added in v3.25.0

func (o ApiPtrOutput) ToApiPtrOutput() ApiPtrOutput

func (ApiPtrOutput) ToApiPtrOutputWithContext added in v3.25.0

func (o ApiPtrOutput) ToApiPtrOutputWithContext(ctx context.Context) ApiPtrOutput

type ApiState

type ApiState struct {
	// The 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.
	ApiEndpoint pulumi.StringPtrInput
	// 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.
	ApiKeySelectionExpression pulumi.StringPtrInput
	// The ARN of the API.
	Arn pulumi.StringPtrInput
	// An OpenAPI specification that defines the set of routes and integrations to create as part of the HTTP APIs. Supported only for HTTP APIs.
	Body pulumi.StringPtrInput
	// The cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs.
	CorsConfiguration ApiCorsConfigurationPtrInput
	// Part of _quick create_. Specifies any credentials required for the integration. Applicable for HTTP APIs.
	CredentialsArn pulumi.StringPtrInput
	// The description of the API. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrInput
	// 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.
	DisableExecuteApiEndpoint pulumi.BoolPtrInput
	// The ARN prefix to be used in an `lambda.Permission`'s `sourceArn` attribute
	// or in an `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.
	ExecutionArn pulumi.StringPtrInput
	// 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.
	FailOnWarnings pulumi.BoolPtrInput
	// The name of the API. Must be less than or equal to 128 characters in length.
	Name pulumi.StringPtrInput
	// The API protocol. Valid values: `HTTP`, `WEBSOCKET`.
	ProtocolType pulumi.StringPtrInput
	// 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.
	RouteKey pulumi.StringPtrInput
	// 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`.
	RouteSelectionExpression pulumi.StringPtrInput
	// A map of tags to assign to the API.
	Tags pulumi.StringMapInput
	// 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.
	Target pulumi.StringPtrInput
	// A version identifier for the API. Must be between 1 and 64 characters in length.
	Version pulumi.StringPtrInput
}

func (ApiState) ElementType

func (ApiState) ElementType() reflect.Type

type Authorizer

type Authorizer struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// The required credentials as an IAM role for API Gateway to invoke the authorizer.
	// Supported only for `REQUEST` authorizers.
	AuthorizerCredentialsArn pulumi.StringPtrOutput `pulumi:"authorizerCredentialsArn"`
	// The format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers.
	// Valid values: `1.0`, `2.0`.
	AuthorizerPayloadFormatVersion pulumi.StringPtrOutput `pulumi:"authorizerPayloadFormatVersion"`
	// The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled.
	// If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Defaults to `300`.
	// Supported only for HTTP API Lambda authorizers.
	AuthorizerResultTtlInSeconds pulumi.IntOutput `pulumi:"authorizerResultTtlInSeconds"`
	// The authorizer type. Valid values: `JWT`, `REQUEST`.
	// Specify `REQUEST` for a Lambda function using incoming request parameters.
	// For HTTP APIs, specify `JWT` to use JSON Web Tokens.
	AuthorizerType pulumi.StringOutput `pulumi:"authorizerType"`
	// The authorizer's Uniform Resource Identifier (URI).
	// For `REQUEST` authorizers this must be a well-formed Lambda function URI, such as the `invokeArn` attribute of the `lambda.Function` resource.
	// Supported only for `REQUEST` authorizers. Must be between 1 and 2048 characters in length.
	AuthorizerUri pulumi.StringPtrOutput `pulumi:"authorizerUri"`
	// Whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy.
	// Supported only for HTTP APIs.
	EnableSimpleResponses pulumi.BoolPtrOutput `pulumi:"enableSimpleResponses"`
	// The identity sources for which authorization is requested.
	// For `REQUEST` authorizers the value is a list of one or more mapping expressions of the specified request parameters.
	// For `JWT` authorizers the single entry specifies where to extract the JSON Web Token (JWT) from inbound requests.
	IdentitySources pulumi.StringArrayOutput `pulumi:"identitySources"`
	// The configuration of a JWT authorizer. Required for the `JWT` authorizer type.
	// Supported only for HTTP APIs.
	JwtConfiguration AuthorizerJwtConfigurationPtrOutput `pulumi:"jwtConfiguration"`
	// The name of the authorizer. Must be between 1 and 128 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
}

Manages an Amazon API Gateway Version 2 authorizer. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html).

## Example Usage ### Basic WebSocket API

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewAuthorizer(ctx, "example", &apigatewayv2.AuthorizerArgs{
			ApiId:          pulumi.Any(aws_apigatewayv2_api.Example.Id),
			AuthorizerType: pulumi.String("REQUEST"),
			AuthorizerUri:  pulumi.Any(aws_lambda_function.Example.Invoke_arn),
			IdentitySources: pulumi.StringArray{
				pulumi.String("route.request.header.Auth"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Basic HTTP API

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewAuthorizer(ctx, "example", &apigatewayv2.AuthorizerArgs{
			ApiId:          pulumi.Any(aws_apigatewayv2_api.Example.Id),
			AuthorizerType: pulumi.String("JWT"),
			IdentitySources: pulumi.StringArray{
				pulumi.String(fmt.Sprintf("%v%v", "$", "request.header.Authorization")),
			},
			JwtConfiguration: &apigatewayv2.AuthorizerJwtConfigurationArgs{
				Audiences: pulumi.StringArray{
					pulumi.String("example"),
				},
				Issuer: pulumi.String(fmt.Sprintf("%v%v", "https://", aws_cognito_user_pool.Example.Endpoint)),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_authorizer` can be imported by using the API identifier and authorizer identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/authorizer:Authorizer example aabbccddee/1122334

```

func GetAuthorizer

func GetAuthorizer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AuthorizerState, opts ...pulumi.ResourceOption) (*Authorizer, error)

GetAuthorizer gets an existing Authorizer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAuthorizer

func NewAuthorizer(ctx *pulumi.Context,
	name string, args *AuthorizerArgs, opts ...pulumi.ResourceOption) (*Authorizer, error)

NewAuthorizer registers a new resource with the given unique name, arguments, and options.

func (*Authorizer) ElementType added in v3.13.0

func (*Authorizer) ElementType() reflect.Type

func (*Authorizer) ToAuthorizerOutput added in v3.13.0

func (i *Authorizer) ToAuthorizerOutput() AuthorizerOutput

func (*Authorizer) ToAuthorizerOutputWithContext added in v3.13.0

func (i *Authorizer) ToAuthorizerOutputWithContext(ctx context.Context) AuthorizerOutput

func (*Authorizer) ToAuthorizerPtrOutput added in v3.25.0

func (i *Authorizer) ToAuthorizerPtrOutput() AuthorizerPtrOutput

func (*Authorizer) ToAuthorizerPtrOutputWithContext added in v3.25.0

func (i *Authorizer) ToAuthorizerPtrOutputWithContext(ctx context.Context) AuthorizerPtrOutput

type AuthorizerArgs

type AuthorizerArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// The required credentials as an IAM role for API Gateway to invoke the authorizer.
	// Supported only for `REQUEST` authorizers.
	AuthorizerCredentialsArn pulumi.StringPtrInput
	// The format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers.
	// Valid values: `1.0`, `2.0`.
	AuthorizerPayloadFormatVersion pulumi.StringPtrInput
	// The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled.
	// If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Defaults to `300`.
	// Supported only for HTTP API Lambda authorizers.
	AuthorizerResultTtlInSeconds pulumi.IntPtrInput
	// The authorizer type. Valid values: `JWT`, `REQUEST`.
	// Specify `REQUEST` for a Lambda function using incoming request parameters.
	// For HTTP APIs, specify `JWT` to use JSON Web Tokens.
	AuthorizerType pulumi.StringInput
	// The authorizer's Uniform Resource Identifier (URI).
	// For `REQUEST` authorizers this must be a well-formed Lambda function URI, such as the `invokeArn` attribute of the `lambda.Function` resource.
	// Supported only for `REQUEST` authorizers. Must be between 1 and 2048 characters in length.
	AuthorizerUri pulumi.StringPtrInput
	// Whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy.
	// Supported only for HTTP APIs.
	EnableSimpleResponses pulumi.BoolPtrInput
	// The identity sources for which authorization is requested.
	// For `REQUEST` authorizers the value is a list of one or more mapping expressions of the specified request parameters.
	// For `JWT` authorizers the single entry specifies where to extract the JSON Web Token (JWT) from inbound requests.
	IdentitySources pulumi.StringArrayInput
	// The configuration of a JWT authorizer. Required for the `JWT` authorizer type.
	// Supported only for HTTP APIs.
	JwtConfiguration AuthorizerJwtConfigurationPtrInput
	// The name of the authorizer. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a Authorizer resource.

func (AuthorizerArgs) ElementType

func (AuthorizerArgs) ElementType() reflect.Type

type AuthorizerArray added in v3.25.0

type AuthorizerArray []AuthorizerInput

func (AuthorizerArray) ElementType added in v3.25.0

func (AuthorizerArray) ElementType() reflect.Type

func (AuthorizerArray) ToAuthorizerArrayOutput added in v3.25.0

func (i AuthorizerArray) ToAuthorizerArrayOutput() AuthorizerArrayOutput

func (AuthorizerArray) ToAuthorizerArrayOutputWithContext added in v3.25.0

func (i AuthorizerArray) ToAuthorizerArrayOutputWithContext(ctx context.Context) AuthorizerArrayOutput

type AuthorizerArrayInput added in v3.25.0

type AuthorizerArrayInput interface {
	pulumi.Input

	ToAuthorizerArrayOutput() AuthorizerArrayOutput
	ToAuthorizerArrayOutputWithContext(context.Context) AuthorizerArrayOutput
}

AuthorizerArrayInput is an input type that accepts AuthorizerArray and AuthorizerArrayOutput values. You can construct a concrete instance of `AuthorizerArrayInput` via:

AuthorizerArray{ AuthorizerArgs{...} }

type AuthorizerArrayOutput added in v3.25.0

type AuthorizerArrayOutput struct{ *pulumi.OutputState }

func (AuthorizerArrayOutput) ElementType added in v3.25.0

func (AuthorizerArrayOutput) ElementType() reflect.Type

func (AuthorizerArrayOutput) Index added in v3.25.0

func (AuthorizerArrayOutput) ToAuthorizerArrayOutput added in v3.25.0

func (o AuthorizerArrayOutput) ToAuthorizerArrayOutput() AuthorizerArrayOutput

func (AuthorizerArrayOutput) ToAuthorizerArrayOutputWithContext added in v3.25.0

func (o AuthorizerArrayOutput) ToAuthorizerArrayOutputWithContext(ctx context.Context) AuthorizerArrayOutput

type AuthorizerInput added in v3.13.0

type AuthorizerInput interface {
	pulumi.Input

	ToAuthorizerOutput() AuthorizerOutput
	ToAuthorizerOutputWithContext(ctx context.Context) AuthorizerOutput
}

type AuthorizerJwtConfiguration

type AuthorizerJwtConfiguration struct {
	// A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list.
	Audiences []string `pulumi:"audiences"`
	// The base domain of the identity provider that issues JSON Web Tokens, such as the `endpoint` attribute of the `cognito.UserPool` resource.
	Issuer *string `pulumi:"issuer"`
}

type AuthorizerJwtConfigurationArgs

type AuthorizerJwtConfigurationArgs struct {
	// A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list.
	Audiences pulumi.StringArrayInput `pulumi:"audiences"`
	// The base domain of the identity provider that issues JSON Web Tokens, such as the `endpoint` attribute of the `cognito.UserPool` resource.
	Issuer pulumi.StringPtrInput `pulumi:"issuer"`
}

func (AuthorizerJwtConfigurationArgs) ElementType

func (AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationOutput

func (i AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationOutput() AuthorizerJwtConfigurationOutput

func (AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationOutputWithContext

func (i AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationOutputWithContext(ctx context.Context) AuthorizerJwtConfigurationOutput

func (AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationPtrOutput

func (i AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationPtrOutput() AuthorizerJwtConfigurationPtrOutput

func (AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationPtrOutputWithContext

func (i AuthorizerJwtConfigurationArgs) ToAuthorizerJwtConfigurationPtrOutputWithContext(ctx context.Context) AuthorizerJwtConfigurationPtrOutput

type AuthorizerJwtConfigurationInput

type AuthorizerJwtConfigurationInput interface {
	pulumi.Input

	ToAuthorizerJwtConfigurationOutput() AuthorizerJwtConfigurationOutput
	ToAuthorizerJwtConfigurationOutputWithContext(context.Context) AuthorizerJwtConfigurationOutput
}

AuthorizerJwtConfigurationInput is an input type that accepts AuthorizerJwtConfigurationArgs and AuthorizerJwtConfigurationOutput values. You can construct a concrete instance of `AuthorizerJwtConfigurationInput` via:

AuthorizerJwtConfigurationArgs{...}

type AuthorizerJwtConfigurationOutput

type AuthorizerJwtConfigurationOutput struct{ *pulumi.OutputState }

func (AuthorizerJwtConfigurationOutput) Audiences

A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list.

func (AuthorizerJwtConfigurationOutput) ElementType

func (AuthorizerJwtConfigurationOutput) Issuer

The base domain of the identity provider that issues JSON Web Tokens, such as the `endpoint` attribute of the `cognito.UserPool` resource.

func (AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationOutput

func (o AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationOutput() AuthorizerJwtConfigurationOutput

func (AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationOutputWithContext

func (o AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationOutputWithContext(ctx context.Context) AuthorizerJwtConfigurationOutput

func (AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationPtrOutput

func (o AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationPtrOutput() AuthorizerJwtConfigurationPtrOutput

func (AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationPtrOutputWithContext

func (o AuthorizerJwtConfigurationOutput) ToAuthorizerJwtConfigurationPtrOutputWithContext(ctx context.Context) AuthorizerJwtConfigurationPtrOutput

type AuthorizerJwtConfigurationPtrInput

type AuthorizerJwtConfigurationPtrInput interface {
	pulumi.Input

	ToAuthorizerJwtConfigurationPtrOutput() AuthorizerJwtConfigurationPtrOutput
	ToAuthorizerJwtConfigurationPtrOutputWithContext(context.Context) AuthorizerJwtConfigurationPtrOutput
}

AuthorizerJwtConfigurationPtrInput is an input type that accepts AuthorizerJwtConfigurationArgs, AuthorizerJwtConfigurationPtr and AuthorizerJwtConfigurationPtrOutput values. You can construct a concrete instance of `AuthorizerJwtConfigurationPtrInput` via:

        AuthorizerJwtConfigurationArgs{...}

or:

        nil

type AuthorizerJwtConfigurationPtrOutput

type AuthorizerJwtConfigurationPtrOutput struct{ *pulumi.OutputState }

func (AuthorizerJwtConfigurationPtrOutput) Audiences

A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list.

func (AuthorizerJwtConfigurationPtrOutput) Elem

func (AuthorizerJwtConfigurationPtrOutput) ElementType

func (AuthorizerJwtConfigurationPtrOutput) Issuer

The base domain of the identity provider that issues JSON Web Tokens, such as the `endpoint` attribute of the `cognito.UserPool` resource.

func (AuthorizerJwtConfigurationPtrOutput) ToAuthorizerJwtConfigurationPtrOutput

func (o AuthorizerJwtConfigurationPtrOutput) ToAuthorizerJwtConfigurationPtrOutput() AuthorizerJwtConfigurationPtrOutput

func (AuthorizerJwtConfigurationPtrOutput) ToAuthorizerJwtConfigurationPtrOutputWithContext

func (o AuthorizerJwtConfigurationPtrOutput) ToAuthorizerJwtConfigurationPtrOutputWithContext(ctx context.Context) AuthorizerJwtConfigurationPtrOutput

type AuthorizerMap added in v3.25.0

type AuthorizerMap map[string]AuthorizerInput

func (AuthorizerMap) ElementType added in v3.25.0

func (AuthorizerMap) ElementType() reflect.Type

func (AuthorizerMap) ToAuthorizerMapOutput added in v3.25.0

func (i AuthorizerMap) ToAuthorizerMapOutput() AuthorizerMapOutput

func (AuthorizerMap) ToAuthorizerMapOutputWithContext added in v3.25.0

func (i AuthorizerMap) ToAuthorizerMapOutputWithContext(ctx context.Context) AuthorizerMapOutput

type AuthorizerMapInput added in v3.25.0

type AuthorizerMapInput interface {
	pulumi.Input

	ToAuthorizerMapOutput() AuthorizerMapOutput
	ToAuthorizerMapOutputWithContext(context.Context) AuthorizerMapOutput
}

AuthorizerMapInput is an input type that accepts AuthorizerMap and AuthorizerMapOutput values. You can construct a concrete instance of `AuthorizerMapInput` via:

AuthorizerMap{ "key": AuthorizerArgs{...} }

type AuthorizerMapOutput added in v3.25.0

type AuthorizerMapOutput struct{ *pulumi.OutputState }

func (AuthorizerMapOutput) ElementType added in v3.25.0

func (AuthorizerMapOutput) ElementType() reflect.Type

func (AuthorizerMapOutput) MapIndex added in v3.25.0

func (AuthorizerMapOutput) ToAuthorizerMapOutput added in v3.25.0

func (o AuthorizerMapOutput) ToAuthorizerMapOutput() AuthorizerMapOutput

func (AuthorizerMapOutput) ToAuthorizerMapOutputWithContext added in v3.25.0

func (o AuthorizerMapOutput) ToAuthorizerMapOutputWithContext(ctx context.Context) AuthorizerMapOutput

type AuthorizerOutput added in v3.13.0

type AuthorizerOutput struct {
	*pulumi.OutputState
}

func (AuthorizerOutput) ElementType added in v3.13.0

func (AuthorizerOutput) ElementType() reflect.Type

func (AuthorizerOutput) ToAuthorizerOutput added in v3.13.0

func (o AuthorizerOutput) ToAuthorizerOutput() AuthorizerOutput

func (AuthorizerOutput) ToAuthorizerOutputWithContext added in v3.13.0

func (o AuthorizerOutput) ToAuthorizerOutputWithContext(ctx context.Context) AuthorizerOutput

func (AuthorizerOutput) ToAuthorizerPtrOutput added in v3.25.0

func (o AuthorizerOutput) ToAuthorizerPtrOutput() AuthorizerPtrOutput

func (AuthorizerOutput) ToAuthorizerPtrOutputWithContext added in v3.25.0

func (o AuthorizerOutput) ToAuthorizerPtrOutputWithContext(ctx context.Context) AuthorizerPtrOutput

type AuthorizerPtrInput added in v3.25.0

type AuthorizerPtrInput interface {
	pulumi.Input

	ToAuthorizerPtrOutput() AuthorizerPtrOutput
	ToAuthorizerPtrOutputWithContext(ctx context.Context) AuthorizerPtrOutput
}

type AuthorizerPtrOutput added in v3.25.0

type AuthorizerPtrOutput struct {
	*pulumi.OutputState
}

func (AuthorizerPtrOutput) ElementType added in v3.25.0

func (AuthorizerPtrOutput) ElementType() reflect.Type

func (AuthorizerPtrOutput) ToAuthorizerPtrOutput added in v3.25.0

func (o AuthorizerPtrOutput) ToAuthorizerPtrOutput() AuthorizerPtrOutput

func (AuthorizerPtrOutput) ToAuthorizerPtrOutputWithContext added in v3.25.0

func (o AuthorizerPtrOutput) ToAuthorizerPtrOutputWithContext(ctx context.Context) AuthorizerPtrOutput

type AuthorizerState

type AuthorizerState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// The required credentials as an IAM role for API Gateway to invoke the authorizer.
	// Supported only for `REQUEST` authorizers.
	AuthorizerCredentialsArn pulumi.StringPtrInput
	// The format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers.
	// Valid values: `1.0`, `2.0`.
	AuthorizerPayloadFormatVersion pulumi.StringPtrInput
	// The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled.
	// If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Defaults to `300`.
	// Supported only for HTTP API Lambda authorizers.
	AuthorizerResultTtlInSeconds pulumi.IntPtrInput
	// The authorizer type. Valid values: `JWT`, `REQUEST`.
	// Specify `REQUEST` for a Lambda function using incoming request parameters.
	// For HTTP APIs, specify `JWT` to use JSON Web Tokens.
	AuthorizerType pulumi.StringPtrInput
	// The authorizer's Uniform Resource Identifier (URI).
	// For `REQUEST` authorizers this must be a well-formed Lambda function URI, such as the `invokeArn` attribute of the `lambda.Function` resource.
	// Supported only for `REQUEST` authorizers. Must be between 1 and 2048 characters in length.
	AuthorizerUri pulumi.StringPtrInput
	// Whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy.
	// Supported only for HTTP APIs.
	EnableSimpleResponses pulumi.BoolPtrInput
	// The identity sources for which authorization is requested.
	// For `REQUEST` authorizers the value is a list of one or more mapping expressions of the specified request parameters.
	// For `JWT` authorizers the single entry specifies where to extract the JSON Web Token (JWT) from inbound requests.
	IdentitySources pulumi.StringArrayInput
	// The configuration of a JWT authorizer. Required for the `JWT` authorizer type.
	// Supported only for HTTP APIs.
	JwtConfiguration AuthorizerJwtConfigurationPtrInput
	// The name of the authorizer. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
}

func (AuthorizerState) ElementType

func (AuthorizerState) ElementType() reflect.Type

type Deployment

type Deployment struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// Whether the deployment was automatically released.
	AutoDeployed pulumi.BoolOutput `pulumi:"autoDeployed"`
	// The description for the deployment resource. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// A map of arbitrary keys and values that, when changed, will trigger a redeployment.
	Triggers pulumi.StringMapOutput `pulumi:"triggers"`
}

Manages an Amazon API Gateway Version 2 deployment. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html).

> **Note:** Creating a deployment for an API requires at least one `apigatewayv2.Route` resource associated with that API. To avoid race conditions when all resources are being created together, you need to add implicit resource references via the `triggers` argument or explicit resource references using the [resource `dependsOn` meta-argument](https://www.pulumi.com/docs/intro/concepts/programming-model/#dependson).

## Example Usage ### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewDeployment(ctx, "example", &apigatewayv2.DeploymentArgs{
			ApiId:       pulumi.Any(aws_apigatewayv2_route.Example.Api_id),
			Description: pulumi.String("Example deployment"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_deployment` can be imported by using the API identifier and deployment identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/deployment:Deployment example aabbccddee/1122334

```

The `triggers` argument cannot be imported.

func GetDeployment

func GetDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DeploymentState, opts ...pulumi.ResourceOption) (*Deployment, error)

GetDeployment gets an existing Deployment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDeployment

func NewDeployment(ctx *pulumi.Context,
	name string, args *DeploymentArgs, opts ...pulumi.ResourceOption) (*Deployment, error)

NewDeployment registers a new resource with the given unique name, arguments, and options.

func (*Deployment) ElementType added in v3.13.0

func (*Deployment) ElementType() reflect.Type

func (*Deployment) ToDeploymentOutput added in v3.13.0

func (i *Deployment) ToDeploymentOutput() DeploymentOutput

func (*Deployment) ToDeploymentOutputWithContext added in v3.13.0

func (i *Deployment) ToDeploymentOutputWithContext(ctx context.Context) DeploymentOutput

func (*Deployment) ToDeploymentPtrOutput added in v3.25.0

func (i *Deployment) ToDeploymentPtrOutput() DeploymentPtrOutput

func (*Deployment) ToDeploymentPtrOutputWithContext added in v3.25.0

func (i *Deployment) ToDeploymentPtrOutputWithContext(ctx context.Context) DeploymentPtrOutput

type DeploymentArgs

type DeploymentArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// The description for the deployment resource. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrInput
	// A map of arbitrary keys and values that, when changed, will trigger a redeployment.
	Triggers pulumi.StringMapInput
}

The set of arguments for constructing a Deployment resource.

func (DeploymentArgs) ElementType

func (DeploymentArgs) ElementType() reflect.Type

type DeploymentArray added in v3.25.0

type DeploymentArray []DeploymentInput

func (DeploymentArray) ElementType added in v3.25.0

func (DeploymentArray) ElementType() reflect.Type

func (DeploymentArray) ToDeploymentArrayOutput added in v3.25.0

func (i DeploymentArray) ToDeploymentArrayOutput() DeploymentArrayOutput

func (DeploymentArray) ToDeploymentArrayOutputWithContext added in v3.25.0

func (i DeploymentArray) ToDeploymentArrayOutputWithContext(ctx context.Context) DeploymentArrayOutput

type DeploymentArrayInput added in v3.25.0

type DeploymentArrayInput interface {
	pulumi.Input

	ToDeploymentArrayOutput() DeploymentArrayOutput
	ToDeploymentArrayOutputWithContext(context.Context) DeploymentArrayOutput
}

DeploymentArrayInput is an input type that accepts DeploymentArray and DeploymentArrayOutput values. You can construct a concrete instance of `DeploymentArrayInput` via:

DeploymentArray{ DeploymentArgs{...} }

type DeploymentArrayOutput added in v3.25.0

type DeploymentArrayOutput struct{ *pulumi.OutputState }

func (DeploymentArrayOutput) ElementType added in v3.25.0

func (DeploymentArrayOutput) ElementType() reflect.Type

func (DeploymentArrayOutput) Index added in v3.25.0

func (DeploymentArrayOutput) ToDeploymentArrayOutput added in v3.25.0

func (o DeploymentArrayOutput) ToDeploymentArrayOutput() DeploymentArrayOutput

func (DeploymentArrayOutput) ToDeploymentArrayOutputWithContext added in v3.25.0

func (o DeploymentArrayOutput) ToDeploymentArrayOutputWithContext(ctx context.Context) DeploymentArrayOutput

type DeploymentInput added in v3.13.0

type DeploymentInput interface {
	pulumi.Input

	ToDeploymentOutput() DeploymentOutput
	ToDeploymentOutputWithContext(ctx context.Context) DeploymentOutput
}

type DeploymentMap added in v3.25.0

type DeploymentMap map[string]DeploymentInput

func (DeploymentMap) ElementType added in v3.25.0

func (DeploymentMap) ElementType() reflect.Type

func (DeploymentMap) ToDeploymentMapOutput added in v3.25.0

func (i DeploymentMap) ToDeploymentMapOutput() DeploymentMapOutput

func (DeploymentMap) ToDeploymentMapOutputWithContext added in v3.25.0

func (i DeploymentMap) ToDeploymentMapOutputWithContext(ctx context.Context) DeploymentMapOutput

type DeploymentMapInput added in v3.25.0

type DeploymentMapInput interface {
	pulumi.Input

	ToDeploymentMapOutput() DeploymentMapOutput
	ToDeploymentMapOutputWithContext(context.Context) DeploymentMapOutput
}

DeploymentMapInput is an input type that accepts DeploymentMap and DeploymentMapOutput values. You can construct a concrete instance of `DeploymentMapInput` via:

DeploymentMap{ "key": DeploymentArgs{...} }

type DeploymentMapOutput added in v3.25.0

type DeploymentMapOutput struct{ *pulumi.OutputState }

func (DeploymentMapOutput) ElementType added in v3.25.0

func (DeploymentMapOutput) ElementType() reflect.Type

func (DeploymentMapOutput) MapIndex added in v3.25.0

func (DeploymentMapOutput) ToDeploymentMapOutput added in v3.25.0

func (o DeploymentMapOutput) ToDeploymentMapOutput() DeploymentMapOutput

func (DeploymentMapOutput) ToDeploymentMapOutputWithContext added in v3.25.0

func (o DeploymentMapOutput) ToDeploymentMapOutputWithContext(ctx context.Context) DeploymentMapOutput

type DeploymentOutput added in v3.13.0

type DeploymentOutput struct {
	*pulumi.OutputState
}

func (DeploymentOutput) ElementType added in v3.13.0

func (DeploymentOutput) ElementType() reflect.Type

func (DeploymentOutput) ToDeploymentOutput added in v3.13.0

func (o DeploymentOutput) ToDeploymentOutput() DeploymentOutput

func (DeploymentOutput) ToDeploymentOutputWithContext added in v3.13.0

func (o DeploymentOutput) ToDeploymentOutputWithContext(ctx context.Context) DeploymentOutput

func (DeploymentOutput) ToDeploymentPtrOutput added in v3.25.0

func (o DeploymentOutput) ToDeploymentPtrOutput() DeploymentPtrOutput

func (DeploymentOutput) ToDeploymentPtrOutputWithContext added in v3.25.0

func (o DeploymentOutput) ToDeploymentPtrOutputWithContext(ctx context.Context) DeploymentPtrOutput

type DeploymentPtrInput added in v3.25.0

type DeploymentPtrInput interface {
	pulumi.Input

	ToDeploymentPtrOutput() DeploymentPtrOutput
	ToDeploymentPtrOutputWithContext(ctx context.Context) DeploymentPtrOutput
}

type DeploymentPtrOutput added in v3.25.0

type DeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (DeploymentPtrOutput) ElementType added in v3.25.0

func (DeploymentPtrOutput) ElementType() reflect.Type

func (DeploymentPtrOutput) ToDeploymentPtrOutput added in v3.25.0

func (o DeploymentPtrOutput) ToDeploymentPtrOutput() DeploymentPtrOutput

func (DeploymentPtrOutput) ToDeploymentPtrOutputWithContext added in v3.25.0

func (o DeploymentPtrOutput) ToDeploymentPtrOutputWithContext(ctx context.Context) DeploymentPtrOutput

type DeploymentState

type DeploymentState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// Whether the deployment was automatically released.
	AutoDeployed pulumi.BoolPtrInput
	// The description for the deployment resource. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrInput
	// A map of arbitrary keys and values that, when changed, will trigger a redeployment.
	Triggers pulumi.StringMapInput
}

func (DeploymentState) ElementType

func (DeploymentState) ElementType() reflect.Type

type DomainName

type DomainName struct {
	pulumi.CustomResourceState

	// The [API mapping selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-mapping-selection-expressions) for the domain name.
	ApiMappingSelectionExpression pulumi.StringOutput `pulumi:"apiMappingSelectionExpression"`
	// The ARN of the domain name.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The domain name. Must be between 1 and 512 characters in length.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
	// The domain name configuration.
	DomainNameConfiguration DomainNameDomainNameConfigurationOutput `pulumi:"domainNameConfiguration"`
	// The mutual TLS authentication configuration for the domain name.
	MutualTlsAuthentication DomainNameMutualTlsAuthenticationPtrOutput `pulumi:"mutualTlsAuthentication"`
	// A map of tags to assign to the domain name.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages an Amazon API Gateway Version 2 domain name. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html).

> **Note:** This resource establishes ownership of and the TLS settings for a particular domain name. An API stage can be associated with the domain name using the `apigatewayv2.ApiMapping` resource.

## Example Usage ### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewDomainName(ctx, "example", &apigatewayv2.DomainNameArgs{
			DomainName: pulumi.String("ws-api.example.com"),
			DomainNameConfiguration: &apigatewayv2.DomainNameDomainNameConfigurationArgs{
				CertificateArn: pulumi.Any(aws_acm_certificate.Example.Arn),
				EndpointType:   pulumi.String("REGIONAL"),
				SecurityPolicy: pulumi.String("TLS_1_2"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_domain_name` can be imported by using the domain name, e.g.

```sh

$ pulumi import aws:apigatewayv2/domainName:DomainName example ws-api.example.com

```

func GetDomainName

func GetDomainName(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DomainNameState, opts ...pulumi.ResourceOption) (*DomainName, error)

GetDomainName gets an existing DomainName resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDomainName

func NewDomainName(ctx *pulumi.Context,
	name string, args *DomainNameArgs, opts ...pulumi.ResourceOption) (*DomainName, error)

NewDomainName registers a new resource with the given unique name, arguments, and options.

func (*DomainName) ElementType added in v3.13.0

func (*DomainName) ElementType() reflect.Type

func (*DomainName) ToDomainNameOutput added in v3.13.0

func (i *DomainName) ToDomainNameOutput() DomainNameOutput

func (*DomainName) ToDomainNameOutputWithContext added in v3.13.0

func (i *DomainName) ToDomainNameOutputWithContext(ctx context.Context) DomainNameOutput

func (*DomainName) ToDomainNamePtrOutput added in v3.25.0

func (i *DomainName) ToDomainNamePtrOutput() DomainNamePtrOutput

func (*DomainName) ToDomainNamePtrOutputWithContext added in v3.25.0

func (i *DomainName) ToDomainNamePtrOutputWithContext(ctx context.Context) DomainNamePtrOutput

type DomainNameArgs

type DomainNameArgs struct {
	// The domain name. Must be between 1 and 512 characters in length.
	DomainName pulumi.StringInput
	// The domain name configuration.
	DomainNameConfiguration DomainNameDomainNameConfigurationInput
	// The mutual TLS authentication configuration for the domain name.
	MutualTlsAuthentication DomainNameMutualTlsAuthenticationPtrInput
	// A map of tags to assign to the domain name.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a DomainName resource.

func (DomainNameArgs) ElementType

func (DomainNameArgs) ElementType() reflect.Type

type DomainNameArray added in v3.25.0

type DomainNameArray []DomainNameInput

func (DomainNameArray) ElementType added in v3.25.0

func (DomainNameArray) ElementType() reflect.Type

func (DomainNameArray) ToDomainNameArrayOutput added in v3.25.0

func (i DomainNameArray) ToDomainNameArrayOutput() DomainNameArrayOutput

func (DomainNameArray) ToDomainNameArrayOutputWithContext added in v3.25.0

func (i DomainNameArray) ToDomainNameArrayOutputWithContext(ctx context.Context) DomainNameArrayOutput

type DomainNameArrayInput added in v3.25.0

type DomainNameArrayInput interface {
	pulumi.Input

	ToDomainNameArrayOutput() DomainNameArrayOutput
	ToDomainNameArrayOutputWithContext(context.Context) DomainNameArrayOutput
}

DomainNameArrayInput is an input type that accepts DomainNameArray and DomainNameArrayOutput values. You can construct a concrete instance of `DomainNameArrayInput` via:

DomainNameArray{ DomainNameArgs{...} }

type DomainNameArrayOutput added in v3.25.0

type DomainNameArrayOutput struct{ *pulumi.OutputState }

func (DomainNameArrayOutput) ElementType added in v3.25.0

func (DomainNameArrayOutput) ElementType() reflect.Type

func (DomainNameArrayOutput) Index added in v3.25.0

func (DomainNameArrayOutput) ToDomainNameArrayOutput added in v3.25.0

func (o DomainNameArrayOutput) ToDomainNameArrayOutput() DomainNameArrayOutput

func (DomainNameArrayOutput) ToDomainNameArrayOutputWithContext added in v3.25.0

func (o DomainNameArrayOutput) ToDomainNameArrayOutputWithContext(ctx context.Context) DomainNameArrayOutput

type DomainNameDomainNameConfiguration

type DomainNameDomainNameConfiguration struct {
	// The ARN of an AWS-managed certificate that will be used by the endpoint for the domain name. AWS Certificate Manager is the only supported source.
	// Use the `acm.Certificate` resource to configure an ACM certificate.
	CertificateArn string `pulumi:"certificateArn"`
	// The endpoint type. Valid values: `REGIONAL`.
	EndpointType string `pulumi:"endpointType"`
	// The Amazon Route 53 Hosted Zone ID of the endpoint.
	HostedZoneId *string `pulumi:"hostedZoneId"`
	// The Transport Layer Security (TLS) version of the [security policy](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-custom-domain-tls-version.html) for the domain name. Valid values: `TLS_1_2`.
	SecurityPolicy string `pulumi:"securityPolicy"`
	// The target domain name.
	TargetDomainName *string `pulumi:"targetDomainName"`
}

type DomainNameDomainNameConfigurationArgs

type DomainNameDomainNameConfigurationArgs struct {
	// The ARN of an AWS-managed certificate that will be used by the endpoint for the domain name. AWS Certificate Manager is the only supported source.
	// Use the `acm.Certificate` resource to configure an ACM certificate.
	CertificateArn pulumi.StringInput `pulumi:"certificateArn"`
	// The endpoint type. Valid values: `REGIONAL`.
	EndpointType pulumi.StringInput `pulumi:"endpointType"`
	// The Amazon Route 53 Hosted Zone ID of the endpoint.
	HostedZoneId pulumi.StringPtrInput `pulumi:"hostedZoneId"`
	// The Transport Layer Security (TLS) version of the [security policy](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-custom-domain-tls-version.html) for the domain name. Valid values: `TLS_1_2`.
	SecurityPolicy pulumi.StringInput `pulumi:"securityPolicy"`
	// The target domain name.
	TargetDomainName pulumi.StringPtrInput `pulumi:"targetDomainName"`
}

func (DomainNameDomainNameConfigurationArgs) ElementType

func (DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationOutput

func (i DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationOutput() DomainNameDomainNameConfigurationOutput

func (DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationOutputWithContext

func (i DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationOutputWithContext(ctx context.Context) DomainNameDomainNameConfigurationOutput

func (DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationPtrOutput

func (i DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationPtrOutput() DomainNameDomainNameConfigurationPtrOutput

func (DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationPtrOutputWithContext

func (i DomainNameDomainNameConfigurationArgs) ToDomainNameDomainNameConfigurationPtrOutputWithContext(ctx context.Context) DomainNameDomainNameConfigurationPtrOutput

type DomainNameDomainNameConfigurationInput

type DomainNameDomainNameConfigurationInput interface {
	pulumi.Input

	ToDomainNameDomainNameConfigurationOutput() DomainNameDomainNameConfigurationOutput
	ToDomainNameDomainNameConfigurationOutputWithContext(context.Context) DomainNameDomainNameConfigurationOutput
}

DomainNameDomainNameConfigurationInput is an input type that accepts DomainNameDomainNameConfigurationArgs and DomainNameDomainNameConfigurationOutput values. You can construct a concrete instance of `DomainNameDomainNameConfigurationInput` via:

DomainNameDomainNameConfigurationArgs{...}

type DomainNameDomainNameConfigurationOutput

type DomainNameDomainNameConfigurationOutput struct{ *pulumi.OutputState }

func (DomainNameDomainNameConfigurationOutput) CertificateArn

The ARN of an AWS-managed certificate that will be used by the endpoint for the domain name. AWS Certificate Manager is the only supported source. Use the `acm.Certificate` resource to configure an ACM certificate.

func (DomainNameDomainNameConfigurationOutput) ElementType

func (DomainNameDomainNameConfigurationOutput) EndpointType

The endpoint type. Valid values: `REGIONAL`.

func (DomainNameDomainNameConfigurationOutput) HostedZoneId

The Amazon Route 53 Hosted Zone ID of the endpoint.

func (DomainNameDomainNameConfigurationOutput) SecurityPolicy

The Transport Layer Security (TLS) version of the [security policy](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-custom-domain-tls-version.html) for the domain name. Valid values: `TLS_1_2`.

func (DomainNameDomainNameConfigurationOutput) TargetDomainName

The target domain name.

func (DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationOutput

func (o DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationOutput() DomainNameDomainNameConfigurationOutput

func (DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationOutputWithContext

func (o DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationOutputWithContext(ctx context.Context) DomainNameDomainNameConfigurationOutput

func (DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationPtrOutput

func (o DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationPtrOutput() DomainNameDomainNameConfigurationPtrOutput

func (DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationPtrOutputWithContext

func (o DomainNameDomainNameConfigurationOutput) ToDomainNameDomainNameConfigurationPtrOutputWithContext(ctx context.Context) DomainNameDomainNameConfigurationPtrOutput

type DomainNameDomainNameConfigurationPtrInput

type DomainNameDomainNameConfigurationPtrInput interface {
	pulumi.Input

	ToDomainNameDomainNameConfigurationPtrOutput() DomainNameDomainNameConfigurationPtrOutput
	ToDomainNameDomainNameConfigurationPtrOutputWithContext(context.Context) DomainNameDomainNameConfigurationPtrOutput
}

DomainNameDomainNameConfigurationPtrInput is an input type that accepts DomainNameDomainNameConfigurationArgs, DomainNameDomainNameConfigurationPtr and DomainNameDomainNameConfigurationPtrOutput values. You can construct a concrete instance of `DomainNameDomainNameConfigurationPtrInput` via:

        DomainNameDomainNameConfigurationArgs{...}

or:

        nil

type DomainNameDomainNameConfigurationPtrOutput

type DomainNameDomainNameConfigurationPtrOutput struct{ *pulumi.OutputState }

func (DomainNameDomainNameConfigurationPtrOutput) CertificateArn

The ARN of an AWS-managed certificate that will be used by the endpoint for the domain name. AWS Certificate Manager is the only supported source. Use the `acm.Certificate` resource to configure an ACM certificate.

func (DomainNameDomainNameConfigurationPtrOutput) Elem

func (DomainNameDomainNameConfigurationPtrOutput) ElementType

func (DomainNameDomainNameConfigurationPtrOutput) EndpointType

The endpoint type. Valid values: `REGIONAL`.

func (DomainNameDomainNameConfigurationPtrOutput) HostedZoneId

The Amazon Route 53 Hosted Zone ID of the endpoint.

func (DomainNameDomainNameConfigurationPtrOutput) SecurityPolicy

The Transport Layer Security (TLS) version of the [security policy](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-custom-domain-tls-version.html) for the domain name. Valid values: `TLS_1_2`.

func (DomainNameDomainNameConfigurationPtrOutput) TargetDomainName

The target domain name.

func (DomainNameDomainNameConfigurationPtrOutput) ToDomainNameDomainNameConfigurationPtrOutput

func (o DomainNameDomainNameConfigurationPtrOutput) ToDomainNameDomainNameConfigurationPtrOutput() DomainNameDomainNameConfigurationPtrOutput

func (DomainNameDomainNameConfigurationPtrOutput) ToDomainNameDomainNameConfigurationPtrOutputWithContext

func (o DomainNameDomainNameConfigurationPtrOutput) ToDomainNameDomainNameConfigurationPtrOutputWithContext(ctx context.Context) DomainNameDomainNameConfigurationPtrOutput

type DomainNameInput added in v3.13.0

type DomainNameInput interface {
	pulumi.Input

	ToDomainNameOutput() DomainNameOutput
	ToDomainNameOutputWithContext(ctx context.Context) DomainNameOutput
}

type DomainNameMap added in v3.25.0

type DomainNameMap map[string]DomainNameInput

func (DomainNameMap) ElementType added in v3.25.0

func (DomainNameMap) ElementType() reflect.Type

func (DomainNameMap) ToDomainNameMapOutput added in v3.25.0

func (i DomainNameMap) ToDomainNameMapOutput() DomainNameMapOutput

func (DomainNameMap) ToDomainNameMapOutputWithContext added in v3.25.0

func (i DomainNameMap) ToDomainNameMapOutputWithContext(ctx context.Context) DomainNameMapOutput

type DomainNameMapInput added in v3.25.0

type DomainNameMapInput interface {
	pulumi.Input

	ToDomainNameMapOutput() DomainNameMapOutput
	ToDomainNameMapOutputWithContext(context.Context) DomainNameMapOutput
}

DomainNameMapInput is an input type that accepts DomainNameMap and DomainNameMapOutput values. You can construct a concrete instance of `DomainNameMapInput` via:

DomainNameMap{ "key": DomainNameArgs{...} }

type DomainNameMapOutput added in v3.25.0

type DomainNameMapOutput struct{ *pulumi.OutputState }

func (DomainNameMapOutput) ElementType added in v3.25.0

func (DomainNameMapOutput) ElementType() reflect.Type

func (DomainNameMapOutput) MapIndex added in v3.25.0

func (DomainNameMapOutput) ToDomainNameMapOutput added in v3.25.0

func (o DomainNameMapOutput) ToDomainNameMapOutput() DomainNameMapOutput

func (DomainNameMapOutput) ToDomainNameMapOutputWithContext added in v3.25.0

func (o DomainNameMapOutput) ToDomainNameMapOutputWithContext(ctx context.Context) DomainNameMapOutput

type DomainNameMutualTlsAuthentication added in v3.17.0

type DomainNameMutualTlsAuthentication struct {
	// An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, `s3://bucket-name/key-name`.
	// The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version.
	TruststoreUri string `pulumi:"truststoreUri"`
	// The version of the S3 object that contains the truststore. To specify a version, you must have versioning enabled for the S3 bucket.
	TruststoreVersion *string `pulumi:"truststoreVersion"`
}

type DomainNameMutualTlsAuthenticationArgs added in v3.17.0

type DomainNameMutualTlsAuthenticationArgs struct {
	// An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, `s3://bucket-name/key-name`.
	// The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version.
	TruststoreUri pulumi.StringInput `pulumi:"truststoreUri"`
	// The version of the S3 object that contains the truststore. To specify a version, you must have versioning enabled for the S3 bucket.
	TruststoreVersion pulumi.StringPtrInput `pulumi:"truststoreVersion"`
}

func (DomainNameMutualTlsAuthenticationArgs) ElementType added in v3.17.0

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationOutput added in v3.17.0

func (i DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationOutput() DomainNameMutualTlsAuthenticationOutput

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationOutputWithContext added in v3.17.0

func (i DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationOutputWithContext(ctx context.Context) DomainNameMutualTlsAuthenticationOutput

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationPtrOutput added in v3.17.0

func (i DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationPtrOutput() DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext added in v3.17.0

func (i DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext(ctx context.Context) DomainNameMutualTlsAuthenticationPtrOutput

type DomainNameMutualTlsAuthenticationInput added in v3.17.0

type DomainNameMutualTlsAuthenticationInput interface {
	pulumi.Input

	ToDomainNameMutualTlsAuthenticationOutput() DomainNameMutualTlsAuthenticationOutput
	ToDomainNameMutualTlsAuthenticationOutputWithContext(context.Context) DomainNameMutualTlsAuthenticationOutput
}

DomainNameMutualTlsAuthenticationInput is an input type that accepts DomainNameMutualTlsAuthenticationArgs and DomainNameMutualTlsAuthenticationOutput values. You can construct a concrete instance of `DomainNameMutualTlsAuthenticationInput` via:

DomainNameMutualTlsAuthenticationArgs{...}

type DomainNameMutualTlsAuthenticationOutput added in v3.17.0

type DomainNameMutualTlsAuthenticationOutput struct{ *pulumi.OutputState }

func (DomainNameMutualTlsAuthenticationOutput) ElementType added in v3.17.0

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationOutput added in v3.17.0

func (o DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationOutput() DomainNameMutualTlsAuthenticationOutput

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationOutputWithContext added in v3.17.0

func (o DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationOutputWithContext(ctx context.Context) DomainNameMutualTlsAuthenticationOutput

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationPtrOutput added in v3.17.0

func (o DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationPtrOutput() DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext added in v3.17.0

func (o DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext(ctx context.Context) DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationOutput) TruststoreUri added in v3.17.0

An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, `s3://bucket-name/key-name`. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version.

func (DomainNameMutualTlsAuthenticationOutput) TruststoreVersion added in v3.17.0

The version of the S3 object that contains the truststore. To specify a version, you must have versioning enabled for the S3 bucket.

type DomainNameMutualTlsAuthenticationPtrInput added in v3.17.0

type DomainNameMutualTlsAuthenticationPtrInput interface {
	pulumi.Input

	ToDomainNameMutualTlsAuthenticationPtrOutput() DomainNameMutualTlsAuthenticationPtrOutput
	ToDomainNameMutualTlsAuthenticationPtrOutputWithContext(context.Context) DomainNameMutualTlsAuthenticationPtrOutput
}

DomainNameMutualTlsAuthenticationPtrInput is an input type that accepts DomainNameMutualTlsAuthenticationArgs, DomainNameMutualTlsAuthenticationPtr and DomainNameMutualTlsAuthenticationPtrOutput values. You can construct a concrete instance of `DomainNameMutualTlsAuthenticationPtrInput` via:

        DomainNameMutualTlsAuthenticationArgs{...}

or:

        nil

type DomainNameMutualTlsAuthenticationPtrOutput added in v3.17.0

type DomainNameMutualTlsAuthenticationPtrOutput struct{ *pulumi.OutputState }

func (DomainNameMutualTlsAuthenticationPtrOutput) Elem added in v3.17.0

func (DomainNameMutualTlsAuthenticationPtrOutput) ElementType added in v3.17.0

func (DomainNameMutualTlsAuthenticationPtrOutput) ToDomainNameMutualTlsAuthenticationPtrOutput added in v3.17.0

func (o DomainNameMutualTlsAuthenticationPtrOutput) ToDomainNameMutualTlsAuthenticationPtrOutput() DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationPtrOutput) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext added in v3.17.0

func (o DomainNameMutualTlsAuthenticationPtrOutput) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext(ctx context.Context) DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationPtrOutput) TruststoreUri added in v3.17.0

An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, `s3://bucket-name/key-name`. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version.

func (DomainNameMutualTlsAuthenticationPtrOutput) TruststoreVersion added in v3.17.0

The version of the S3 object that contains the truststore. To specify a version, you must have versioning enabled for the S3 bucket.

type DomainNameOutput added in v3.13.0

type DomainNameOutput struct {
	*pulumi.OutputState
}

func (DomainNameOutput) ElementType added in v3.13.0

func (DomainNameOutput) ElementType() reflect.Type

func (DomainNameOutput) ToDomainNameOutput added in v3.13.0

func (o DomainNameOutput) ToDomainNameOutput() DomainNameOutput

func (DomainNameOutput) ToDomainNameOutputWithContext added in v3.13.0

func (o DomainNameOutput) ToDomainNameOutputWithContext(ctx context.Context) DomainNameOutput

func (DomainNameOutput) ToDomainNamePtrOutput added in v3.25.0

func (o DomainNameOutput) ToDomainNamePtrOutput() DomainNamePtrOutput

func (DomainNameOutput) ToDomainNamePtrOutputWithContext added in v3.25.0

func (o DomainNameOutput) ToDomainNamePtrOutputWithContext(ctx context.Context) DomainNamePtrOutput

type DomainNamePtrInput added in v3.25.0

type DomainNamePtrInput interface {
	pulumi.Input

	ToDomainNamePtrOutput() DomainNamePtrOutput
	ToDomainNamePtrOutputWithContext(ctx context.Context) DomainNamePtrOutput
}

type DomainNamePtrOutput added in v3.25.0

type DomainNamePtrOutput struct {
	*pulumi.OutputState
}

func (DomainNamePtrOutput) ElementType added in v3.25.0

func (DomainNamePtrOutput) ElementType() reflect.Type

func (DomainNamePtrOutput) ToDomainNamePtrOutput added in v3.25.0

func (o DomainNamePtrOutput) ToDomainNamePtrOutput() DomainNamePtrOutput

func (DomainNamePtrOutput) ToDomainNamePtrOutputWithContext added in v3.25.0

func (o DomainNamePtrOutput) ToDomainNamePtrOutputWithContext(ctx context.Context) DomainNamePtrOutput

type DomainNameState

type DomainNameState struct {
	// The [API mapping selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-mapping-selection-expressions) for the domain name.
	ApiMappingSelectionExpression pulumi.StringPtrInput
	// The ARN of the domain name.
	Arn pulumi.StringPtrInput
	// The domain name. Must be between 1 and 512 characters in length.
	DomainName pulumi.StringPtrInput
	// The domain name configuration.
	DomainNameConfiguration DomainNameDomainNameConfigurationPtrInput
	// The mutual TLS authentication configuration for the domain name.
	MutualTlsAuthentication DomainNameMutualTlsAuthenticationPtrInput
	// A map of tags to assign to the domain name.
	Tags pulumi.StringMapInput
}

func (DomainNameState) ElementType

func (DomainNameState) ElementType() reflect.Type

type GetApiCorsConfiguration added in v3.31.0

type GetApiCorsConfiguration struct {
	// Whether credentials are included in the CORS request.
	AllowCredentials bool `pulumi:"allowCredentials"`
	// The set of allowed HTTP headers.
	AllowHeaders []string `pulumi:"allowHeaders"`
	// The set of allowed HTTP methods.
	AllowMethods []string `pulumi:"allowMethods"`
	// The set of allowed origins.
	AllowOrigins []string `pulumi:"allowOrigins"`
	// The set of exposed HTTP headers.
	ExposeHeaders []string `pulumi:"exposeHeaders"`
	// The number of seconds that the browser should cache preflight request results.
	MaxAge int `pulumi:"maxAge"`
}

type GetApiCorsConfigurationArgs added in v3.31.0

type GetApiCorsConfigurationArgs struct {
	// Whether credentials are included in the CORS request.
	AllowCredentials pulumi.BoolInput `pulumi:"allowCredentials"`
	// The set of allowed HTTP headers.
	AllowHeaders pulumi.StringArrayInput `pulumi:"allowHeaders"`
	// The set of allowed HTTP methods.
	AllowMethods pulumi.StringArrayInput `pulumi:"allowMethods"`
	// The set of allowed origins.
	AllowOrigins pulumi.StringArrayInput `pulumi:"allowOrigins"`
	// The set of exposed HTTP headers.
	ExposeHeaders pulumi.StringArrayInput `pulumi:"exposeHeaders"`
	// The number of seconds that the browser should cache preflight request results.
	MaxAge pulumi.IntInput `pulumi:"maxAge"`
}

func (GetApiCorsConfigurationArgs) ElementType added in v3.31.0

func (GetApiCorsConfigurationArgs) ToGetApiCorsConfigurationOutput added in v3.31.0

func (i GetApiCorsConfigurationArgs) ToGetApiCorsConfigurationOutput() GetApiCorsConfigurationOutput

func (GetApiCorsConfigurationArgs) ToGetApiCorsConfigurationOutputWithContext added in v3.31.0

func (i GetApiCorsConfigurationArgs) ToGetApiCorsConfigurationOutputWithContext(ctx context.Context) GetApiCorsConfigurationOutput

type GetApiCorsConfigurationArray added in v3.31.0

type GetApiCorsConfigurationArray []GetApiCorsConfigurationInput

func (GetApiCorsConfigurationArray) ElementType added in v3.31.0

func (GetApiCorsConfigurationArray) ToGetApiCorsConfigurationArrayOutput added in v3.31.0

func (i GetApiCorsConfigurationArray) ToGetApiCorsConfigurationArrayOutput() GetApiCorsConfigurationArrayOutput

func (GetApiCorsConfigurationArray) ToGetApiCorsConfigurationArrayOutputWithContext added in v3.31.0

func (i GetApiCorsConfigurationArray) ToGetApiCorsConfigurationArrayOutputWithContext(ctx context.Context) GetApiCorsConfigurationArrayOutput

type GetApiCorsConfigurationArrayInput added in v3.31.0

type GetApiCorsConfigurationArrayInput interface {
	pulumi.Input

	ToGetApiCorsConfigurationArrayOutput() GetApiCorsConfigurationArrayOutput
	ToGetApiCorsConfigurationArrayOutputWithContext(context.Context) GetApiCorsConfigurationArrayOutput
}

GetApiCorsConfigurationArrayInput is an input type that accepts GetApiCorsConfigurationArray and GetApiCorsConfigurationArrayOutput values. You can construct a concrete instance of `GetApiCorsConfigurationArrayInput` via:

GetApiCorsConfigurationArray{ GetApiCorsConfigurationArgs{...} }

type GetApiCorsConfigurationArrayOutput added in v3.31.0

type GetApiCorsConfigurationArrayOutput struct{ *pulumi.OutputState }

func (GetApiCorsConfigurationArrayOutput) ElementType added in v3.31.0

func (GetApiCorsConfigurationArrayOutput) Index added in v3.31.0

func (GetApiCorsConfigurationArrayOutput) ToGetApiCorsConfigurationArrayOutput added in v3.31.0

func (o GetApiCorsConfigurationArrayOutput) ToGetApiCorsConfigurationArrayOutput() GetApiCorsConfigurationArrayOutput

func (GetApiCorsConfigurationArrayOutput) ToGetApiCorsConfigurationArrayOutputWithContext added in v3.31.0

func (o GetApiCorsConfigurationArrayOutput) ToGetApiCorsConfigurationArrayOutputWithContext(ctx context.Context) GetApiCorsConfigurationArrayOutput

type GetApiCorsConfigurationInput added in v3.31.0

type GetApiCorsConfigurationInput interface {
	pulumi.Input

	ToGetApiCorsConfigurationOutput() GetApiCorsConfigurationOutput
	ToGetApiCorsConfigurationOutputWithContext(context.Context) GetApiCorsConfigurationOutput
}

GetApiCorsConfigurationInput is an input type that accepts GetApiCorsConfigurationArgs and GetApiCorsConfigurationOutput values. You can construct a concrete instance of `GetApiCorsConfigurationInput` via:

GetApiCorsConfigurationArgs{...}

type GetApiCorsConfigurationOutput added in v3.31.0

type GetApiCorsConfigurationOutput struct{ *pulumi.OutputState }

func (GetApiCorsConfigurationOutput) AllowCredentials added in v3.31.0

func (o GetApiCorsConfigurationOutput) AllowCredentials() pulumi.BoolOutput

Whether credentials are included in the CORS request.

func (GetApiCorsConfigurationOutput) AllowHeaders added in v3.31.0

The set of allowed HTTP headers.

func (GetApiCorsConfigurationOutput) AllowMethods added in v3.31.0

The set of allowed HTTP methods.

func (GetApiCorsConfigurationOutput) AllowOrigins added in v3.31.0

The set of allowed origins.

func (GetApiCorsConfigurationOutput) ElementType added in v3.31.0

func (GetApiCorsConfigurationOutput) ExposeHeaders added in v3.31.0

The set of exposed HTTP headers.

func (GetApiCorsConfigurationOutput) MaxAge added in v3.31.0

The number of seconds that the browser should cache preflight request results.

func (GetApiCorsConfigurationOutput) ToGetApiCorsConfigurationOutput added in v3.31.0

func (o GetApiCorsConfigurationOutput) ToGetApiCorsConfigurationOutput() GetApiCorsConfigurationOutput

func (GetApiCorsConfigurationOutput) ToGetApiCorsConfigurationOutputWithContext added in v3.31.0

func (o GetApiCorsConfigurationOutput) ToGetApiCorsConfigurationOutputWithContext(ctx context.Context) GetApiCorsConfigurationOutput

type GetApisArgs added in v3.31.0

type GetApisArgs struct {
	// The API name.
	Name *string `pulumi:"name"`
	// The API protocol.
	ProtocolType *string `pulumi:"protocolType"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired APIs.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getApis.

type GetApisResult added in v3.31.0

type GetApisResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of API identifiers.
	Ids          []string          `pulumi:"ids"`
	Name         *string           `pulumi:"name"`
	ProtocolType *string           `pulumi:"protocolType"`
	Tags         map[string]string `pulumi:"tags"`
}

A collection of values returned by getApis.

func GetApis added in v3.31.0

func GetApis(ctx *pulumi.Context, args *GetApisArgs, opts ...pulumi.InvokeOption) (*GetApisResult, error)

Provides details about multiple Amazon API Gateway Version 2 APIs.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "HTTP"
		_, err := apigatewayv2.GetApis(ctx, &apigatewayv2.GetApisArgs{
			ProtocolType: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type Integration

type Integration struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// The ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
	ConnectionId pulumi.StringPtrOutput `pulumi:"connectionId"`
	// The type of the network connection to the integration endpoint. Valid values: `INTERNET`, `VPC_LINK`. Default is `INTERNET`.
	ConnectionType pulumi.StringPtrOutput `pulumi:"connectionType"`
	// How to handle response payload content type conversions. Valid values: `CONVERT_TO_BINARY`, `CONVERT_TO_TEXT`. Supported only for WebSocket APIs.
	ContentHandlingStrategy pulumi.StringPtrOutput `pulumi:"contentHandlingStrategy"`
	// The credentials required for the integration, if any.
	CredentialsArn pulumi.StringPtrOutput `pulumi:"credentialsArn"`
	// The description of the integration.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The integration's HTTP method. Must be specified if `integrationType` is not `MOCK`.
	IntegrationMethod pulumi.StringPtrOutput `pulumi:"integrationMethod"`
	// The [integration response selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-integration-response-selection-expressions) for the integration.
	IntegrationResponseSelectionExpression pulumi.StringOutput `pulumi:"integrationResponseSelectionExpression"`
	// Specifies the AWS service action to invoke. Supported only for HTTP APIs when `integrationType` is `AWS_PROXY`. See the [AWS service integration reference](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html) documentation for supported values. Must be between 1 and 128 characters in length.
	IntegrationSubtype pulumi.StringPtrOutput `pulumi:"integrationSubtype"`
	// The integration type of an integration.
	// Valid values: `AWS` (supported only for WebSocket APIs), `AWS_PROXY`, `HTTP` (supported only for WebSocket APIs), `HTTP_PROXY`, `MOCK` (supported only for WebSocket APIs). For an HTTP API private integration, use `HTTP_PROXY`.
	IntegrationType pulumi.StringOutput `pulumi:"integrationType"`
	// The URI of the Lambda function for a Lambda proxy integration, when `integrationType` is `AWS_PROXY`.
	// For an `HTTP` integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
	IntegrationUri pulumi.StringPtrOutput `pulumi:"integrationUri"`
	// The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the `requestTemplates` attribute.
	// Valid values: `WHEN_NO_MATCH`, `WHEN_NO_TEMPLATES`, `NEVER`. Default is `WHEN_NO_MATCH`. Supported only for WebSocket APIs.
	PassthroughBehavior pulumi.StringPtrOutput `pulumi:"passthroughBehavior"`
	// The [format of the payload](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html#http-api-develop-integrations-lambda.proxy-format) sent to an integration. Valid values: `1.0`, `2.0`. Default is `1.0`.
	PayloadFormatVersion pulumi.StringPtrOutput `pulumi:"payloadFormatVersion"`
	// For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend.
	// For HTTP APIs with a specified `integrationSubtype`, a key-value map specifying parameters that are passed to `AWS_PROXY` integrations.
	// For HTTP APIs without a specified `integrationSubtype`, a key-value map specifying how to transform HTTP requests before sending them to the backend.
	// See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html) for details.
	RequestParameters pulumi.StringMapOutput `pulumi:"requestParameters"`
	// A map of [Velocity](https://velocity.apache.org/) templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
	RequestTemplates pulumi.StringMapOutput `pulumi:"requestTemplates"`
	// Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
	ResponseParameters IntegrationResponseParameterArrayOutput `pulumi:"responseParameters"`
	// The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration.
	TemplateSelectionExpression pulumi.StringPtrOutput `pulumi:"templateSelectionExpression"`
	// Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs.
	// The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.
	// this provider will only perform drift detection of its value when present in a configuration.
	TimeoutMilliseconds pulumi.IntOutput `pulumi:"timeoutMilliseconds"`
	// The TLS configuration for a private integration. Supported only for HTTP APIs.
	TlsConfig IntegrationTlsConfigPtrOutput `pulumi:"tlsConfig"`
}

Manages an Amazon API Gateway Version 2 integration. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html).

## Example Usage ### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewIntegration(ctx, "example", &apigatewayv2.IntegrationArgs{
			ApiId:           pulumi.Any(aws_apigatewayv2_api.Example.Id),
			IntegrationType: pulumi.String("MOCK"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### AWS Service Integration

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewIntegration(ctx, "example", &apigatewayv2.IntegrationArgs{
			ApiId:              pulumi.Any(aws_apigatewayv2_api.Example.Id),
			CredentialsArn:     pulumi.Any(aws_iam_role.Example.Arn),
			Description:        pulumi.String("SQS example"),
			IntegrationType:    pulumi.String("AWS_PROXY"),
			IntegrationSubtype: pulumi.String("SQS-SendMessage"),
			RequestParameters: pulumi.StringMap{
				"QueueUrl":    pulumi.String(fmt.Sprintf("%v%v", "$", "request.header.queueUrl")),
				"MessageBody": pulumi.String(fmt.Sprintf("%v%v", "$", "request.body.message")),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Private Integration

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewIntegration(ctx, "example", &apigatewayv2.IntegrationArgs{
			ApiId:             pulumi.Any(aws_apigatewayv2_api.Example.Id),
			CredentialsArn:    pulumi.Any(aws_iam_role.Example.Arn),
			Description:       pulumi.String("Example with a load balancer"),
			IntegrationType:   pulumi.String("HTTP_PROXY"),
			IntegrationUri:    pulumi.Any(aws_lb_listener.Example.Arn),
			IntegrationMethod: pulumi.String("ANY"),
			ConnectionType:    pulumi.String("VPC_LINK"),
			ConnectionId:      pulumi.Any(aws_apigatewayv2_vpc_link.Example.Id),
			TlsConfig: &apigatewayv2.IntegrationTlsConfigArgs{
				ServerNameToVerify: pulumi.String("example.com"),
			},
			RequestParameters: pulumi.StringMap{
				"append:header.authforintegration": pulumi.String(fmt.Sprintf("%v%v", "$", "context.authorizer.authorizerResponse")),
				"overwrite:path":                   pulumi.String("staticValueForIntegration"),
			},
			ResponseParameters: apigatewayv2.IntegrationResponseParameterArray{
				&apigatewayv2.IntegrationResponseParameterArgs{
					StatusCode: pulumi.String("403"),
					Mappings: pulumi.StringMap{
						"append:header.auth": pulumi.String(fmt.Sprintf("%v%v", "$", "context.authorizer.authorizerResponse")),
					},
				},
				&apigatewayv2.IntegrationResponseParameterArgs{
					StatusCode: pulumi.String("200"),
					Mappings: pulumi.StringMap{
						"overwrite:statuscode": pulumi.String("204"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_integration` can be imported by using the API identifier and integration identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/integration:Integration example aabbccddee/1122334

```

func GetIntegration

func GetIntegration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IntegrationState, opts ...pulumi.ResourceOption) (*Integration, error)

GetIntegration gets an existing Integration resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewIntegration

func NewIntegration(ctx *pulumi.Context,
	name string, args *IntegrationArgs, opts ...pulumi.ResourceOption) (*Integration, error)

NewIntegration registers a new resource with the given unique name, arguments, and options.

func (*Integration) ElementType added in v3.13.0

func (*Integration) ElementType() reflect.Type

func (*Integration) ToIntegrationOutput added in v3.13.0

func (i *Integration) ToIntegrationOutput() IntegrationOutput

func (*Integration) ToIntegrationOutputWithContext added in v3.13.0

func (i *Integration) ToIntegrationOutputWithContext(ctx context.Context) IntegrationOutput

func (*Integration) ToIntegrationPtrOutput added in v3.25.0

func (i *Integration) ToIntegrationPtrOutput() IntegrationPtrOutput

func (*Integration) ToIntegrationPtrOutputWithContext added in v3.25.0

func (i *Integration) ToIntegrationPtrOutputWithContext(ctx context.Context) IntegrationPtrOutput

type IntegrationArgs

type IntegrationArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// The ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
	ConnectionId pulumi.StringPtrInput
	// The type of the network connection to the integration endpoint. Valid values: `INTERNET`, `VPC_LINK`. Default is `INTERNET`.
	ConnectionType pulumi.StringPtrInput
	// How to handle response payload content type conversions. Valid values: `CONVERT_TO_BINARY`, `CONVERT_TO_TEXT`. Supported only for WebSocket APIs.
	ContentHandlingStrategy pulumi.StringPtrInput
	// The credentials required for the integration, if any.
	CredentialsArn pulumi.StringPtrInput
	// The description of the integration.
	Description pulumi.StringPtrInput
	// The integration's HTTP method. Must be specified if `integrationType` is not `MOCK`.
	IntegrationMethod pulumi.StringPtrInput
	// Specifies the AWS service action to invoke. Supported only for HTTP APIs when `integrationType` is `AWS_PROXY`. See the [AWS service integration reference](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html) documentation for supported values. Must be between 1 and 128 characters in length.
	IntegrationSubtype pulumi.StringPtrInput
	// The integration type of an integration.
	// Valid values: `AWS` (supported only for WebSocket APIs), `AWS_PROXY`, `HTTP` (supported only for WebSocket APIs), `HTTP_PROXY`, `MOCK` (supported only for WebSocket APIs). For an HTTP API private integration, use `HTTP_PROXY`.
	IntegrationType pulumi.StringInput
	// The URI of the Lambda function for a Lambda proxy integration, when `integrationType` is `AWS_PROXY`.
	// For an `HTTP` integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
	IntegrationUri pulumi.StringPtrInput
	// The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the `requestTemplates` attribute.
	// Valid values: `WHEN_NO_MATCH`, `WHEN_NO_TEMPLATES`, `NEVER`. Default is `WHEN_NO_MATCH`. Supported only for WebSocket APIs.
	PassthroughBehavior pulumi.StringPtrInput
	// The [format of the payload](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html#http-api-develop-integrations-lambda.proxy-format) sent to an integration. Valid values: `1.0`, `2.0`. Default is `1.0`.
	PayloadFormatVersion pulumi.StringPtrInput
	// For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend.
	// For HTTP APIs with a specified `integrationSubtype`, a key-value map specifying parameters that are passed to `AWS_PROXY` integrations.
	// For HTTP APIs without a specified `integrationSubtype`, a key-value map specifying how to transform HTTP requests before sending them to the backend.
	// See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html) for details.
	RequestParameters pulumi.StringMapInput
	// A map of [Velocity](https://velocity.apache.org/) templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
	RequestTemplates pulumi.StringMapInput
	// Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
	ResponseParameters IntegrationResponseParameterArrayInput
	// The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration.
	TemplateSelectionExpression pulumi.StringPtrInput
	// Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs.
	// The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.
	// this provider will only perform drift detection of its value when present in a configuration.
	TimeoutMilliseconds pulumi.IntPtrInput
	// The TLS configuration for a private integration. Supported only for HTTP APIs.
	TlsConfig IntegrationTlsConfigPtrInput
}

The set of arguments for constructing a Integration resource.

func (IntegrationArgs) ElementType

func (IntegrationArgs) ElementType() reflect.Type

type IntegrationArray added in v3.25.0

type IntegrationArray []IntegrationInput

func (IntegrationArray) ElementType added in v3.25.0

func (IntegrationArray) ElementType() reflect.Type

func (IntegrationArray) ToIntegrationArrayOutput added in v3.25.0

func (i IntegrationArray) ToIntegrationArrayOutput() IntegrationArrayOutput

func (IntegrationArray) ToIntegrationArrayOutputWithContext added in v3.25.0

func (i IntegrationArray) ToIntegrationArrayOutputWithContext(ctx context.Context) IntegrationArrayOutput

type IntegrationArrayInput added in v3.25.0

type IntegrationArrayInput interface {
	pulumi.Input

	ToIntegrationArrayOutput() IntegrationArrayOutput
	ToIntegrationArrayOutputWithContext(context.Context) IntegrationArrayOutput
}

IntegrationArrayInput is an input type that accepts IntegrationArray and IntegrationArrayOutput values. You can construct a concrete instance of `IntegrationArrayInput` via:

IntegrationArray{ IntegrationArgs{...} }

type IntegrationArrayOutput added in v3.25.0

type IntegrationArrayOutput struct{ *pulumi.OutputState }

func (IntegrationArrayOutput) ElementType added in v3.25.0

func (IntegrationArrayOutput) ElementType() reflect.Type

func (IntegrationArrayOutput) Index added in v3.25.0

func (IntegrationArrayOutput) ToIntegrationArrayOutput added in v3.25.0

func (o IntegrationArrayOutput) ToIntegrationArrayOutput() IntegrationArrayOutput

func (IntegrationArrayOutput) ToIntegrationArrayOutputWithContext added in v3.25.0

func (o IntegrationArrayOutput) ToIntegrationArrayOutputWithContext(ctx context.Context) IntegrationArrayOutput

type IntegrationInput added in v3.13.0

type IntegrationInput interface {
	pulumi.Input

	ToIntegrationOutput() IntegrationOutput
	ToIntegrationOutputWithContext(ctx context.Context) IntegrationOutput
}

type IntegrationMap added in v3.25.0

type IntegrationMap map[string]IntegrationInput

func (IntegrationMap) ElementType added in v3.25.0

func (IntegrationMap) ElementType() reflect.Type

func (IntegrationMap) ToIntegrationMapOutput added in v3.25.0

func (i IntegrationMap) ToIntegrationMapOutput() IntegrationMapOutput

func (IntegrationMap) ToIntegrationMapOutputWithContext added in v3.25.0

func (i IntegrationMap) ToIntegrationMapOutputWithContext(ctx context.Context) IntegrationMapOutput

type IntegrationMapInput added in v3.25.0

type IntegrationMapInput interface {
	pulumi.Input

	ToIntegrationMapOutput() IntegrationMapOutput
	ToIntegrationMapOutputWithContext(context.Context) IntegrationMapOutput
}

IntegrationMapInput is an input type that accepts IntegrationMap and IntegrationMapOutput values. You can construct a concrete instance of `IntegrationMapInput` via:

IntegrationMap{ "key": IntegrationArgs{...} }

type IntegrationMapOutput added in v3.25.0

type IntegrationMapOutput struct{ *pulumi.OutputState }

func (IntegrationMapOutput) ElementType added in v3.25.0

func (IntegrationMapOutput) ElementType() reflect.Type

func (IntegrationMapOutput) MapIndex added in v3.25.0

func (IntegrationMapOutput) ToIntegrationMapOutput added in v3.25.0

func (o IntegrationMapOutput) ToIntegrationMapOutput() IntegrationMapOutput

func (IntegrationMapOutput) ToIntegrationMapOutputWithContext added in v3.25.0

func (o IntegrationMapOutput) ToIntegrationMapOutputWithContext(ctx context.Context) IntegrationMapOutput

type IntegrationOutput added in v3.13.0

type IntegrationOutput struct {
	*pulumi.OutputState
}

func (IntegrationOutput) ElementType added in v3.13.0

func (IntegrationOutput) ElementType() reflect.Type

func (IntegrationOutput) ToIntegrationOutput added in v3.13.0

func (o IntegrationOutput) ToIntegrationOutput() IntegrationOutput

func (IntegrationOutput) ToIntegrationOutputWithContext added in v3.13.0

func (o IntegrationOutput) ToIntegrationOutputWithContext(ctx context.Context) IntegrationOutput

func (IntegrationOutput) ToIntegrationPtrOutput added in v3.25.0

func (o IntegrationOutput) ToIntegrationPtrOutput() IntegrationPtrOutput

func (IntegrationOutput) ToIntegrationPtrOutputWithContext added in v3.25.0

func (o IntegrationOutput) ToIntegrationPtrOutputWithContext(ctx context.Context) IntegrationPtrOutput

type IntegrationPtrInput added in v3.25.0

type IntegrationPtrInput interface {
	pulumi.Input

	ToIntegrationPtrOutput() IntegrationPtrOutput
	ToIntegrationPtrOutputWithContext(ctx context.Context) IntegrationPtrOutput
}

type IntegrationPtrOutput added in v3.25.0

type IntegrationPtrOutput struct {
	*pulumi.OutputState
}

func (IntegrationPtrOutput) ElementType added in v3.25.0

func (IntegrationPtrOutput) ElementType() reflect.Type

func (IntegrationPtrOutput) ToIntegrationPtrOutput added in v3.25.0

func (o IntegrationPtrOutput) ToIntegrationPtrOutput() IntegrationPtrOutput

func (IntegrationPtrOutput) ToIntegrationPtrOutputWithContext added in v3.25.0

func (o IntegrationPtrOutput) ToIntegrationPtrOutputWithContext(ctx context.Context) IntegrationPtrOutput

type IntegrationResponse

type IntegrationResponse struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// How to handle response payload content type conversions. Valid values: `CONVERT_TO_BINARY`, `CONVERT_TO_TEXT`.
	ContentHandlingStrategy pulumi.StringPtrOutput `pulumi:"contentHandlingStrategy"`
	// The identifier of the `apigatewayv2.Integration`.
	IntegrationId pulumi.StringOutput `pulumi:"integrationId"`
	// The integration response key.
	IntegrationResponseKey pulumi.StringOutput `pulumi:"integrationResponseKey"`
	// A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
	ResponseTemplates pulumi.StringMapOutput `pulumi:"responseTemplates"`
	// The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration response.
	TemplateSelectionExpression pulumi.StringPtrOutput `pulumi:"templateSelectionExpression"`
}

Manages an Amazon API Gateway Version 2 integration response. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html).

## Example Usage ### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewIntegrationResponse(ctx, "example", &apigatewayv2.IntegrationResponseArgs{
			ApiId:                  pulumi.Any(aws_apigatewayv2_api.Example.Id),
			IntegrationId:          pulumi.Any(aws_apigatewayv2_integration.Example.Id),
			IntegrationResponseKey: pulumi.String("/200/"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_integration_response` can be imported by using the API identifier, integration identifier and integration response identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/integrationResponse:IntegrationResponse example aabbccddee/1122334/998877

```

func GetIntegrationResponse

func GetIntegrationResponse(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IntegrationResponseState, opts ...pulumi.ResourceOption) (*IntegrationResponse, error)

GetIntegrationResponse gets an existing IntegrationResponse resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewIntegrationResponse

func NewIntegrationResponse(ctx *pulumi.Context,
	name string, args *IntegrationResponseArgs, opts ...pulumi.ResourceOption) (*IntegrationResponse, error)

NewIntegrationResponse registers a new resource with the given unique name, arguments, and options.

func (*IntegrationResponse) ElementType added in v3.13.0

func (*IntegrationResponse) ElementType() reflect.Type

func (*IntegrationResponse) ToIntegrationResponseOutput added in v3.13.0

func (i *IntegrationResponse) ToIntegrationResponseOutput() IntegrationResponseOutput

func (*IntegrationResponse) ToIntegrationResponseOutputWithContext added in v3.13.0

func (i *IntegrationResponse) ToIntegrationResponseOutputWithContext(ctx context.Context) IntegrationResponseOutput

func (*IntegrationResponse) ToIntegrationResponsePtrOutput added in v3.25.0

func (i *IntegrationResponse) ToIntegrationResponsePtrOutput() IntegrationResponsePtrOutput

func (*IntegrationResponse) ToIntegrationResponsePtrOutputWithContext added in v3.25.0

func (i *IntegrationResponse) ToIntegrationResponsePtrOutputWithContext(ctx context.Context) IntegrationResponsePtrOutput

type IntegrationResponseArgs

type IntegrationResponseArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// How to handle response payload content type conversions. Valid values: `CONVERT_TO_BINARY`, `CONVERT_TO_TEXT`.
	ContentHandlingStrategy pulumi.StringPtrInput
	// The identifier of the `apigatewayv2.Integration`.
	IntegrationId pulumi.StringInput
	// The integration response key.
	IntegrationResponseKey pulumi.StringInput
	// A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
	ResponseTemplates pulumi.StringMapInput
	// The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration response.
	TemplateSelectionExpression pulumi.StringPtrInput
}

The set of arguments for constructing a IntegrationResponse resource.

func (IntegrationResponseArgs) ElementType

func (IntegrationResponseArgs) ElementType() reflect.Type

type IntegrationResponseArray added in v3.25.0

type IntegrationResponseArray []IntegrationResponseInput

func (IntegrationResponseArray) ElementType added in v3.25.0

func (IntegrationResponseArray) ElementType() reflect.Type

func (IntegrationResponseArray) ToIntegrationResponseArrayOutput added in v3.25.0

func (i IntegrationResponseArray) ToIntegrationResponseArrayOutput() IntegrationResponseArrayOutput

func (IntegrationResponseArray) ToIntegrationResponseArrayOutputWithContext added in v3.25.0

func (i IntegrationResponseArray) ToIntegrationResponseArrayOutputWithContext(ctx context.Context) IntegrationResponseArrayOutput

type IntegrationResponseArrayInput added in v3.25.0

type IntegrationResponseArrayInput interface {
	pulumi.Input

	ToIntegrationResponseArrayOutput() IntegrationResponseArrayOutput
	ToIntegrationResponseArrayOutputWithContext(context.Context) IntegrationResponseArrayOutput
}

IntegrationResponseArrayInput is an input type that accepts IntegrationResponseArray and IntegrationResponseArrayOutput values. You can construct a concrete instance of `IntegrationResponseArrayInput` via:

IntegrationResponseArray{ IntegrationResponseArgs{...} }

type IntegrationResponseArrayOutput added in v3.25.0

type IntegrationResponseArrayOutput struct{ *pulumi.OutputState }

func (IntegrationResponseArrayOutput) ElementType added in v3.25.0

func (IntegrationResponseArrayOutput) Index added in v3.25.0

func (IntegrationResponseArrayOutput) ToIntegrationResponseArrayOutput added in v3.25.0

func (o IntegrationResponseArrayOutput) ToIntegrationResponseArrayOutput() IntegrationResponseArrayOutput

func (IntegrationResponseArrayOutput) ToIntegrationResponseArrayOutputWithContext added in v3.25.0

func (o IntegrationResponseArrayOutput) ToIntegrationResponseArrayOutputWithContext(ctx context.Context) IntegrationResponseArrayOutput

type IntegrationResponseInput added in v3.13.0

type IntegrationResponseInput interface {
	pulumi.Input

	ToIntegrationResponseOutput() IntegrationResponseOutput
	ToIntegrationResponseOutputWithContext(ctx context.Context) IntegrationResponseOutput
}

type IntegrationResponseMap added in v3.25.0

type IntegrationResponseMap map[string]IntegrationResponseInput

func (IntegrationResponseMap) ElementType added in v3.25.0

func (IntegrationResponseMap) ElementType() reflect.Type

func (IntegrationResponseMap) ToIntegrationResponseMapOutput added in v3.25.0

func (i IntegrationResponseMap) ToIntegrationResponseMapOutput() IntegrationResponseMapOutput

func (IntegrationResponseMap) ToIntegrationResponseMapOutputWithContext added in v3.25.0

func (i IntegrationResponseMap) ToIntegrationResponseMapOutputWithContext(ctx context.Context) IntegrationResponseMapOutput

type IntegrationResponseMapInput added in v3.25.0

type IntegrationResponseMapInput interface {
	pulumi.Input

	ToIntegrationResponseMapOutput() IntegrationResponseMapOutput
	ToIntegrationResponseMapOutputWithContext(context.Context) IntegrationResponseMapOutput
}

IntegrationResponseMapInput is an input type that accepts IntegrationResponseMap and IntegrationResponseMapOutput values. You can construct a concrete instance of `IntegrationResponseMapInput` via:

IntegrationResponseMap{ "key": IntegrationResponseArgs{...} }

type IntegrationResponseMapOutput added in v3.25.0

type IntegrationResponseMapOutput struct{ *pulumi.OutputState }

func (IntegrationResponseMapOutput) ElementType added in v3.25.0

func (IntegrationResponseMapOutput) MapIndex added in v3.25.0

func (IntegrationResponseMapOutput) ToIntegrationResponseMapOutput added in v3.25.0

func (o IntegrationResponseMapOutput) ToIntegrationResponseMapOutput() IntegrationResponseMapOutput

func (IntegrationResponseMapOutput) ToIntegrationResponseMapOutputWithContext added in v3.25.0

func (o IntegrationResponseMapOutput) ToIntegrationResponseMapOutputWithContext(ctx context.Context) IntegrationResponseMapOutput

type IntegrationResponseOutput added in v3.13.0

type IntegrationResponseOutput struct {
	*pulumi.OutputState
}

func (IntegrationResponseOutput) ElementType added in v3.13.0

func (IntegrationResponseOutput) ElementType() reflect.Type

func (IntegrationResponseOutput) ToIntegrationResponseOutput added in v3.13.0

func (o IntegrationResponseOutput) ToIntegrationResponseOutput() IntegrationResponseOutput

func (IntegrationResponseOutput) ToIntegrationResponseOutputWithContext added in v3.13.0

func (o IntegrationResponseOutput) ToIntegrationResponseOutputWithContext(ctx context.Context) IntegrationResponseOutput

func (IntegrationResponseOutput) ToIntegrationResponsePtrOutput added in v3.25.0

func (o IntegrationResponseOutput) ToIntegrationResponsePtrOutput() IntegrationResponsePtrOutput

func (IntegrationResponseOutput) ToIntegrationResponsePtrOutputWithContext added in v3.25.0

func (o IntegrationResponseOutput) ToIntegrationResponsePtrOutputWithContext(ctx context.Context) IntegrationResponsePtrOutput

type IntegrationResponseParameter added in v3.24.0

type IntegrationResponseParameter struct {
	// A key-value map. The key of ths map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter.
	// See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html) for details.
	Mappings map[string]string `pulumi:"mappings"`
	// The HTTP status code in the range 200-599.
	StatusCode string `pulumi:"statusCode"`
}

type IntegrationResponseParameterArgs added in v3.24.0

type IntegrationResponseParameterArgs struct {
	// A key-value map. The key of ths map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter.
	// See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html) for details.
	Mappings pulumi.StringMapInput `pulumi:"mappings"`
	// The HTTP status code in the range 200-599.
	StatusCode pulumi.StringInput `pulumi:"statusCode"`
}

func (IntegrationResponseParameterArgs) ElementType added in v3.24.0

func (IntegrationResponseParameterArgs) ToIntegrationResponseParameterOutput added in v3.24.0

func (i IntegrationResponseParameterArgs) ToIntegrationResponseParameterOutput() IntegrationResponseParameterOutput

func (IntegrationResponseParameterArgs) ToIntegrationResponseParameterOutputWithContext added in v3.24.0

func (i IntegrationResponseParameterArgs) ToIntegrationResponseParameterOutputWithContext(ctx context.Context) IntegrationResponseParameterOutput

type IntegrationResponseParameterArray added in v3.24.0

type IntegrationResponseParameterArray []IntegrationResponseParameterInput

func (IntegrationResponseParameterArray) ElementType added in v3.24.0

func (IntegrationResponseParameterArray) ToIntegrationResponseParameterArrayOutput added in v3.24.0

func (i IntegrationResponseParameterArray) ToIntegrationResponseParameterArrayOutput() IntegrationResponseParameterArrayOutput

func (IntegrationResponseParameterArray) ToIntegrationResponseParameterArrayOutputWithContext added in v3.24.0

func (i IntegrationResponseParameterArray) ToIntegrationResponseParameterArrayOutputWithContext(ctx context.Context) IntegrationResponseParameterArrayOutput

type IntegrationResponseParameterArrayInput added in v3.24.0

type IntegrationResponseParameterArrayInput interface {
	pulumi.Input

	ToIntegrationResponseParameterArrayOutput() IntegrationResponseParameterArrayOutput
	ToIntegrationResponseParameterArrayOutputWithContext(context.Context) IntegrationResponseParameterArrayOutput
}

IntegrationResponseParameterArrayInput is an input type that accepts IntegrationResponseParameterArray and IntegrationResponseParameterArrayOutput values. You can construct a concrete instance of `IntegrationResponseParameterArrayInput` via:

IntegrationResponseParameterArray{ IntegrationResponseParameterArgs{...} }

type IntegrationResponseParameterArrayOutput added in v3.24.0

type IntegrationResponseParameterArrayOutput struct{ *pulumi.OutputState }

func (IntegrationResponseParameterArrayOutput) ElementType added in v3.24.0

func (IntegrationResponseParameterArrayOutput) Index added in v3.24.0

func (IntegrationResponseParameterArrayOutput) ToIntegrationResponseParameterArrayOutput added in v3.24.0

func (o IntegrationResponseParameterArrayOutput) ToIntegrationResponseParameterArrayOutput() IntegrationResponseParameterArrayOutput

func (IntegrationResponseParameterArrayOutput) ToIntegrationResponseParameterArrayOutputWithContext added in v3.24.0

func (o IntegrationResponseParameterArrayOutput) ToIntegrationResponseParameterArrayOutputWithContext(ctx context.Context) IntegrationResponseParameterArrayOutput

type IntegrationResponseParameterInput added in v3.24.0

type IntegrationResponseParameterInput interface {
	pulumi.Input

	ToIntegrationResponseParameterOutput() IntegrationResponseParameterOutput
	ToIntegrationResponseParameterOutputWithContext(context.Context) IntegrationResponseParameterOutput
}

IntegrationResponseParameterInput is an input type that accepts IntegrationResponseParameterArgs and IntegrationResponseParameterOutput values. You can construct a concrete instance of `IntegrationResponseParameterInput` via:

IntegrationResponseParameterArgs{...}

type IntegrationResponseParameterOutput added in v3.24.0

type IntegrationResponseParameterOutput struct{ *pulumi.OutputState }

func (IntegrationResponseParameterOutput) ElementType added in v3.24.0

func (IntegrationResponseParameterOutput) Mappings added in v3.24.0

A key-value map. The key of ths map identifies the location of the request parameter to change, and how to change it. The corresponding value specifies the new data for the parameter. See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html) for details.

func (IntegrationResponseParameterOutput) StatusCode added in v3.24.0

The HTTP status code in the range 200-599.

func (IntegrationResponseParameterOutput) ToIntegrationResponseParameterOutput added in v3.24.0

func (o IntegrationResponseParameterOutput) ToIntegrationResponseParameterOutput() IntegrationResponseParameterOutput

func (IntegrationResponseParameterOutput) ToIntegrationResponseParameterOutputWithContext added in v3.24.0

func (o IntegrationResponseParameterOutput) ToIntegrationResponseParameterOutputWithContext(ctx context.Context) IntegrationResponseParameterOutput

type IntegrationResponsePtrInput added in v3.25.0

type IntegrationResponsePtrInput interface {
	pulumi.Input

	ToIntegrationResponsePtrOutput() IntegrationResponsePtrOutput
	ToIntegrationResponsePtrOutputWithContext(ctx context.Context) IntegrationResponsePtrOutput
}

type IntegrationResponsePtrOutput added in v3.25.0

type IntegrationResponsePtrOutput struct {
	*pulumi.OutputState
}

func (IntegrationResponsePtrOutput) ElementType added in v3.25.0

func (IntegrationResponsePtrOutput) ToIntegrationResponsePtrOutput added in v3.25.0

func (o IntegrationResponsePtrOutput) ToIntegrationResponsePtrOutput() IntegrationResponsePtrOutput

func (IntegrationResponsePtrOutput) ToIntegrationResponsePtrOutputWithContext added in v3.25.0

func (o IntegrationResponsePtrOutput) ToIntegrationResponsePtrOutputWithContext(ctx context.Context) IntegrationResponsePtrOutput

type IntegrationResponseState

type IntegrationResponseState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// How to handle response payload content type conversions. Valid values: `CONVERT_TO_BINARY`, `CONVERT_TO_TEXT`.
	ContentHandlingStrategy pulumi.StringPtrInput
	// The identifier of the `apigatewayv2.Integration`.
	IntegrationId pulumi.StringPtrInput
	// The integration response key.
	IntegrationResponseKey pulumi.StringPtrInput
	// A map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client.
	ResponseTemplates pulumi.StringMapInput
	// The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration response.
	TemplateSelectionExpression pulumi.StringPtrInput
}

func (IntegrationResponseState) ElementType

func (IntegrationResponseState) ElementType() reflect.Type

type IntegrationState

type IntegrationState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// The ID of the VPC link for a private integration. Supported only for HTTP APIs. Must be between 1 and 1024 characters in length.
	ConnectionId pulumi.StringPtrInput
	// The type of the network connection to the integration endpoint. Valid values: `INTERNET`, `VPC_LINK`. Default is `INTERNET`.
	ConnectionType pulumi.StringPtrInput
	// How to handle response payload content type conversions. Valid values: `CONVERT_TO_BINARY`, `CONVERT_TO_TEXT`. Supported only for WebSocket APIs.
	ContentHandlingStrategy pulumi.StringPtrInput
	// The credentials required for the integration, if any.
	CredentialsArn pulumi.StringPtrInput
	// The description of the integration.
	Description pulumi.StringPtrInput
	// The integration's HTTP method. Must be specified if `integrationType` is not `MOCK`.
	IntegrationMethod pulumi.StringPtrInput
	// The [integration response selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-integration-response-selection-expressions) for the integration.
	IntegrationResponseSelectionExpression pulumi.StringPtrInput
	// Specifies the AWS service action to invoke. Supported only for HTTP APIs when `integrationType` is `AWS_PROXY`. See the [AWS service integration reference](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html) documentation for supported values. Must be between 1 and 128 characters in length.
	IntegrationSubtype pulumi.StringPtrInput
	// The integration type of an integration.
	// Valid values: `AWS` (supported only for WebSocket APIs), `AWS_PROXY`, `HTTP` (supported only for WebSocket APIs), `HTTP_PROXY`, `MOCK` (supported only for WebSocket APIs). For an HTTP API private integration, use `HTTP_PROXY`.
	IntegrationType pulumi.StringPtrInput
	// The URI of the Lambda function for a Lambda proxy integration, when `integrationType` is `AWS_PROXY`.
	// For an `HTTP` integration, specify a fully-qualified URL. For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service.
	IntegrationUri pulumi.StringPtrInput
	// The pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the `requestTemplates` attribute.
	// Valid values: `WHEN_NO_MATCH`, `WHEN_NO_TEMPLATES`, `NEVER`. Default is `WHEN_NO_MATCH`. Supported only for WebSocket APIs.
	PassthroughBehavior pulumi.StringPtrInput
	// The [format of the payload](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html#http-api-develop-integrations-lambda.proxy-format) sent to an integration. Valid values: `1.0`, `2.0`. Default is `1.0`.
	PayloadFormatVersion pulumi.StringPtrInput
	// For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend.
	// For HTTP APIs with a specified `integrationSubtype`, a key-value map specifying parameters that are passed to `AWS_PROXY` integrations.
	// For HTTP APIs without a specified `integrationSubtype`, a key-value map specifying how to transform HTTP requests before sending them to the backend.
	// See the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html) for details.
	RequestParameters pulumi.StringMapInput
	// A map of [Velocity](https://velocity.apache.org/) templates that are applied on the request payload based on the value of the Content-Type header sent by the client. Supported only for WebSocket APIs.
	RequestTemplates pulumi.StringMapInput
	// Mappings to transform the HTTP response from a backend integration before returning the response to clients. Supported only for HTTP APIs.
	ResponseParameters IntegrationResponseParameterArrayInput
	// The [template selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-template-selection-expressions) for the integration.
	TemplateSelectionExpression pulumi.StringPtrInput
	// Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs.
	// The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.
	// this provider will only perform drift detection of its value when present in a configuration.
	TimeoutMilliseconds pulumi.IntPtrInput
	// The TLS configuration for a private integration. Supported only for HTTP APIs.
	TlsConfig IntegrationTlsConfigPtrInput
}

func (IntegrationState) ElementType

func (IntegrationState) ElementType() reflect.Type

type IntegrationTlsConfig

type IntegrationTlsConfig struct {
	// If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.
	ServerNameToVerify *string `pulumi:"serverNameToVerify"`
}

type IntegrationTlsConfigArgs

type IntegrationTlsConfigArgs struct {
	// If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.
	ServerNameToVerify pulumi.StringPtrInput `pulumi:"serverNameToVerify"`
}

func (IntegrationTlsConfigArgs) ElementType

func (IntegrationTlsConfigArgs) ElementType() reflect.Type

func (IntegrationTlsConfigArgs) ToIntegrationTlsConfigOutput

func (i IntegrationTlsConfigArgs) ToIntegrationTlsConfigOutput() IntegrationTlsConfigOutput

func (IntegrationTlsConfigArgs) ToIntegrationTlsConfigOutputWithContext

func (i IntegrationTlsConfigArgs) ToIntegrationTlsConfigOutputWithContext(ctx context.Context) IntegrationTlsConfigOutput

func (IntegrationTlsConfigArgs) ToIntegrationTlsConfigPtrOutput

func (i IntegrationTlsConfigArgs) ToIntegrationTlsConfigPtrOutput() IntegrationTlsConfigPtrOutput

func (IntegrationTlsConfigArgs) ToIntegrationTlsConfigPtrOutputWithContext

func (i IntegrationTlsConfigArgs) ToIntegrationTlsConfigPtrOutputWithContext(ctx context.Context) IntegrationTlsConfigPtrOutput

type IntegrationTlsConfigInput

type IntegrationTlsConfigInput interface {
	pulumi.Input

	ToIntegrationTlsConfigOutput() IntegrationTlsConfigOutput
	ToIntegrationTlsConfigOutputWithContext(context.Context) IntegrationTlsConfigOutput
}

IntegrationTlsConfigInput is an input type that accepts IntegrationTlsConfigArgs and IntegrationTlsConfigOutput values. You can construct a concrete instance of `IntegrationTlsConfigInput` via:

IntegrationTlsConfigArgs{...}

type IntegrationTlsConfigOutput

type IntegrationTlsConfigOutput struct{ *pulumi.OutputState }

func (IntegrationTlsConfigOutput) ElementType

func (IntegrationTlsConfigOutput) ElementType() reflect.Type

func (IntegrationTlsConfigOutput) ServerNameToVerify

func (o IntegrationTlsConfigOutput) ServerNameToVerify() pulumi.StringPtrOutput

If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.

func (IntegrationTlsConfigOutput) ToIntegrationTlsConfigOutput

func (o IntegrationTlsConfigOutput) ToIntegrationTlsConfigOutput() IntegrationTlsConfigOutput

func (IntegrationTlsConfigOutput) ToIntegrationTlsConfigOutputWithContext

func (o IntegrationTlsConfigOutput) ToIntegrationTlsConfigOutputWithContext(ctx context.Context) IntegrationTlsConfigOutput

func (IntegrationTlsConfigOutput) ToIntegrationTlsConfigPtrOutput

func (o IntegrationTlsConfigOutput) ToIntegrationTlsConfigPtrOutput() IntegrationTlsConfigPtrOutput

func (IntegrationTlsConfigOutput) ToIntegrationTlsConfigPtrOutputWithContext

func (o IntegrationTlsConfigOutput) ToIntegrationTlsConfigPtrOutputWithContext(ctx context.Context) IntegrationTlsConfigPtrOutput

type IntegrationTlsConfigPtrInput

type IntegrationTlsConfigPtrInput interface {
	pulumi.Input

	ToIntegrationTlsConfigPtrOutput() IntegrationTlsConfigPtrOutput
	ToIntegrationTlsConfigPtrOutputWithContext(context.Context) IntegrationTlsConfigPtrOutput
}

IntegrationTlsConfigPtrInput is an input type that accepts IntegrationTlsConfigArgs, IntegrationTlsConfigPtr and IntegrationTlsConfigPtrOutput values. You can construct a concrete instance of `IntegrationTlsConfigPtrInput` via:

        IntegrationTlsConfigArgs{...}

or:

        nil

type IntegrationTlsConfigPtrOutput

type IntegrationTlsConfigPtrOutput struct{ *pulumi.OutputState }

func (IntegrationTlsConfigPtrOutput) Elem

func (IntegrationTlsConfigPtrOutput) ElementType

func (IntegrationTlsConfigPtrOutput) ServerNameToVerify

func (o IntegrationTlsConfigPtrOutput) ServerNameToVerify() pulumi.StringPtrOutput

If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.

func (IntegrationTlsConfigPtrOutput) ToIntegrationTlsConfigPtrOutput

func (o IntegrationTlsConfigPtrOutput) ToIntegrationTlsConfigPtrOutput() IntegrationTlsConfigPtrOutput

func (IntegrationTlsConfigPtrOutput) ToIntegrationTlsConfigPtrOutputWithContext

func (o IntegrationTlsConfigPtrOutput) ToIntegrationTlsConfigPtrOutputWithContext(ctx context.Context) IntegrationTlsConfigPtrOutput

type LookupApiArgs added in v3.31.0

type LookupApiArgs struct {
	// The API identifier.
	ApiId string `pulumi:"apiId"`
	// A map of resource tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getApi.

type LookupApiResult added in v3.31.0

type LookupApiResult struct {
	// The 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.
	ApiEndpoint string `pulumi:"apiEndpoint"`
	ApiId       string `pulumi:"apiId"`
	// 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).
	// Applicable for WebSocket APIs.
	ApiKeySelectionExpression string `pulumi:"apiKeySelectionExpression"`
	// The ARN of the API.
	Arn string `pulumi:"arn"`
	// The cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html).
	// Applicable for HTTP APIs.
	CorsConfigurations []GetApiCorsConfiguration `pulumi:"corsConfigurations"`
	// The description of the API.
	Description string `pulumi:"description"`
	// Whether clients can invoke the API by using the default `execute-api` endpoint.
	DisableExecuteApiEndpoint bool `pulumi:"disableExecuteApiEndpoint"`
	// The ARN prefix to be used in an `lambda.Permission`'s `sourceArn` attribute
	// or in an `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.
	ExecutionArn string `pulumi:"executionArn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The name of the API.
	Name string `pulumi:"name"`
	// The API protocol.
	ProtocolType string `pulumi:"protocolType"`
	// 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.
	RouteSelectionExpression string `pulumi:"routeSelectionExpression"`
	// A map of resource tags.
	Tags map[string]string `pulumi:"tags"`
	// A version identifier for the API.
	Version string `pulumi:"version"`
}

A collection of values returned by getApi.

func LookupApi added in v3.31.0

func LookupApi(ctx *pulumi.Context, args *LookupApiArgs, opts ...pulumi.InvokeOption) (*LookupApiResult, error)

Provides details about a specific Amazon API Gateway Version 2 API.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.LookupApi(ctx, &apigatewayv2.LookupApiArgs{
			ApiId: "aabbccddee",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type Model

type Model struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// The content-type for the model, for example, `application/json`. Must be between 1 and 256 characters in length.
	ContentType pulumi.StringOutput `pulumi:"contentType"`
	// The description of the model. Must be between 1 and 128 characters in length.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the model. Must be alphanumeric. Must be between 1 and 128 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
	// The schema for the model. This should be a [JSON schema draft 4](https://tools.ietf.org/html/draft-zyp-json-schema-04) model. Must be less than or equal to 32768 characters in length.
	Schema pulumi.StringOutput `pulumi:"schema"`
}

Manages an Amazon API Gateway Version 2 [model](https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html#models-mappings-models).

## Example Usage ### Basic

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewModel(ctx, "example", &apigatewayv2.ModelArgs{
			ApiId:       pulumi.Any(aws_apigatewayv2_api.Example.Id),
			ContentType: pulumi.String("application/json"),
			Schema:      pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"", "$", "schema\": \"http://json-schema.org/draft-04/schema#\",\n", "  \"title\": \"ExampleModel\",\n", "  \"type\": \"object\",\n", "  \"properties\": {\n", "    \"id\": { \"type\": \"string\" }\n", "  }\n", "}\n")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_model` can be imported by using the API identifier and model identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/model:Model example aabbccddee/1122334

```

func GetModel

func GetModel(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ModelState, opts ...pulumi.ResourceOption) (*Model, error)

GetModel gets an existing Model resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewModel

func NewModel(ctx *pulumi.Context,
	name string, args *ModelArgs, opts ...pulumi.ResourceOption) (*Model, error)

NewModel registers a new resource with the given unique name, arguments, and options.

func (*Model) ElementType added in v3.13.0

func (*Model) ElementType() reflect.Type

func (*Model) ToModelOutput added in v3.13.0

func (i *Model) ToModelOutput() ModelOutput

func (*Model) ToModelOutputWithContext added in v3.13.0

func (i *Model) ToModelOutputWithContext(ctx context.Context) ModelOutput

func (*Model) ToModelPtrOutput added in v3.25.0

func (i *Model) ToModelPtrOutput() ModelPtrOutput

func (*Model) ToModelPtrOutputWithContext added in v3.25.0

func (i *Model) ToModelPtrOutputWithContext(ctx context.Context) ModelPtrOutput

type ModelArgs

type ModelArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// The content-type for the model, for example, `application/json`. Must be between 1 and 256 characters in length.
	ContentType pulumi.StringInput
	// The description of the model. Must be between 1 and 128 characters in length.
	Description pulumi.StringPtrInput
	// The name of the model. Must be alphanumeric. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
	// The schema for the model. This should be a [JSON schema draft 4](https://tools.ietf.org/html/draft-zyp-json-schema-04) model. Must be less than or equal to 32768 characters in length.
	Schema pulumi.StringInput
}

The set of arguments for constructing a Model resource.

func (ModelArgs) ElementType

func (ModelArgs) ElementType() reflect.Type

type ModelArray added in v3.25.0

type ModelArray []ModelInput

func (ModelArray) ElementType added in v3.25.0

func (ModelArray) ElementType() reflect.Type

func (ModelArray) ToModelArrayOutput added in v3.25.0

func (i ModelArray) ToModelArrayOutput() ModelArrayOutput

func (ModelArray) ToModelArrayOutputWithContext added in v3.25.0

func (i ModelArray) ToModelArrayOutputWithContext(ctx context.Context) ModelArrayOutput

type ModelArrayInput added in v3.25.0

type ModelArrayInput interface {
	pulumi.Input

	ToModelArrayOutput() ModelArrayOutput
	ToModelArrayOutputWithContext(context.Context) ModelArrayOutput
}

ModelArrayInput is an input type that accepts ModelArray and ModelArrayOutput values. You can construct a concrete instance of `ModelArrayInput` via:

ModelArray{ ModelArgs{...} }

type ModelArrayOutput added in v3.25.0

type ModelArrayOutput struct{ *pulumi.OutputState }

func (ModelArrayOutput) ElementType added in v3.25.0

func (ModelArrayOutput) ElementType() reflect.Type

func (ModelArrayOutput) Index added in v3.25.0

func (ModelArrayOutput) ToModelArrayOutput added in v3.25.0

func (o ModelArrayOutput) ToModelArrayOutput() ModelArrayOutput

func (ModelArrayOutput) ToModelArrayOutputWithContext added in v3.25.0

func (o ModelArrayOutput) ToModelArrayOutputWithContext(ctx context.Context) ModelArrayOutput

type ModelInput added in v3.13.0

type ModelInput interface {
	pulumi.Input

	ToModelOutput() ModelOutput
	ToModelOutputWithContext(ctx context.Context) ModelOutput
}

type ModelMap added in v3.25.0

type ModelMap map[string]ModelInput

func (ModelMap) ElementType added in v3.25.0

func (ModelMap) ElementType() reflect.Type

func (ModelMap) ToModelMapOutput added in v3.25.0

func (i ModelMap) ToModelMapOutput() ModelMapOutput

func (ModelMap) ToModelMapOutputWithContext added in v3.25.0

func (i ModelMap) ToModelMapOutputWithContext(ctx context.Context) ModelMapOutput

type ModelMapInput added in v3.25.0

type ModelMapInput interface {
	pulumi.Input

	ToModelMapOutput() ModelMapOutput
	ToModelMapOutputWithContext(context.Context) ModelMapOutput
}

ModelMapInput is an input type that accepts ModelMap and ModelMapOutput values. You can construct a concrete instance of `ModelMapInput` via:

ModelMap{ "key": ModelArgs{...} }

type ModelMapOutput added in v3.25.0

type ModelMapOutput struct{ *pulumi.OutputState }

func (ModelMapOutput) ElementType added in v3.25.0

func (ModelMapOutput) ElementType() reflect.Type

func (ModelMapOutput) MapIndex added in v3.25.0

func (ModelMapOutput) ToModelMapOutput added in v3.25.0

func (o ModelMapOutput) ToModelMapOutput() ModelMapOutput

func (ModelMapOutput) ToModelMapOutputWithContext added in v3.25.0

func (o ModelMapOutput) ToModelMapOutputWithContext(ctx context.Context) ModelMapOutput

type ModelOutput added in v3.13.0

type ModelOutput struct {
	*pulumi.OutputState
}

func (ModelOutput) ElementType added in v3.13.0

func (ModelOutput) ElementType() reflect.Type

func (ModelOutput) ToModelOutput added in v3.13.0

func (o ModelOutput) ToModelOutput() ModelOutput

func (ModelOutput) ToModelOutputWithContext added in v3.13.0

func (o ModelOutput) ToModelOutputWithContext(ctx context.Context) ModelOutput

func (ModelOutput) ToModelPtrOutput added in v3.25.0

func (o ModelOutput) ToModelPtrOutput() ModelPtrOutput

func (ModelOutput) ToModelPtrOutputWithContext added in v3.25.0

func (o ModelOutput) ToModelPtrOutputWithContext(ctx context.Context) ModelPtrOutput

type ModelPtrInput added in v3.25.0

type ModelPtrInput interface {
	pulumi.Input

	ToModelPtrOutput() ModelPtrOutput
	ToModelPtrOutputWithContext(ctx context.Context) ModelPtrOutput
}

type ModelPtrOutput added in v3.25.0

type ModelPtrOutput struct {
	*pulumi.OutputState
}

func (ModelPtrOutput) ElementType added in v3.25.0

func (ModelPtrOutput) ElementType() reflect.Type

func (ModelPtrOutput) ToModelPtrOutput added in v3.25.0

func (o ModelPtrOutput) ToModelPtrOutput() ModelPtrOutput

func (ModelPtrOutput) ToModelPtrOutputWithContext added in v3.25.0

func (o ModelPtrOutput) ToModelPtrOutputWithContext(ctx context.Context) ModelPtrOutput

type ModelState

type ModelState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// The content-type for the model, for example, `application/json`. Must be between 1 and 256 characters in length.
	ContentType pulumi.StringPtrInput
	// The description of the model. Must be between 1 and 128 characters in length.
	Description pulumi.StringPtrInput
	// The name of the model. Must be alphanumeric. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
	// The schema for the model. This should be a [JSON schema draft 4](https://tools.ietf.org/html/draft-zyp-json-schema-04) model. Must be less than or equal to 32768 characters in length.
	Schema pulumi.StringPtrInput
}

func (ModelState) ElementType

func (ModelState) ElementType() reflect.Type

type Route

type Route struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// Boolean whether an API key is required for the route. Defaults to `false`. Supported only for WebSocket APIs.
	ApiKeyRequired pulumi.BoolPtrOutput `pulumi:"apiKeyRequired"`
	// The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.
	AuthorizationScopes pulumi.StringArrayOutput `pulumi:"authorizationScopes"`
	// The authorization type for the route.
	// For WebSocket APIs, valid values are `NONE` for open access, `AWS_IAM` for using AWS IAM permissions, and `CUSTOM` for using a Lambda authorizer.
	// For HTTP APIs, valid values are `NONE` for open access, `JWT` for using JSON Web Tokens, `AWS_IAM` for using AWS IAM permissions, and `CUSTOM` for using a Lambda authorizer.
	// Defaults to `NONE`.
	AuthorizationType pulumi.StringPtrOutput `pulumi:"authorizationType"`
	// The identifier of the `apigatewayv2.Authorizer` resource to be associated with this route.
	AuthorizerId pulumi.StringPtrOutput `pulumi:"authorizerId"`
	// The [model selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) for the route. Supported only for WebSocket APIs.
	ModelSelectionExpression pulumi.StringPtrOutput `pulumi:"modelSelectionExpression"`
	// The operation name for the route. Must be between 1 and 64 characters in length.
	OperationName pulumi.StringPtrOutput `pulumi:"operationName"`
	// The request models for the route. Supported only for WebSocket APIs.
	RequestModels pulumi.StringMapOutput `pulumi:"requestModels"`
	// The request parameters for the route. Supported only for WebSocket APIs.
	RequestParameters RouteRequestParameterArrayOutput `pulumi:"requestParameters"`
	// The route key for the route. For HTTP APIs, the route key can be either `$default`, or a combination of an HTTP method and resource path, for example, `GET /pets`.
	RouteKey pulumi.StringOutput `pulumi:"routeKey"`
	// The [route response selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-route-response-selection-expressions) for the route. Supported only for WebSocket APIs.
	RouteResponseSelectionExpression pulumi.StringPtrOutput `pulumi:"routeResponseSelectionExpression"`
	// The target for the route, of the form `integrations/`*`IntegrationID`*, where *`IntegrationID`* is the identifier of an `apigatewayv2.Integration` resource.
	Target pulumi.StringPtrOutput `pulumi:"target"`
}

Manages an Amazon API Gateway Version 2 route. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html) for [WebSocket](https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-develop-routes.html) and [HTTP](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-routes.html) APIs.

## Example Usage ### Basic

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleApi, err := apigatewayv2.NewApi(ctx, "exampleApi", &apigatewayv2.ApiArgs{
			ProtocolType:             pulumi.String("WEBSOCKET"),
			RouteSelectionExpression: pulumi.String(fmt.Sprintf("%v%v", "$", "request.body.action")),
		})
		if err != nil {
			return err
		}
		_, err = apigatewayv2.NewRoute(ctx, "exampleRoute", &apigatewayv2.RouteArgs{
			ApiId:    exampleApi.ID(),
			RouteKey: pulumi.String(fmt.Sprintf("%v%v", "$", "default")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### HTTP Proxy Integration

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleApi, err := apigatewayv2.NewApi(ctx, "exampleApi", &apigatewayv2.ApiArgs{
			ProtocolType: pulumi.String("HTTP"),
		})
		if err != nil {
			return err
		}
		exampleIntegration, err := apigatewayv2.NewIntegration(ctx, "exampleIntegration", &apigatewayv2.IntegrationArgs{
			ApiId:             exampleApi.ID(),
			IntegrationType:   pulumi.String("HTTP_PROXY"),
			IntegrationMethod: pulumi.String("ANY"),
			IntegrationUri:    pulumi.String("https://example.com/{proxy}"),
		})
		if err != nil {
			return err
		}
		_, err = apigatewayv2.NewRoute(ctx, "exampleRoute", &apigatewayv2.RouteArgs{
			ApiId:    exampleApi.ID(),
			RouteKey: pulumi.String("ANY /example/{proxy+}"),
			Target: exampleIntegration.ID().ApplyT(func(id string) (string, error) {
				return fmt.Sprintf("%v%v", "integrations/", id), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_route` can be imported by using the API identifier and route identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/route:Route example aabbccddee/1122334

```

func GetRoute

func GetRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteState, opts ...pulumi.ResourceOption) (*Route, error)

GetRoute gets an existing Route resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRoute

func NewRoute(ctx *pulumi.Context,
	name string, args *RouteArgs, opts ...pulumi.ResourceOption) (*Route, error)

NewRoute registers a new resource with the given unique name, arguments, and options.

func (*Route) ElementType added in v3.13.0

func (*Route) ElementType() reflect.Type

func (*Route) ToRouteOutput added in v3.13.0

func (i *Route) ToRouteOutput() RouteOutput

func (*Route) ToRouteOutputWithContext added in v3.13.0

func (i *Route) ToRouteOutputWithContext(ctx context.Context) RouteOutput

func (*Route) ToRoutePtrOutput added in v3.25.0

func (i *Route) ToRoutePtrOutput() RoutePtrOutput

func (*Route) ToRoutePtrOutputWithContext added in v3.25.0

func (i *Route) ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput

type RouteArgs

type RouteArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// Boolean whether an API key is required for the route. Defaults to `false`. Supported only for WebSocket APIs.
	ApiKeyRequired pulumi.BoolPtrInput
	// The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.
	AuthorizationScopes pulumi.StringArrayInput
	// The authorization type for the route.
	// For WebSocket APIs, valid values are `NONE` for open access, `AWS_IAM` for using AWS IAM permissions, and `CUSTOM` for using a Lambda authorizer.
	// For HTTP APIs, valid values are `NONE` for open access, `JWT` for using JSON Web Tokens, `AWS_IAM` for using AWS IAM permissions, and `CUSTOM` for using a Lambda authorizer.
	// Defaults to `NONE`.
	AuthorizationType pulumi.StringPtrInput
	// The identifier of the `apigatewayv2.Authorizer` resource to be associated with this route.
	AuthorizerId pulumi.StringPtrInput
	// The [model selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) for the route. Supported only for WebSocket APIs.
	ModelSelectionExpression pulumi.StringPtrInput
	// The operation name for the route. Must be between 1 and 64 characters in length.
	OperationName pulumi.StringPtrInput
	// The request models for the route. Supported only for WebSocket APIs.
	RequestModels pulumi.StringMapInput
	// The request parameters for the route. Supported only for WebSocket APIs.
	RequestParameters RouteRequestParameterArrayInput
	// The route key for the route. For HTTP APIs, the route key can be either `$default`, or a combination of an HTTP method and resource path, for example, `GET /pets`.
	RouteKey pulumi.StringInput
	// The [route response selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-route-response-selection-expressions) for the route. Supported only for WebSocket APIs.
	RouteResponseSelectionExpression pulumi.StringPtrInput
	// The target for the route, of the form `integrations/`*`IntegrationID`*, where *`IntegrationID`* is the identifier of an `apigatewayv2.Integration` resource.
	Target pulumi.StringPtrInput
}

The set of arguments for constructing a Route resource.

func (RouteArgs) ElementType

func (RouteArgs) ElementType() reflect.Type

type RouteArray added in v3.25.0

type RouteArray []RouteInput

func (RouteArray) ElementType added in v3.25.0

func (RouteArray) ElementType() reflect.Type

func (RouteArray) ToRouteArrayOutput added in v3.25.0

func (i RouteArray) ToRouteArrayOutput() RouteArrayOutput

func (RouteArray) ToRouteArrayOutputWithContext added in v3.25.0

func (i RouteArray) ToRouteArrayOutputWithContext(ctx context.Context) RouteArrayOutput

type RouteArrayInput added in v3.25.0

type RouteArrayInput interface {
	pulumi.Input

	ToRouteArrayOutput() RouteArrayOutput
	ToRouteArrayOutputWithContext(context.Context) RouteArrayOutput
}

RouteArrayInput is an input type that accepts RouteArray and RouteArrayOutput values. You can construct a concrete instance of `RouteArrayInput` via:

RouteArray{ RouteArgs{...} }

type RouteArrayOutput added in v3.25.0

type RouteArrayOutput struct{ *pulumi.OutputState }

func (RouteArrayOutput) ElementType added in v3.25.0

func (RouteArrayOutput) ElementType() reflect.Type

func (RouteArrayOutput) Index added in v3.25.0

func (RouteArrayOutput) ToRouteArrayOutput added in v3.25.0

func (o RouteArrayOutput) ToRouteArrayOutput() RouteArrayOutput

func (RouteArrayOutput) ToRouteArrayOutputWithContext added in v3.25.0

func (o RouteArrayOutput) ToRouteArrayOutputWithContext(ctx context.Context) RouteArrayOutput

type RouteInput added in v3.13.0

type RouteInput interface {
	pulumi.Input

	ToRouteOutput() RouteOutput
	ToRouteOutputWithContext(ctx context.Context) RouteOutput
}

type RouteMap added in v3.25.0

type RouteMap map[string]RouteInput

func (RouteMap) ElementType added in v3.25.0

func (RouteMap) ElementType() reflect.Type

func (RouteMap) ToRouteMapOutput added in v3.25.0

func (i RouteMap) ToRouteMapOutput() RouteMapOutput

func (RouteMap) ToRouteMapOutputWithContext added in v3.25.0

func (i RouteMap) ToRouteMapOutputWithContext(ctx context.Context) RouteMapOutput

type RouteMapInput added in v3.25.0

type RouteMapInput interface {
	pulumi.Input

	ToRouteMapOutput() RouteMapOutput
	ToRouteMapOutputWithContext(context.Context) RouteMapOutput
}

RouteMapInput is an input type that accepts RouteMap and RouteMapOutput values. You can construct a concrete instance of `RouteMapInput` via:

RouteMap{ "key": RouteArgs{...} }

type RouteMapOutput added in v3.25.0

type RouteMapOutput struct{ *pulumi.OutputState }

func (RouteMapOutput) ElementType added in v3.25.0

func (RouteMapOutput) ElementType() reflect.Type

func (RouteMapOutput) MapIndex added in v3.25.0

func (RouteMapOutput) ToRouteMapOutput added in v3.25.0

func (o RouteMapOutput) ToRouteMapOutput() RouteMapOutput

func (RouteMapOutput) ToRouteMapOutputWithContext added in v3.25.0

func (o RouteMapOutput) ToRouteMapOutputWithContext(ctx context.Context) RouteMapOutput

type RouteOutput added in v3.13.0

type RouteOutput struct {
	*pulumi.OutputState
}

func (RouteOutput) ElementType added in v3.13.0

func (RouteOutput) ElementType() reflect.Type

func (RouteOutput) ToRouteOutput added in v3.13.0

func (o RouteOutput) ToRouteOutput() RouteOutput

func (RouteOutput) ToRouteOutputWithContext added in v3.13.0

func (o RouteOutput) ToRouteOutputWithContext(ctx context.Context) RouteOutput

func (RouteOutput) ToRoutePtrOutput added in v3.25.0

func (o RouteOutput) ToRoutePtrOutput() RoutePtrOutput

func (RouteOutput) ToRoutePtrOutputWithContext added in v3.25.0

func (o RouteOutput) ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput

type RoutePtrInput added in v3.25.0

type RoutePtrInput interface {
	pulumi.Input

	ToRoutePtrOutput() RoutePtrOutput
	ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput
}

type RoutePtrOutput added in v3.25.0

type RoutePtrOutput struct {
	*pulumi.OutputState
}

func (RoutePtrOutput) ElementType added in v3.25.0

func (RoutePtrOutput) ElementType() reflect.Type

func (RoutePtrOutput) ToRoutePtrOutput added in v3.25.0

func (o RoutePtrOutput) ToRoutePtrOutput() RoutePtrOutput

func (RoutePtrOutput) ToRoutePtrOutputWithContext added in v3.25.0

func (o RoutePtrOutput) ToRoutePtrOutputWithContext(ctx context.Context) RoutePtrOutput

type RouteRequestParameter added in v3.36.0

type RouteRequestParameter struct {
	// Request parameter key. This is a [request data mapping parameter](https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-data-mapping.html#websocket-mapping-request-parameters).
	RequestParameterKey string `pulumi:"requestParameterKey"`
	// Boolean whether or not the parameter is required.
	Required bool `pulumi:"required"`
}

type RouteRequestParameterArgs added in v3.36.0

type RouteRequestParameterArgs struct {
	// Request parameter key. This is a [request data mapping parameter](https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-data-mapping.html#websocket-mapping-request-parameters).
	RequestParameterKey pulumi.StringInput `pulumi:"requestParameterKey"`
	// Boolean whether or not the parameter is required.
	Required pulumi.BoolInput `pulumi:"required"`
}

func (RouteRequestParameterArgs) ElementType added in v3.36.0

func (RouteRequestParameterArgs) ElementType() reflect.Type

func (RouteRequestParameterArgs) ToRouteRequestParameterOutput added in v3.36.0

func (i RouteRequestParameterArgs) ToRouteRequestParameterOutput() RouteRequestParameterOutput

func (RouteRequestParameterArgs) ToRouteRequestParameterOutputWithContext added in v3.36.0

func (i RouteRequestParameterArgs) ToRouteRequestParameterOutputWithContext(ctx context.Context) RouteRequestParameterOutput

type RouteRequestParameterArray added in v3.36.0

type RouteRequestParameterArray []RouteRequestParameterInput

func (RouteRequestParameterArray) ElementType added in v3.36.0

func (RouteRequestParameterArray) ElementType() reflect.Type

func (RouteRequestParameterArray) ToRouteRequestParameterArrayOutput added in v3.36.0

func (i RouteRequestParameterArray) ToRouteRequestParameterArrayOutput() RouteRequestParameterArrayOutput

func (RouteRequestParameterArray) ToRouteRequestParameterArrayOutputWithContext added in v3.36.0

func (i RouteRequestParameterArray) ToRouteRequestParameterArrayOutputWithContext(ctx context.Context) RouteRequestParameterArrayOutput

type RouteRequestParameterArrayInput added in v3.36.0

type RouteRequestParameterArrayInput interface {
	pulumi.Input

	ToRouteRequestParameterArrayOutput() RouteRequestParameterArrayOutput
	ToRouteRequestParameterArrayOutputWithContext(context.Context) RouteRequestParameterArrayOutput
}

RouteRequestParameterArrayInput is an input type that accepts RouteRequestParameterArray and RouteRequestParameterArrayOutput values. You can construct a concrete instance of `RouteRequestParameterArrayInput` via:

RouteRequestParameterArray{ RouteRequestParameterArgs{...} }

type RouteRequestParameterArrayOutput added in v3.36.0

type RouteRequestParameterArrayOutput struct{ *pulumi.OutputState }

func (RouteRequestParameterArrayOutput) ElementType added in v3.36.0

func (RouteRequestParameterArrayOutput) Index added in v3.36.0

func (RouteRequestParameterArrayOutput) ToRouteRequestParameterArrayOutput added in v3.36.0

func (o RouteRequestParameterArrayOutput) ToRouteRequestParameterArrayOutput() RouteRequestParameterArrayOutput

func (RouteRequestParameterArrayOutput) ToRouteRequestParameterArrayOutputWithContext added in v3.36.0

func (o RouteRequestParameterArrayOutput) ToRouteRequestParameterArrayOutputWithContext(ctx context.Context) RouteRequestParameterArrayOutput

type RouteRequestParameterInput added in v3.36.0

type RouteRequestParameterInput interface {
	pulumi.Input

	ToRouteRequestParameterOutput() RouteRequestParameterOutput
	ToRouteRequestParameterOutputWithContext(context.Context) RouteRequestParameterOutput
}

RouteRequestParameterInput is an input type that accepts RouteRequestParameterArgs and RouteRequestParameterOutput values. You can construct a concrete instance of `RouteRequestParameterInput` via:

RouteRequestParameterArgs{...}

type RouteRequestParameterOutput added in v3.36.0

type RouteRequestParameterOutput struct{ *pulumi.OutputState }

func (RouteRequestParameterOutput) ElementType added in v3.36.0

func (RouteRequestParameterOutput) RequestParameterKey added in v3.36.0

func (o RouteRequestParameterOutput) RequestParameterKey() pulumi.StringOutput

Request parameter key. This is a [request data mapping parameter](https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-data-mapping.html#websocket-mapping-request-parameters).

func (RouteRequestParameterOutput) Required added in v3.36.0

Boolean whether or not the parameter is required.

func (RouteRequestParameterOutput) ToRouteRequestParameterOutput added in v3.36.0

func (o RouteRequestParameterOutput) ToRouteRequestParameterOutput() RouteRequestParameterOutput

func (RouteRequestParameterOutput) ToRouteRequestParameterOutputWithContext added in v3.36.0

func (o RouteRequestParameterOutput) ToRouteRequestParameterOutputWithContext(ctx context.Context) RouteRequestParameterOutput

type RouteResponse

type RouteResponse struct {
	pulumi.CustomResourceState

	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// The [model selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) for the route response.
	ModelSelectionExpression pulumi.StringPtrOutput `pulumi:"modelSelectionExpression"`
	// The response models for the route response.
	ResponseModels pulumi.StringMapOutput `pulumi:"responseModels"`
	// The identifier of the `apigatewayv2.Route`.
	RouteId pulumi.StringOutput `pulumi:"routeId"`
	// The route response key.
	RouteResponseKey pulumi.StringOutput `pulumi:"routeResponseKey"`
}

Manages an Amazon API Gateway Version 2 route response. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html).

## Example Usage ### Basic

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewRouteResponse(ctx, "example", &apigatewayv2.RouteResponseArgs{
			ApiId:            pulumi.Any(aws_apigatewayv2_api.Example.Id),
			RouteId:          pulumi.Any(aws_apigatewayv2_route.Example.Id),
			RouteResponseKey: pulumi.String(fmt.Sprintf("%v%v", "$", "default")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_route_response` can be imported by using the API identifier, route identifier and route response identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/routeResponse:RouteResponse example aabbccddee/1122334/998877

```

func GetRouteResponse

func GetRouteResponse(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouteResponseState, opts ...pulumi.ResourceOption) (*RouteResponse, error)

GetRouteResponse gets an existing RouteResponse resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRouteResponse

func NewRouteResponse(ctx *pulumi.Context,
	name string, args *RouteResponseArgs, opts ...pulumi.ResourceOption) (*RouteResponse, error)

NewRouteResponse registers a new resource with the given unique name, arguments, and options.

func (*RouteResponse) ElementType added in v3.13.0

func (*RouteResponse) ElementType() reflect.Type

func (*RouteResponse) ToRouteResponseOutput added in v3.13.0

func (i *RouteResponse) ToRouteResponseOutput() RouteResponseOutput

func (*RouteResponse) ToRouteResponseOutputWithContext added in v3.13.0

func (i *RouteResponse) ToRouteResponseOutputWithContext(ctx context.Context) RouteResponseOutput

func (*RouteResponse) ToRouteResponsePtrOutput added in v3.25.0

func (i *RouteResponse) ToRouteResponsePtrOutput() RouteResponsePtrOutput

func (*RouteResponse) ToRouteResponsePtrOutputWithContext added in v3.25.0

func (i *RouteResponse) ToRouteResponsePtrOutputWithContext(ctx context.Context) RouteResponsePtrOutput

type RouteResponseArgs

type RouteResponseArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput
	// The [model selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) for the route response.
	ModelSelectionExpression pulumi.StringPtrInput
	// The response models for the route response.
	ResponseModels pulumi.StringMapInput
	// The identifier of the `apigatewayv2.Route`.
	RouteId pulumi.StringInput
	// The route response key.
	RouteResponseKey pulumi.StringInput
}

The set of arguments for constructing a RouteResponse resource.

func (RouteResponseArgs) ElementType

func (RouteResponseArgs) ElementType() reflect.Type

type RouteResponseArray added in v3.25.0

type RouteResponseArray []RouteResponseInput

func (RouteResponseArray) ElementType added in v3.25.0

func (RouteResponseArray) ElementType() reflect.Type

func (RouteResponseArray) ToRouteResponseArrayOutput added in v3.25.0

func (i RouteResponseArray) ToRouteResponseArrayOutput() RouteResponseArrayOutput

func (RouteResponseArray) ToRouteResponseArrayOutputWithContext added in v3.25.0

func (i RouteResponseArray) ToRouteResponseArrayOutputWithContext(ctx context.Context) RouteResponseArrayOutput

type RouteResponseArrayInput added in v3.25.0

type RouteResponseArrayInput interface {
	pulumi.Input

	ToRouteResponseArrayOutput() RouteResponseArrayOutput
	ToRouteResponseArrayOutputWithContext(context.Context) RouteResponseArrayOutput
}

RouteResponseArrayInput is an input type that accepts RouteResponseArray and RouteResponseArrayOutput values. You can construct a concrete instance of `RouteResponseArrayInput` via:

RouteResponseArray{ RouteResponseArgs{...} }

type RouteResponseArrayOutput added in v3.25.0

type RouteResponseArrayOutput struct{ *pulumi.OutputState }

func (RouteResponseArrayOutput) ElementType added in v3.25.0

func (RouteResponseArrayOutput) ElementType() reflect.Type

func (RouteResponseArrayOutput) Index added in v3.25.0

func (RouteResponseArrayOutput) ToRouteResponseArrayOutput added in v3.25.0

func (o RouteResponseArrayOutput) ToRouteResponseArrayOutput() RouteResponseArrayOutput

func (RouteResponseArrayOutput) ToRouteResponseArrayOutputWithContext added in v3.25.0

func (o RouteResponseArrayOutput) ToRouteResponseArrayOutputWithContext(ctx context.Context) RouteResponseArrayOutput

type RouteResponseInput added in v3.13.0

type RouteResponseInput interface {
	pulumi.Input

	ToRouteResponseOutput() RouteResponseOutput
	ToRouteResponseOutputWithContext(ctx context.Context) RouteResponseOutput
}

type RouteResponseMap added in v3.25.0

type RouteResponseMap map[string]RouteResponseInput

func (RouteResponseMap) ElementType added in v3.25.0

func (RouteResponseMap) ElementType() reflect.Type

func (RouteResponseMap) ToRouteResponseMapOutput added in v3.25.0

func (i RouteResponseMap) ToRouteResponseMapOutput() RouteResponseMapOutput

func (RouteResponseMap) ToRouteResponseMapOutputWithContext added in v3.25.0

func (i RouteResponseMap) ToRouteResponseMapOutputWithContext(ctx context.Context) RouteResponseMapOutput

type RouteResponseMapInput added in v3.25.0

type RouteResponseMapInput interface {
	pulumi.Input

	ToRouteResponseMapOutput() RouteResponseMapOutput
	ToRouteResponseMapOutputWithContext(context.Context) RouteResponseMapOutput
}

RouteResponseMapInput is an input type that accepts RouteResponseMap and RouteResponseMapOutput values. You can construct a concrete instance of `RouteResponseMapInput` via:

RouteResponseMap{ "key": RouteResponseArgs{...} }

type RouteResponseMapOutput added in v3.25.0

type RouteResponseMapOutput struct{ *pulumi.OutputState }

func (RouteResponseMapOutput) ElementType added in v3.25.0

func (RouteResponseMapOutput) ElementType() reflect.Type

func (RouteResponseMapOutput) MapIndex added in v3.25.0

func (RouteResponseMapOutput) ToRouteResponseMapOutput added in v3.25.0

func (o RouteResponseMapOutput) ToRouteResponseMapOutput() RouteResponseMapOutput

func (RouteResponseMapOutput) ToRouteResponseMapOutputWithContext added in v3.25.0

func (o RouteResponseMapOutput) ToRouteResponseMapOutputWithContext(ctx context.Context) RouteResponseMapOutput

type RouteResponseOutput added in v3.13.0

type RouteResponseOutput struct {
	*pulumi.OutputState
}

func (RouteResponseOutput) ElementType added in v3.13.0

func (RouteResponseOutput) ElementType() reflect.Type

func (RouteResponseOutput) ToRouteResponseOutput added in v3.13.0

func (o RouteResponseOutput) ToRouteResponseOutput() RouteResponseOutput

func (RouteResponseOutput) ToRouteResponseOutputWithContext added in v3.13.0

func (o RouteResponseOutput) ToRouteResponseOutputWithContext(ctx context.Context) RouteResponseOutput

func (RouteResponseOutput) ToRouteResponsePtrOutput added in v3.25.0

func (o RouteResponseOutput) ToRouteResponsePtrOutput() RouteResponsePtrOutput

func (RouteResponseOutput) ToRouteResponsePtrOutputWithContext added in v3.25.0

func (o RouteResponseOutput) ToRouteResponsePtrOutputWithContext(ctx context.Context) RouteResponsePtrOutput

type RouteResponsePtrInput added in v3.25.0

type RouteResponsePtrInput interface {
	pulumi.Input

	ToRouteResponsePtrOutput() RouteResponsePtrOutput
	ToRouteResponsePtrOutputWithContext(ctx context.Context) RouteResponsePtrOutput
}

type RouteResponsePtrOutput added in v3.25.0

type RouteResponsePtrOutput struct {
	*pulumi.OutputState
}

func (RouteResponsePtrOutput) ElementType added in v3.25.0

func (RouteResponsePtrOutput) ElementType() reflect.Type

func (RouteResponsePtrOutput) ToRouteResponsePtrOutput added in v3.25.0

func (o RouteResponsePtrOutput) ToRouteResponsePtrOutput() RouteResponsePtrOutput

func (RouteResponsePtrOutput) ToRouteResponsePtrOutputWithContext added in v3.25.0

func (o RouteResponsePtrOutput) ToRouteResponsePtrOutputWithContext(ctx context.Context) RouteResponsePtrOutput

type RouteResponseState

type RouteResponseState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// The [model selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) for the route response.
	ModelSelectionExpression pulumi.StringPtrInput
	// The response models for the route response.
	ResponseModels pulumi.StringMapInput
	// The identifier of the `apigatewayv2.Route`.
	RouteId pulumi.StringPtrInput
	// The route response key.
	RouteResponseKey pulumi.StringPtrInput
}

func (RouteResponseState) ElementType

func (RouteResponseState) ElementType() reflect.Type

type RouteState

type RouteState struct {
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// Boolean whether an API key is required for the route. Defaults to `false`. Supported only for WebSocket APIs.
	ApiKeyRequired pulumi.BoolPtrInput
	// The authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.
	AuthorizationScopes pulumi.StringArrayInput
	// The authorization type for the route.
	// For WebSocket APIs, valid values are `NONE` for open access, `AWS_IAM` for using AWS IAM permissions, and `CUSTOM` for using a Lambda authorizer.
	// For HTTP APIs, valid values are `NONE` for open access, `JWT` for using JSON Web Tokens, `AWS_IAM` for using AWS IAM permissions, and `CUSTOM` for using a Lambda authorizer.
	// Defaults to `NONE`.
	AuthorizationType pulumi.StringPtrInput
	// The identifier of the `apigatewayv2.Authorizer` resource to be associated with this route.
	AuthorizerId pulumi.StringPtrInput
	// The [model selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) for the route. Supported only for WebSocket APIs.
	ModelSelectionExpression pulumi.StringPtrInput
	// The operation name for the route. Must be between 1 and 64 characters in length.
	OperationName pulumi.StringPtrInput
	// The request models for the route. Supported only for WebSocket APIs.
	RequestModels pulumi.StringMapInput
	// The request parameters for the route. Supported only for WebSocket APIs.
	RequestParameters RouteRequestParameterArrayInput
	// The route key for the route. For HTTP APIs, the route key can be either `$default`, or a combination of an HTTP method and resource path, for example, `GET /pets`.
	RouteKey pulumi.StringPtrInput
	// The [route response selection expression](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-route-response-selection-expressions) for the route. Supported only for WebSocket APIs.
	RouteResponseSelectionExpression pulumi.StringPtrInput
	// The target for the route, of the form `integrations/`*`IntegrationID`*, where *`IntegrationID`* is the identifier of an `apigatewayv2.Integration` resource.
	Target pulumi.StringPtrInput
}

func (RouteState) ElementType

func (RouteState) ElementType() reflect.Type

type Stage

type Stage struct {
	pulumi.CustomResourceState

	// Settings for logging access in this stage.
	// Use the `apigateway.Account` resource to configure [permissions for CloudWatch Logging](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html#set-up-access-logging-permissions).
	AccessLogSettings StageAccessLogSettingsPtrOutput `pulumi:"accessLogSettings"`
	// The API identifier.
	ApiId pulumi.StringOutput `pulumi:"apiId"`
	// The ARN of the stage.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether updates to an API automatically trigger a new deployment. Defaults to `false`.
	AutoDeploy pulumi.BoolPtrOutput `pulumi:"autoDeploy"`
	// The identifier of a client certificate for the stage. Use the `apigateway.ClientCertificate` resource to configure a client certificate.
	// Supported only for WebSocket APIs.
	ClientCertificateId pulumi.StringPtrOutput `pulumi:"clientCertificateId"`
	// The default route settings for the stage.
	DefaultRouteSettings StageDefaultRouteSettingsPtrOutput `pulumi:"defaultRouteSettings"`
	// The deployment identifier of the stage. Use the `apigatewayv2.Deployment` resource to configure a deployment.
	DeploymentId pulumi.StringOutput `pulumi:"deploymentId"`
	// The description for the stage. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The ARN prefix to be used in an `lambda.Permission` `sourceArn` attribute.
	// For WebSocket APIs this attribute can additionally be used in an `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.
	ExecutionArn pulumi.StringOutput `pulumi:"executionArn"`
	// The URL to invoke the API pointing to the stage,
	// e.g. `wss://z4675bid1j.execute-api.eu-west-2.amazonaws.com/example-stage`, or `https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/`
	InvokeUrl pulumi.StringOutput `pulumi:"invokeUrl"`
	// The name of the stage. Must be between 1 and 128 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
	// Route settings for the stage.
	RouteSettings StageRouteSettingArrayOutput `pulumi:"routeSettings"`
	// A map that defines the stage variables for the stage.
	StageVariables pulumi.StringMapOutput `pulumi:"stageVariables"`
	// A map of tags to assign to the stage.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages an Amazon API Gateway Version 2 stage. More information can be found in the [Amazon API Gateway Developer Guide](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html).

## Example Usage ### Basic

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewStage(ctx, "example", &apigatewayv2.StageArgs{
			ApiId: pulumi.Any(aws_apigatewayv2_api.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_stage` can be imported by using the API identifier and stage name, e.g.

```sh

$ pulumi import aws:apigatewayv2/stage:Stage example aabbccddee/example-stage

```

func GetStage

func GetStage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *StageState, opts ...pulumi.ResourceOption) (*Stage, error)

GetStage gets an existing Stage resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewStage

func NewStage(ctx *pulumi.Context,
	name string, args *StageArgs, opts ...pulumi.ResourceOption) (*Stage, error)

NewStage registers a new resource with the given unique name, arguments, and options.

func (*Stage) ElementType added in v3.13.0

func (*Stage) ElementType() reflect.Type

func (*Stage) ToStageOutput added in v3.13.0

func (i *Stage) ToStageOutput() StageOutput

func (*Stage) ToStageOutputWithContext added in v3.13.0

func (i *Stage) ToStageOutputWithContext(ctx context.Context) StageOutput

func (*Stage) ToStagePtrOutput added in v3.25.0

func (i *Stage) ToStagePtrOutput() StagePtrOutput

func (*Stage) ToStagePtrOutputWithContext added in v3.25.0

func (i *Stage) ToStagePtrOutputWithContext(ctx context.Context) StagePtrOutput

type StageAccessLogSettings

type StageAccessLogSettings struct {
	// The ARN of the CloudWatch Logs log group to receive access logs. Any trailing `:*` is trimmed from the ARN.
	DestinationArn string `pulumi:"destinationArn"`
	// A single line [format](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html#apigateway-cloudwatch-log-formats) of the access logs of data, as specified by [selected $context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-logging.html).
	Format string `pulumi:"format"`
}

type StageAccessLogSettingsArgs

type StageAccessLogSettingsArgs struct {
	// The ARN of the CloudWatch Logs log group to receive access logs. Any trailing `:*` is trimmed from the ARN.
	DestinationArn pulumi.StringInput `pulumi:"destinationArn"`
	// A single line [format](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html#apigateway-cloudwatch-log-formats) of the access logs of data, as specified by [selected $context variables](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-logging.html).
	Format pulumi.StringInput `pulumi:"format"`
}

func (StageAccessLogSettingsArgs) ElementType

func (StageAccessLogSettingsArgs) ElementType() reflect.Type

func (StageAccessLogSettingsArgs) ToStageAccessLogSettingsOutput

func (i StageAccessLogSettingsArgs) ToStageAccessLogSettingsOutput() StageAccessLogSettingsOutput

func (StageAccessLogSettingsArgs) ToStageAccessLogSettingsOutputWithContext

func (i StageAccessLogSettingsArgs) ToStageAccessLogSettingsOutputWithContext(ctx context.Context) StageAccessLogSettingsOutput

func (StageAccessLogSettingsArgs) ToStageAccessLogSettingsPtrOutput

func (i StageAccessLogSettingsArgs) ToStageAccessLogSettingsPtrOutput() StageAccessLogSettingsPtrOutput

func (StageAccessLogSettingsArgs) ToStageAccessLogSettingsPtrOutputWithContext

func (i StageAccessLogSettingsArgs) ToStageAccessLogSettingsPtrOutputWithContext(ctx context.Context) StageAccessLogSettingsPtrOutput

type StageAccessLogSettingsInput

type StageAccessLogSettingsInput interface {
	pulumi.Input

	ToStageAccessLogSettingsOutput() StageAccessLogSettingsOutput
	ToStageAccessLogSettingsOutputWithContext(context.Context) StageAccessLogSettingsOutput
}

StageAccessLogSettingsInput is an input type that accepts StageAccessLogSettingsArgs and StageAccessLogSettingsOutput values. You can construct a concrete instance of `StageAccessLogSettingsInput` via:

StageAccessLogSettingsArgs{...}

type StageAccessLogSettingsOutput

type StageAccessLogSettingsOutput struct{ *pulumi.OutputState }

func (StageAccessLogSettingsOutput) DestinationArn

The ARN of the CloudWatch Logs log group to receive access logs. Any trailing `:*` is trimmed from the ARN.

func (StageAccessLogSettingsOutput) ElementType

func (StageAccessLogSettingsOutput) ToStageAccessLogSettingsOutput

func (o StageAccessLogSettingsOutput) ToStageAccessLogSettingsOutput() StageAccessLogSettingsOutput

func (StageAccessLogSettingsOutput) ToStageAccessLogSettingsOutputWithContext

func (o StageAccessLogSettingsOutput) ToStageAccessLogSettingsOutputWithContext(ctx context.Context) StageAccessLogSettingsOutput

func (StageAccessLogSettingsOutput) ToStageAccessLogSettingsPtrOutput

func (o StageAccessLogSettingsOutput) ToStageAccessLogSettingsPtrOutput() StageAccessLogSettingsPtrOutput

func (StageAccessLogSettingsOutput) ToStageAccessLogSettingsPtrOutputWithContext

func (o StageAccessLogSettingsOutput) ToStageAccessLogSettingsPtrOutputWithContext(ctx context.Context) StageAccessLogSettingsPtrOutput

type StageAccessLogSettingsPtrInput

type StageAccessLogSettingsPtrInput interface {
	pulumi.Input

	ToStageAccessLogSettingsPtrOutput() StageAccessLogSettingsPtrOutput
	ToStageAccessLogSettingsPtrOutputWithContext(context.Context) StageAccessLogSettingsPtrOutput
}

StageAccessLogSettingsPtrInput is an input type that accepts StageAccessLogSettingsArgs, StageAccessLogSettingsPtr and StageAccessLogSettingsPtrOutput values. You can construct a concrete instance of `StageAccessLogSettingsPtrInput` via:

        StageAccessLogSettingsArgs{...}

or:

        nil

type StageAccessLogSettingsPtrOutput

type StageAccessLogSettingsPtrOutput struct{ *pulumi.OutputState }

func (StageAccessLogSettingsPtrOutput) DestinationArn

The ARN of the CloudWatch Logs log group to receive access logs. Any trailing `:*` is trimmed from the ARN.

func (StageAccessLogSettingsPtrOutput) Elem

func (StageAccessLogSettingsPtrOutput) ElementType

func (StageAccessLogSettingsPtrOutput) ToStageAccessLogSettingsPtrOutput

func (o StageAccessLogSettingsPtrOutput) ToStageAccessLogSettingsPtrOutput() StageAccessLogSettingsPtrOutput

func (StageAccessLogSettingsPtrOutput) ToStageAccessLogSettingsPtrOutputWithContext

func (o StageAccessLogSettingsPtrOutput) ToStageAccessLogSettingsPtrOutputWithContext(ctx context.Context) StageAccessLogSettingsPtrOutput

type StageArgs

type StageArgs struct {
	// Settings for logging access in this stage.
	// Use the `apigateway.Account` resource to configure [permissions for CloudWatch Logging](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html#set-up-access-logging-permissions).
	AccessLogSettings StageAccessLogSettingsPtrInput
	// The API identifier.
	ApiId pulumi.StringInput
	// Whether updates to an API automatically trigger a new deployment. Defaults to `false`.
	AutoDeploy pulumi.BoolPtrInput
	// The identifier of a client certificate for the stage. Use the `apigateway.ClientCertificate` resource to configure a client certificate.
	// Supported only for WebSocket APIs.
	ClientCertificateId pulumi.StringPtrInput
	// The default route settings for the stage.
	DefaultRouteSettings StageDefaultRouteSettingsPtrInput
	// The deployment identifier of the stage. Use the `apigatewayv2.Deployment` resource to configure a deployment.
	DeploymentId pulumi.StringPtrInput
	// The description for the stage. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrInput
	// The name of the stage. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
	// Route settings for the stage.
	RouteSettings StageRouteSettingArrayInput
	// A map that defines the stage variables for the stage.
	StageVariables pulumi.StringMapInput
	// A map of tags to assign to the stage.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Stage resource.

func (StageArgs) ElementType

func (StageArgs) ElementType() reflect.Type

type StageArray added in v3.25.0

type StageArray []StageInput

func (StageArray) ElementType added in v3.25.0

func (StageArray) ElementType() reflect.Type

func (StageArray) ToStageArrayOutput added in v3.25.0

func (i StageArray) ToStageArrayOutput() StageArrayOutput

func (StageArray) ToStageArrayOutputWithContext added in v3.25.0

func (i StageArray) ToStageArrayOutputWithContext(ctx context.Context) StageArrayOutput

type StageArrayInput added in v3.25.0

type StageArrayInput interface {
	pulumi.Input

	ToStageArrayOutput() StageArrayOutput
	ToStageArrayOutputWithContext(context.Context) StageArrayOutput
}

StageArrayInput is an input type that accepts StageArray and StageArrayOutput values. You can construct a concrete instance of `StageArrayInput` via:

StageArray{ StageArgs{...} }

type StageArrayOutput added in v3.25.0

type StageArrayOutput struct{ *pulumi.OutputState }

func (StageArrayOutput) ElementType added in v3.25.0

func (StageArrayOutput) ElementType() reflect.Type

func (StageArrayOutput) Index added in v3.25.0

func (StageArrayOutput) ToStageArrayOutput added in v3.25.0

func (o StageArrayOutput) ToStageArrayOutput() StageArrayOutput

func (StageArrayOutput) ToStageArrayOutputWithContext added in v3.25.0

func (o StageArrayOutput) ToStageArrayOutputWithContext(ctx context.Context) StageArrayOutput

type StageDefaultRouteSettings

type StageDefaultRouteSettings struct {
	// Whether data trace logging is enabled for the default route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Defaults to `false`. Supported only for WebSocket APIs.
	DataTraceEnabled *bool `pulumi:"dataTraceEnabled"`
	// Whether detailed metrics are enabled for the default route. Defaults to `false`.
	DetailedMetricsEnabled *bool `pulumi:"detailedMetricsEnabled"`
	// The logging level for the default route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Valid values: `ERROR`, `INFO`, `OFF`. Defaults to `OFF`. Supported only for WebSocket APIs. This provider will only perform drift detection of its value when present in a configuration.
	LoggingLevel *string `pulumi:"loggingLevel"`
	// The throttling burst limit for the default route.
	ThrottlingBurstLimit *int `pulumi:"throttlingBurstLimit"`
	// The throttling rate limit for the default route.
	ThrottlingRateLimit *float64 `pulumi:"throttlingRateLimit"`
}

type StageDefaultRouteSettingsArgs

type StageDefaultRouteSettingsArgs struct {
	// Whether data trace logging is enabled for the default route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Defaults to `false`. Supported only for WebSocket APIs.
	DataTraceEnabled pulumi.BoolPtrInput `pulumi:"dataTraceEnabled"`
	// Whether detailed metrics are enabled for the default route. Defaults to `false`.
	DetailedMetricsEnabled pulumi.BoolPtrInput `pulumi:"detailedMetricsEnabled"`
	// The logging level for the default route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Valid values: `ERROR`, `INFO`, `OFF`. Defaults to `OFF`. Supported only for WebSocket APIs. This provider will only perform drift detection of its value when present in a configuration.
	LoggingLevel pulumi.StringPtrInput `pulumi:"loggingLevel"`
	// The throttling burst limit for the default route.
	ThrottlingBurstLimit pulumi.IntPtrInput `pulumi:"throttlingBurstLimit"`
	// The throttling rate limit for the default route.
	ThrottlingRateLimit pulumi.Float64PtrInput `pulumi:"throttlingRateLimit"`
}

func (StageDefaultRouteSettingsArgs) ElementType

func (StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsOutput

func (i StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsOutput() StageDefaultRouteSettingsOutput

func (StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsOutputWithContext

func (i StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsOutputWithContext(ctx context.Context) StageDefaultRouteSettingsOutput

func (StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsPtrOutput

func (i StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsPtrOutput() StageDefaultRouteSettingsPtrOutput

func (StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsPtrOutputWithContext

func (i StageDefaultRouteSettingsArgs) ToStageDefaultRouteSettingsPtrOutputWithContext(ctx context.Context) StageDefaultRouteSettingsPtrOutput

type StageDefaultRouteSettingsInput

type StageDefaultRouteSettingsInput interface {
	pulumi.Input

	ToStageDefaultRouteSettingsOutput() StageDefaultRouteSettingsOutput
	ToStageDefaultRouteSettingsOutputWithContext(context.Context) StageDefaultRouteSettingsOutput
}

StageDefaultRouteSettingsInput is an input type that accepts StageDefaultRouteSettingsArgs and StageDefaultRouteSettingsOutput values. You can construct a concrete instance of `StageDefaultRouteSettingsInput` via:

StageDefaultRouteSettingsArgs{...}

type StageDefaultRouteSettingsOutput

type StageDefaultRouteSettingsOutput struct{ *pulumi.OutputState }

func (StageDefaultRouteSettingsOutput) DataTraceEnabled

Whether data trace logging is enabled for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to `false`. Supported only for WebSocket APIs.

func (StageDefaultRouteSettingsOutput) DetailedMetricsEnabled

func (o StageDefaultRouteSettingsOutput) DetailedMetricsEnabled() pulumi.BoolPtrOutput

Whether detailed metrics are enabled for the default route. Defaults to `false`.

func (StageDefaultRouteSettingsOutput) ElementType

func (StageDefaultRouteSettingsOutput) LoggingLevel

The logging level for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: `ERROR`, `INFO`, `OFF`. Defaults to `OFF`. Supported only for WebSocket APIs. This provider will only perform drift detection of its value when present in a configuration.

func (StageDefaultRouteSettingsOutput) ThrottlingBurstLimit

func (o StageDefaultRouteSettingsOutput) ThrottlingBurstLimit() pulumi.IntPtrOutput

The throttling burst limit for the default route.

func (StageDefaultRouteSettingsOutput) ThrottlingRateLimit

The throttling rate limit for the default route.

func (StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsOutput

func (o StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsOutput() StageDefaultRouteSettingsOutput

func (StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsOutputWithContext

func (o StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsOutputWithContext(ctx context.Context) StageDefaultRouteSettingsOutput

func (StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsPtrOutput

func (o StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsPtrOutput() StageDefaultRouteSettingsPtrOutput

func (StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsPtrOutputWithContext

func (o StageDefaultRouteSettingsOutput) ToStageDefaultRouteSettingsPtrOutputWithContext(ctx context.Context) StageDefaultRouteSettingsPtrOutput

type StageDefaultRouteSettingsPtrInput

type StageDefaultRouteSettingsPtrInput interface {
	pulumi.Input

	ToStageDefaultRouteSettingsPtrOutput() StageDefaultRouteSettingsPtrOutput
	ToStageDefaultRouteSettingsPtrOutputWithContext(context.Context) StageDefaultRouteSettingsPtrOutput
}

StageDefaultRouteSettingsPtrInput is an input type that accepts StageDefaultRouteSettingsArgs, StageDefaultRouteSettingsPtr and StageDefaultRouteSettingsPtrOutput values. You can construct a concrete instance of `StageDefaultRouteSettingsPtrInput` via:

        StageDefaultRouteSettingsArgs{...}

or:

        nil

type StageDefaultRouteSettingsPtrOutput

type StageDefaultRouteSettingsPtrOutput struct{ *pulumi.OutputState }

func (StageDefaultRouteSettingsPtrOutput) DataTraceEnabled

Whether data trace logging is enabled for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to `false`. Supported only for WebSocket APIs.

func (StageDefaultRouteSettingsPtrOutput) DetailedMetricsEnabled

func (o StageDefaultRouteSettingsPtrOutput) DetailedMetricsEnabled() pulumi.BoolPtrOutput

Whether detailed metrics are enabled for the default route. Defaults to `false`.

func (StageDefaultRouteSettingsPtrOutput) Elem

func (StageDefaultRouteSettingsPtrOutput) ElementType

func (StageDefaultRouteSettingsPtrOutput) LoggingLevel

The logging level for the default route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: `ERROR`, `INFO`, `OFF`. Defaults to `OFF`. Supported only for WebSocket APIs. This provider will only perform drift detection of its value when present in a configuration.

func (StageDefaultRouteSettingsPtrOutput) ThrottlingBurstLimit

func (o StageDefaultRouteSettingsPtrOutput) ThrottlingBurstLimit() pulumi.IntPtrOutput

The throttling burst limit for the default route.

func (StageDefaultRouteSettingsPtrOutput) ThrottlingRateLimit

The throttling rate limit for the default route.

func (StageDefaultRouteSettingsPtrOutput) ToStageDefaultRouteSettingsPtrOutput

func (o StageDefaultRouteSettingsPtrOutput) ToStageDefaultRouteSettingsPtrOutput() StageDefaultRouteSettingsPtrOutput

func (StageDefaultRouteSettingsPtrOutput) ToStageDefaultRouteSettingsPtrOutputWithContext

func (o StageDefaultRouteSettingsPtrOutput) ToStageDefaultRouteSettingsPtrOutputWithContext(ctx context.Context) StageDefaultRouteSettingsPtrOutput

type StageInput added in v3.13.0

type StageInput interface {
	pulumi.Input

	ToStageOutput() StageOutput
	ToStageOutputWithContext(ctx context.Context) StageOutput
}

type StageMap added in v3.25.0

type StageMap map[string]StageInput

func (StageMap) ElementType added in v3.25.0

func (StageMap) ElementType() reflect.Type

func (StageMap) ToStageMapOutput added in v3.25.0

func (i StageMap) ToStageMapOutput() StageMapOutput

func (StageMap) ToStageMapOutputWithContext added in v3.25.0

func (i StageMap) ToStageMapOutputWithContext(ctx context.Context) StageMapOutput

type StageMapInput added in v3.25.0

type StageMapInput interface {
	pulumi.Input

	ToStageMapOutput() StageMapOutput
	ToStageMapOutputWithContext(context.Context) StageMapOutput
}

StageMapInput is an input type that accepts StageMap and StageMapOutput values. You can construct a concrete instance of `StageMapInput` via:

StageMap{ "key": StageArgs{...} }

type StageMapOutput added in v3.25.0

type StageMapOutput struct{ *pulumi.OutputState }

func (StageMapOutput) ElementType added in v3.25.0

func (StageMapOutput) ElementType() reflect.Type

func (StageMapOutput) MapIndex added in v3.25.0

func (StageMapOutput) ToStageMapOutput added in v3.25.0

func (o StageMapOutput) ToStageMapOutput() StageMapOutput

func (StageMapOutput) ToStageMapOutputWithContext added in v3.25.0

func (o StageMapOutput) ToStageMapOutputWithContext(ctx context.Context) StageMapOutput

type StageOutput added in v3.13.0

type StageOutput struct {
	*pulumi.OutputState
}

func (StageOutput) ElementType added in v3.13.0

func (StageOutput) ElementType() reflect.Type

func (StageOutput) ToStageOutput added in v3.13.0

func (o StageOutput) ToStageOutput() StageOutput

func (StageOutput) ToStageOutputWithContext added in v3.13.0

func (o StageOutput) ToStageOutputWithContext(ctx context.Context) StageOutput

func (StageOutput) ToStagePtrOutput added in v3.25.0

func (o StageOutput) ToStagePtrOutput() StagePtrOutput

func (StageOutput) ToStagePtrOutputWithContext added in v3.25.0

func (o StageOutput) ToStagePtrOutputWithContext(ctx context.Context) StagePtrOutput

type StagePtrInput added in v3.25.0

type StagePtrInput interface {
	pulumi.Input

	ToStagePtrOutput() StagePtrOutput
	ToStagePtrOutputWithContext(ctx context.Context) StagePtrOutput
}

type StagePtrOutput added in v3.25.0

type StagePtrOutput struct {
	*pulumi.OutputState
}

func (StagePtrOutput) ElementType added in v3.25.0

func (StagePtrOutput) ElementType() reflect.Type

func (StagePtrOutput) ToStagePtrOutput added in v3.25.0

func (o StagePtrOutput) ToStagePtrOutput() StagePtrOutput

func (StagePtrOutput) ToStagePtrOutputWithContext added in v3.25.0

func (o StagePtrOutput) ToStagePtrOutputWithContext(ctx context.Context) StagePtrOutput

type StageRouteSetting

type StageRouteSetting struct {
	// Whether data trace logging is enabled for the route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Defaults to `false`. Supported only for WebSocket APIs.
	DataTraceEnabled *bool `pulumi:"dataTraceEnabled"`
	// Whether detailed metrics are enabled for the route. Defaults to `false`.
	DetailedMetricsEnabled *bool `pulumi:"detailedMetricsEnabled"`
	// The logging level for the route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Valid values: `ERROR`, `INFO`, `OFF`. Defaults to `OFF`. Supported only for WebSocket APIs. This provider will only perform drift detection of its value when present in a configuration.
	LoggingLevel *string `pulumi:"loggingLevel"`
	// Route key.
	RouteKey string `pulumi:"routeKey"`
	// The throttling burst limit for the route.
	ThrottlingBurstLimit *int `pulumi:"throttlingBurstLimit"`
	// The throttling rate limit for the route.
	ThrottlingRateLimit *float64 `pulumi:"throttlingRateLimit"`
}

type StageRouteSettingArgs

type StageRouteSettingArgs struct {
	// Whether data trace logging is enabled for the route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Defaults to `false`. Supported only for WebSocket APIs.
	DataTraceEnabled pulumi.BoolPtrInput `pulumi:"dataTraceEnabled"`
	// Whether detailed metrics are enabled for the route. Defaults to `false`.
	DetailedMetricsEnabled pulumi.BoolPtrInput `pulumi:"detailedMetricsEnabled"`
	// The logging level for the route. Affects the log entries pushed to Amazon CloudWatch Logs.
	// Valid values: `ERROR`, `INFO`, `OFF`. Defaults to `OFF`. Supported only for WebSocket APIs. This provider will only perform drift detection of its value when present in a configuration.
	LoggingLevel pulumi.StringPtrInput `pulumi:"loggingLevel"`
	// Route key.
	RouteKey pulumi.StringInput `pulumi:"routeKey"`
	// The throttling burst limit for the route.
	ThrottlingBurstLimit pulumi.IntPtrInput `pulumi:"throttlingBurstLimit"`
	// The throttling rate limit for the route.
	ThrottlingRateLimit pulumi.Float64PtrInput `pulumi:"throttlingRateLimit"`
}

func (StageRouteSettingArgs) ElementType

func (StageRouteSettingArgs) ElementType() reflect.Type

func (StageRouteSettingArgs) ToStageRouteSettingOutput

func (i StageRouteSettingArgs) ToStageRouteSettingOutput() StageRouteSettingOutput

func (StageRouteSettingArgs) ToStageRouteSettingOutputWithContext

func (i StageRouteSettingArgs) ToStageRouteSettingOutputWithContext(ctx context.Context) StageRouteSettingOutput

type StageRouteSettingArray

type StageRouteSettingArray []StageRouteSettingInput

func (StageRouteSettingArray) ElementType

func (StageRouteSettingArray) ElementType() reflect.Type

func (StageRouteSettingArray) ToStageRouteSettingArrayOutput

func (i StageRouteSettingArray) ToStageRouteSettingArrayOutput() StageRouteSettingArrayOutput

func (StageRouteSettingArray) ToStageRouteSettingArrayOutputWithContext

func (i StageRouteSettingArray) ToStageRouteSettingArrayOutputWithContext(ctx context.Context) StageRouteSettingArrayOutput

type StageRouteSettingArrayInput

type StageRouteSettingArrayInput interface {
	pulumi.Input

	ToStageRouteSettingArrayOutput() StageRouteSettingArrayOutput
	ToStageRouteSettingArrayOutputWithContext(context.Context) StageRouteSettingArrayOutput
}

StageRouteSettingArrayInput is an input type that accepts StageRouteSettingArray and StageRouteSettingArrayOutput values. You can construct a concrete instance of `StageRouteSettingArrayInput` via:

StageRouteSettingArray{ StageRouteSettingArgs{...} }

type StageRouteSettingArrayOutput

type StageRouteSettingArrayOutput struct{ *pulumi.OutputState }

func (StageRouteSettingArrayOutput) ElementType

func (StageRouteSettingArrayOutput) Index

func (StageRouteSettingArrayOutput) ToStageRouteSettingArrayOutput

func (o StageRouteSettingArrayOutput) ToStageRouteSettingArrayOutput() StageRouteSettingArrayOutput

func (StageRouteSettingArrayOutput) ToStageRouteSettingArrayOutputWithContext

func (o StageRouteSettingArrayOutput) ToStageRouteSettingArrayOutputWithContext(ctx context.Context) StageRouteSettingArrayOutput

type StageRouteSettingInput

type StageRouteSettingInput interface {
	pulumi.Input

	ToStageRouteSettingOutput() StageRouteSettingOutput
	ToStageRouteSettingOutputWithContext(context.Context) StageRouteSettingOutput
}

StageRouteSettingInput is an input type that accepts StageRouteSettingArgs and StageRouteSettingOutput values. You can construct a concrete instance of `StageRouteSettingInput` via:

StageRouteSettingArgs{...}

type StageRouteSettingOutput

type StageRouteSettingOutput struct{ *pulumi.OutputState }

func (StageRouteSettingOutput) DataTraceEnabled

func (o StageRouteSettingOutput) DataTraceEnabled() pulumi.BoolPtrOutput

Whether data trace logging is enabled for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Defaults to `false`. Supported only for WebSocket APIs.

func (StageRouteSettingOutput) DetailedMetricsEnabled

func (o StageRouteSettingOutput) DetailedMetricsEnabled() pulumi.BoolPtrOutput

Whether detailed metrics are enabled for the route. Defaults to `false`.

func (StageRouteSettingOutput) ElementType

func (StageRouteSettingOutput) ElementType() reflect.Type

func (StageRouteSettingOutput) LoggingLevel

The logging level for the route. Affects the log entries pushed to Amazon CloudWatch Logs. Valid values: `ERROR`, `INFO`, `OFF`. Defaults to `OFF`. Supported only for WebSocket APIs. This provider will only perform drift detection of its value when present in a configuration.

func (StageRouteSettingOutput) RouteKey

Route key.

func (StageRouteSettingOutput) ThrottlingBurstLimit

func (o StageRouteSettingOutput) ThrottlingBurstLimit() pulumi.IntPtrOutput

The throttling burst limit for the route.

func (StageRouteSettingOutput) ThrottlingRateLimit

func (o StageRouteSettingOutput) ThrottlingRateLimit() pulumi.Float64PtrOutput

The throttling rate limit for the route.

func (StageRouteSettingOutput) ToStageRouteSettingOutput

func (o StageRouteSettingOutput) ToStageRouteSettingOutput() StageRouteSettingOutput

func (StageRouteSettingOutput) ToStageRouteSettingOutputWithContext

func (o StageRouteSettingOutput) ToStageRouteSettingOutputWithContext(ctx context.Context) StageRouteSettingOutput

type StageState

type StageState struct {
	// Settings for logging access in this stage.
	// Use the `apigateway.Account` resource to configure [permissions for CloudWatch Logging](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html#set-up-access-logging-permissions).
	AccessLogSettings StageAccessLogSettingsPtrInput
	// The API identifier.
	ApiId pulumi.StringPtrInput
	// The ARN of the stage.
	Arn pulumi.StringPtrInput
	// Whether updates to an API automatically trigger a new deployment. Defaults to `false`.
	AutoDeploy pulumi.BoolPtrInput
	// The identifier of a client certificate for the stage. Use the `apigateway.ClientCertificate` resource to configure a client certificate.
	// Supported only for WebSocket APIs.
	ClientCertificateId pulumi.StringPtrInput
	// The default route settings for the stage.
	DefaultRouteSettings StageDefaultRouteSettingsPtrInput
	// The deployment identifier of the stage. Use the `apigatewayv2.Deployment` resource to configure a deployment.
	DeploymentId pulumi.StringPtrInput
	// The description for the stage. Must be less than or equal to 1024 characters in length.
	Description pulumi.StringPtrInput
	// The ARN prefix to be used in an `lambda.Permission` `sourceArn` attribute.
	// For WebSocket APIs this attribute can additionally be used in an `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.
	ExecutionArn pulumi.StringPtrInput
	// The URL to invoke the API pointing to the stage,
	// e.g. `wss://z4675bid1j.execute-api.eu-west-2.amazonaws.com/example-stage`, or `https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/`
	InvokeUrl pulumi.StringPtrInput
	// The name of the stage. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
	// Route settings for the stage.
	RouteSettings StageRouteSettingArrayInput
	// A map that defines the stage variables for the stage.
	StageVariables pulumi.StringMapInput
	// A map of tags to assign to the stage.
	Tags pulumi.StringMapInput
}

func (StageState) ElementType

func (StageState) ElementType() reflect.Type
type VpcLink struct {
	pulumi.CustomResourceState

	// The VPC Link ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name of the VPC Link. Must be between 1 and 128 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
	// Security group IDs for the VPC Link.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// Subnet IDs for the VPC Link.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// A map of tags to assign to the VPC Link.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages an Amazon API Gateway Version 2 VPC Link.

> **Note:** Amazon API Gateway Version 2 VPC Links enable private integrations that connect HTTP APIs to private resources in a VPC. To enable private integration for REST APIs, use the `Amazon API Gateway Version 1 VPC Link` resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.NewVpcLink(ctx, "example", &apigatewayv2.VpcLinkArgs{
			SecurityGroupIds: pulumi.StringArray{
				pulumi.Any(data.Aws_security_group.Example.Id),
			},
			SubnetIds: data.Aws_subnet_ids.Example.Ids,
			Tags: pulumi.StringMap{
				"Usage": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_apigatewayv2_vpc_link` can be imported by using the VPC Link identifier, e.g.

```sh

$ pulumi import aws:apigatewayv2/vpcLink:VpcLink example aabbccddee

```

func GetVpcLink(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcLinkState, opts ...pulumi.ResourceOption) (*VpcLink, error)

GetVpcLink gets an existing VpcLink resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcLink(ctx *pulumi.Context,
	name string, args *VpcLinkArgs, opts ...pulumi.ResourceOption) (*VpcLink, error)

NewVpcLink registers a new resource with the given unique name, arguments, and options.

func (*VpcLink) ElementType added in v3.13.0

func (*VpcLink) ElementType() reflect.Type

func (*VpcLink) ToVpcLinkOutput added in v3.13.0

func (i *VpcLink) ToVpcLinkOutput() VpcLinkOutput

func (*VpcLink) ToVpcLinkOutputWithContext added in v3.13.0

func (i *VpcLink) ToVpcLinkOutputWithContext(ctx context.Context) VpcLinkOutput

func (*VpcLink) ToVpcLinkPtrOutput added in v3.25.0

func (i *VpcLink) ToVpcLinkPtrOutput() VpcLinkPtrOutput

func (*VpcLink) ToVpcLinkPtrOutputWithContext added in v3.25.0

func (i *VpcLink) ToVpcLinkPtrOutputWithContext(ctx context.Context) VpcLinkPtrOutput

type VpcLinkArgs

type VpcLinkArgs struct {
	// The name of the VPC Link. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
	// Security group IDs for the VPC Link.
	SecurityGroupIds pulumi.StringArrayInput
	// Subnet IDs for the VPC Link.
	SubnetIds pulumi.StringArrayInput
	// A map of tags to assign to the VPC Link.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a VpcLink resource.

func (VpcLinkArgs) ElementType

func (VpcLinkArgs) ElementType() reflect.Type

type VpcLinkArray added in v3.25.0

type VpcLinkArray []VpcLinkInput

func (VpcLinkArray) ElementType added in v3.25.0

func (VpcLinkArray) ElementType() reflect.Type

func (VpcLinkArray) ToVpcLinkArrayOutput added in v3.25.0

func (i VpcLinkArray) ToVpcLinkArrayOutput() VpcLinkArrayOutput

func (VpcLinkArray) ToVpcLinkArrayOutputWithContext added in v3.25.0

func (i VpcLinkArray) ToVpcLinkArrayOutputWithContext(ctx context.Context) VpcLinkArrayOutput

type VpcLinkArrayInput added in v3.25.0

type VpcLinkArrayInput interface {
	pulumi.Input

	ToVpcLinkArrayOutput() VpcLinkArrayOutput
	ToVpcLinkArrayOutputWithContext(context.Context) VpcLinkArrayOutput
}

VpcLinkArrayInput is an input type that accepts VpcLinkArray and VpcLinkArrayOutput values. You can construct a concrete instance of `VpcLinkArrayInput` via:

VpcLinkArray{ VpcLinkArgs{...} }

type VpcLinkArrayOutput added in v3.25.0

type VpcLinkArrayOutput struct{ *pulumi.OutputState }

func (VpcLinkArrayOutput) ElementType added in v3.25.0

func (VpcLinkArrayOutput) ElementType() reflect.Type

func (VpcLinkArrayOutput) Index added in v3.25.0

func (VpcLinkArrayOutput) ToVpcLinkArrayOutput added in v3.25.0

func (o VpcLinkArrayOutput) ToVpcLinkArrayOutput() VpcLinkArrayOutput

func (VpcLinkArrayOutput) ToVpcLinkArrayOutputWithContext added in v3.25.0

func (o VpcLinkArrayOutput) ToVpcLinkArrayOutputWithContext(ctx context.Context) VpcLinkArrayOutput

type VpcLinkInput added in v3.13.0

type VpcLinkInput interface {
	pulumi.Input

	ToVpcLinkOutput() VpcLinkOutput
	ToVpcLinkOutputWithContext(ctx context.Context) VpcLinkOutput
}

type VpcLinkMap added in v3.25.0

type VpcLinkMap map[string]VpcLinkInput

func (VpcLinkMap) ElementType added in v3.25.0

func (VpcLinkMap) ElementType() reflect.Type

func (VpcLinkMap) ToVpcLinkMapOutput added in v3.25.0

func (i VpcLinkMap) ToVpcLinkMapOutput() VpcLinkMapOutput

func (VpcLinkMap) ToVpcLinkMapOutputWithContext added in v3.25.0

func (i VpcLinkMap) ToVpcLinkMapOutputWithContext(ctx context.Context) VpcLinkMapOutput

type VpcLinkMapInput added in v3.25.0

type VpcLinkMapInput interface {
	pulumi.Input

	ToVpcLinkMapOutput() VpcLinkMapOutput
	ToVpcLinkMapOutputWithContext(context.Context) VpcLinkMapOutput
}

VpcLinkMapInput is an input type that accepts VpcLinkMap and VpcLinkMapOutput values. You can construct a concrete instance of `VpcLinkMapInput` via:

VpcLinkMap{ "key": VpcLinkArgs{...} }

type VpcLinkMapOutput added in v3.25.0

type VpcLinkMapOutput struct{ *pulumi.OutputState }

func (VpcLinkMapOutput) ElementType added in v3.25.0

func (VpcLinkMapOutput) ElementType() reflect.Type

func (VpcLinkMapOutput) MapIndex added in v3.25.0

func (VpcLinkMapOutput) ToVpcLinkMapOutput added in v3.25.0

func (o VpcLinkMapOutput) ToVpcLinkMapOutput() VpcLinkMapOutput

func (VpcLinkMapOutput) ToVpcLinkMapOutputWithContext added in v3.25.0

func (o VpcLinkMapOutput) ToVpcLinkMapOutputWithContext(ctx context.Context) VpcLinkMapOutput

type VpcLinkOutput added in v3.13.0

type VpcLinkOutput struct {
	*pulumi.OutputState
}

func (VpcLinkOutput) ElementType added in v3.13.0

func (VpcLinkOutput) ElementType() reflect.Type

func (VpcLinkOutput) ToVpcLinkOutput added in v3.13.0

func (o VpcLinkOutput) ToVpcLinkOutput() VpcLinkOutput

func (VpcLinkOutput) ToVpcLinkOutputWithContext added in v3.13.0

func (o VpcLinkOutput) ToVpcLinkOutputWithContext(ctx context.Context) VpcLinkOutput

func (VpcLinkOutput) ToVpcLinkPtrOutput added in v3.25.0

func (o VpcLinkOutput) ToVpcLinkPtrOutput() VpcLinkPtrOutput

func (VpcLinkOutput) ToVpcLinkPtrOutputWithContext added in v3.25.0

func (o VpcLinkOutput) ToVpcLinkPtrOutputWithContext(ctx context.Context) VpcLinkPtrOutput

type VpcLinkPtrInput added in v3.25.0

type VpcLinkPtrInput interface {
	pulumi.Input

	ToVpcLinkPtrOutput() VpcLinkPtrOutput
	ToVpcLinkPtrOutputWithContext(ctx context.Context) VpcLinkPtrOutput
}

type VpcLinkPtrOutput added in v3.25.0

type VpcLinkPtrOutput struct {
	*pulumi.OutputState
}

func (VpcLinkPtrOutput) ElementType added in v3.25.0

func (VpcLinkPtrOutput) ElementType() reflect.Type

func (VpcLinkPtrOutput) ToVpcLinkPtrOutput added in v3.25.0

func (o VpcLinkPtrOutput) ToVpcLinkPtrOutput() VpcLinkPtrOutput

func (VpcLinkPtrOutput) ToVpcLinkPtrOutputWithContext added in v3.25.0

func (o VpcLinkPtrOutput) ToVpcLinkPtrOutputWithContext(ctx context.Context) VpcLinkPtrOutput

type VpcLinkState

type VpcLinkState struct {
	// The VPC Link ARN.
	Arn pulumi.StringPtrInput
	// The name of the VPC Link. Must be between 1 and 128 characters in length.
	Name pulumi.StringPtrInput
	// Security group IDs for the VPC Link.
	SecurityGroupIds pulumi.StringArrayInput
	// Subnet IDs for the VPC Link.
	SubnetIds pulumi.StringArrayInput
	// A map of tags to assign to the VPC Link.
	Tags pulumi.StringMapInput
}

func (VpcLinkState) ElementType

func (VpcLinkState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL