apigatewayv2

package
v4.38.1 Latest Latest
Warning

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

Go to latest
Published: Mar 10, 2022 License: Apache-2.0 Imports: 7 Imported by: 1

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// 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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Api) ElementType() reflect.Type

func (*Api) ToApiOutput

func (i *Api) ToApiOutput() ApiOutput

func (*Api) ToApiOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	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

type ApiArray []ApiInput

func (ApiArray) ElementType

func (ApiArray) ElementType() reflect.Type

func (ApiArray) ToApiArrayOutput

func (i ApiArray) ToApiArrayOutput() ApiArrayOutput

func (ApiArray) ToApiArrayOutputWithContext

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

type ApiArrayInput

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

type ApiArrayOutput struct{ *pulumi.OutputState }

func (ApiArrayOutput) ElementType

func (ApiArrayOutput) ElementType() reflect.Type

func (ApiArrayOutput) Index

func (ApiArrayOutput) ToApiArrayOutput

func (o ApiArrayOutput) ToApiArrayOutput() ApiArrayOutput

func (ApiArrayOutput) ToApiArrayOutputWithContext

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

type ApiInput interface {
	pulumi.Input

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

type ApiMap

type ApiMap map[string]ApiInput

func (ApiMap) ElementType

func (ApiMap) ElementType() reflect.Type

func (ApiMap) ToApiMapOutput

func (i ApiMap) ToApiMapOutput() ApiMapOutput

func (ApiMap) ToApiMapOutputWithContext

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

type ApiMapInput

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

type ApiMapOutput struct{ *pulumi.OutputState }

func (ApiMapOutput) ElementType

func (ApiMapOutput) ElementType() reflect.Type

func (ApiMapOutput) MapIndex

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

func (ApiMapOutput) ToApiMapOutput

func (o ApiMapOutput) ToApiMapOutput() ApiMapOutput

func (ApiMapOutput) ToApiMapOutputWithContext

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*ApiMapping) ElementType() reflect.Type

func (*ApiMapping) ToApiMappingOutput

func (i *ApiMapping) ToApiMappingOutput() ApiMappingOutput

func (*ApiMapping) ToApiMappingOutputWithContext

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

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

type ApiMappingArray []ApiMappingInput

func (ApiMappingArray) ElementType

func (ApiMappingArray) ElementType() reflect.Type

func (ApiMappingArray) ToApiMappingArrayOutput

func (i ApiMappingArray) ToApiMappingArrayOutput() ApiMappingArrayOutput

func (ApiMappingArray) ToApiMappingArrayOutputWithContext

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

type ApiMappingArrayInput

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

type ApiMappingArrayOutput struct{ *pulumi.OutputState }

func (ApiMappingArrayOutput) ElementType

func (ApiMappingArrayOutput) ElementType() reflect.Type

func (ApiMappingArrayOutput) Index

func (ApiMappingArrayOutput) ToApiMappingArrayOutput

func (o ApiMappingArrayOutput) ToApiMappingArrayOutput() ApiMappingArrayOutput

func (ApiMappingArrayOutput) ToApiMappingArrayOutputWithContext

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

type ApiMappingInput

type ApiMappingInput interface {
	pulumi.Input

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

type ApiMappingMap

type ApiMappingMap map[string]ApiMappingInput

func (ApiMappingMap) ElementType

func (ApiMappingMap) ElementType() reflect.Type

func (ApiMappingMap) ToApiMappingMapOutput

func (i ApiMappingMap) ToApiMappingMapOutput() ApiMappingMapOutput

func (ApiMappingMap) ToApiMappingMapOutputWithContext

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

type ApiMappingMapInput

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

type ApiMappingMapOutput struct{ *pulumi.OutputState }

func (ApiMappingMapOutput) ElementType

func (ApiMappingMapOutput) ElementType() reflect.Type

func (ApiMappingMapOutput) MapIndex

func (ApiMappingMapOutput) ToApiMappingMapOutput

func (o ApiMappingMapOutput) ToApiMappingMapOutput() ApiMappingMapOutput

func (ApiMappingMapOutput) ToApiMappingMapOutputWithContext

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

type ApiMappingOutput

type ApiMappingOutput struct{ *pulumi.OutputState }

func (ApiMappingOutput) ElementType

func (ApiMappingOutput) ElementType() reflect.Type

func (ApiMappingOutput) ToApiMappingOutput

func (o ApiMappingOutput) ToApiMappingOutput() ApiMappingOutput

func (ApiMappingOutput) ToApiMappingOutputWithContext

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

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

type ApiOutput struct{ *pulumi.OutputState }

func (ApiOutput) ElementType

func (ApiOutput) ElementType() reflect.Type

func (ApiOutput) ToApiOutput

func (o ApiOutput) ToApiOutput() ApiOutput

func (ApiOutput) ToApiOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll 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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Authorizer) ElementType() reflect.Type

func (*Authorizer) ToAuthorizerOutput

func (i *Authorizer) ToAuthorizerOutput() AuthorizerOutput

func (*Authorizer) ToAuthorizerOutputWithContext

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

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

type AuthorizerArray []AuthorizerInput

func (AuthorizerArray) ElementType

func (AuthorizerArray) ElementType() reflect.Type

func (AuthorizerArray) ToAuthorizerArrayOutput

func (i AuthorizerArray) ToAuthorizerArrayOutput() AuthorizerArrayOutput

func (AuthorizerArray) ToAuthorizerArrayOutputWithContext

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

type AuthorizerArrayInput

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

type AuthorizerArrayOutput struct{ *pulumi.OutputState }

func (AuthorizerArrayOutput) ElementType

func (AuthorizerArrayOutput) ElementType() reflect.Type

func (AuthorizerArrayOutput) Index

func (AuthorizerArrayOutput) ToAuthorizerArrayOutput

func (o AuthorizerArrayOutput) ToAuthorizerArrayOutput() AuthorizerArrayOutput

func (AuthorizerArrayOutput) ToAuthorizerArrayOutputWithContext

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

type AuthorizerInput

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

type AuthorizerMap map[string]AuthorizerInput

func (AuthorizerMap) ElementType

func (AuthorizerMap) ElementType() reflect.Type

func (AuthorizerMap) ToAuthorizerMapOutput

func (i AuthorizerMap) ToAuthorizerMapOutput() AuthorizerMapOutput

func (AuthorizerMap) ToAuthorizerMapOutputWithContext

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

type AuthorizerMapInput

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

type AuthorizerMapOutput struct{ *pulumi.OutputState }

func (AuthorizerMapOutput) ElementType

func (AuthorizerMapOutput) ElementType() reflect.Type

func (AuthorizerMapOutput) MapIndex

func (AuthorizerMapOutput) ToAuthorizerMapOutput

func (o AuthorizerMapOutput) ToAuthorizerMapOutput() AuthorizerMapOutput

func (AuthorizerMapOutput) ToAuthorizerMapOutputWithContext

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

type AuthorizerOutput

type AuthorizerOutput struct{ *pulumi.OutputState }

func (AuthorizerOutput) ElementType

func (AuthorizerOutput) ElementType() reflect.Type

func (AuthorizerOutput) ToAuthorizerOutput

func (o AuthorizerOutput) ToAuthorizerOutput() AuthorizerOutput

func (AuthorizerOutput) ToAuthorizerOutputWithContext

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

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Deployment) ElementType() reflect.Type

func (*Deployment) ToDeploymentOutput

func (i *Deployment) ToDeploymentOutput() DeploymentOutput

func (*Deployment) ToDeploymentOutputWithContext

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

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

type DeploymentArray []DeploymentInput

func (DeploymentArray) ElementType

func (DeploymentArray) ElementType() reflect.Type

func (DeploymentArray) ToDeploymentArrayOutput

func (i DeploymentArray) ToDeploymentArrayOutput() DeploymentArrayOutput

func (DeploymentArray) ToDeploymentArrayOutputWithContext

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

type DeploymentArrayInput

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

type DeploymentArrayOutput struct{ *pulumi.OutputState }

func (DeploymentArrayOutput) ElementType

func (DeploymentArrayOutput) ElementType() reflect.Type

func (DeploymentArrayOutput) Index

func (DeploymentArrayOutput) ToDeploymentArrayOutput

func (o DeploymentArrayOutput) ToDeploymentArrayOutput() DeploymentArrayOutput

func (DeploymentArrayOutput) ToDeploymentArrayOutputWithContext

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

type DeploymentInput

type DeploymentInput interface {
	pulumi.Input

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

type DeploymentMap

type DeploymentMap map[string]DeploymentInput

func (DeploymentMap) ElementType

func (DeploymentMap) ElementType() reflect.Type

func (DeploymentMap) ToDeploymentMapOutput

func (i DeploymentMap) ToDeploymentMapOutput() DeploymentMapOutput

func (DeploymentMap) ToDeploymentMapOutputWithContext

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

type DeploymentMapInput

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

type DeploymentMapOutput struct{ *pulumi.OutputState }

func (DeploymentMapOutput) ElementType

func (DeploymentMapOutput) ElementType() reflect.Type

func (DeploymentMapOutput) MapIndex

func (DeploymentMapOutput) ToDeploymentMapOutput

func (o DeploymentMapOutput) ToDeploymentMapOutput() DeploymentMapOutput

func (DeploymentMapOutput) ToDeploymentMapOutputWithContext

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

type DeploymentOutput

type DeploymentOutput struct{ *pulumi.OutputState }

func (DeploymentOutput) ElementType

func (DeploymentOutput) ElementType() reflect.Type

func (DeploymentOutput) ToDeploymentOutput

func (o DeploymentOutput) ToDeploymentOutput() DeploymentOutput

func (DeploymentOutput) ToDeploymentOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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
	})
}

``` ### Associated Route 53 Resource Record

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleDomainName, err := apigatewayv2.NewDomainName(ctx, "exampleDomainName", &apigatewayv2.DomainNameArgs{
			DomainName: pulumi.String("http-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
		}
		_, err = route53.NewRecord(ctx, "exampleRecord", &route53.RecordArgs{
			Name:   exampleDomainName.DomainName,
			Type:   pulumi.String("A"),
			ZoneId: pulumi.Any(aws_route53_zone.Example.Zone_id),
			Aliases: route53.RecordAliasArray{
				&route53.RecordAliasArgs{
					Name: exampleDomainName.DomainNameConfiguration.ApplyT(func(domainNameConfiguration apigatewayv2.DomainNameDomainNameConfiguration) (string, error) {
						return domainNameConfiguration.TargetDomainName, nil
					}).(pulumi.StringOutput),
					ZoneId: exampleDomainName.DomainNameConfiguration.ApplyT(func(domainNameConfiguration apigatewayv2.DomainNameDomainNameConfiguration) (string, error) {
						return domainNameConfiguration.HostedZoneId, nil
					}).(pulumi.StringOutput),
					EvaluateTargetHealth: pulumi.Bool(false),
				},
			},
		})
		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

func (*DomainName) ElementType() reflect.Type

func (*DomainName) ToDomainNameOutput

func (i *DomainName) ToDomainNameOutput() DomainNameOutput

func (*DomainName) ToDomainNameOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a DomainName resource.

func (DomainNameArgs) ElementType

func (DomainNameArgs) ElementType() reflect.Type

type DomainNameArray

type DomainNameArray []DomainNameInput

func (DomainNameArray) ElementType

func (DomainNameArray) ElementType() reflect.Type

func (DomainNameArray) ToDomainNameArrayOutput

func (i DomainNameArray) ToDomainNameArrayOutput() DomainNameArrayOutput

func (DomainNameArray) ToDomainNameArrayOutputWithContext

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

type DomainNameArrayInput

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

type DomainNameArrayOutput struct{ *pulumi.OutputState }

func (DomainNameArrayOutput) ElementType

func (DomainNameArrayOutput) ElementType() reflect.Type

func (DomainNameArrayOutput) Index

func (DomainNameArrayOutput) ToDomainNameArrayOutput

func (o DomainNameArrayOutput) ToDomainNameArrayOutput() DomainNameArrayOutput

func (DomainNameArrayOutput) ToDomainNameArrayOutputWithContext

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

type DomainNameInput interface {
	pulumi.Input

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

type DomainNameMap

type DomainNameMap map[string]DomainNameInput

func (DomainNameMap) ElementType

func (DomainNameMap) ElementType() reflect.Type

func (DomainNameMap) ToDomainNameMapOutput

func (i DomainNameMap) ToDomainNameMapOutput() DomainNameMapOutput

func (DomainNameMap) ToDomainNameMapOutputWithContext

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

type DomainNameMapInput

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

type DomainNameMapOutput struct{ *pulumi.OutputState }

func (DomainNameMapOutput) ElementType

func (DomainNameMapOutput) ElementType() reflect.Type

func (DomainNameMapOutput) MapIndex

func (DomainNameMapOutput) ToDomainNameMapOutput

func (o DomainNameMapOutput) ToDomainNameMapOutput() DomainNameMapOutput

func (DomainNameMapOutput) ToDomainNameMapOutputWithContext

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

type DomainNameMutualTlsAuthentication

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

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

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationOutput

func (i DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationOutput() DomainNameMutualTlsAuthenticationOutput

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationOutputWithContext

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

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationPtrOutput

func (i DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationPtrOutput() DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationArgs) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext

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

type DomainNameMutualTlsAuthenticationInput

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

type DomainNameMutualTlsAuthenticationOutput struct{ *pulumi.OutputState }

func (DomainNameMutualTlsAuthenticationOutput) ElementType

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationOutput

func (o DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationOutput() DomainNameMutualTlsAuthenticationOutput

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationOutputWithContext

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

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationPtrOutput

func (o DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationPtrOutput() DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationOutput) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext

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

func (DomainNameMutualTlsAuthenticationOutput) TruststoreUri

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

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

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

type DomainNameMutualTlsAuthenticationPtrOutput struct{ *pulumi.OutputState }

func (DomainNameMutualTlsAuthenticationPtrOutput) Elem

func (DomainNameMutualTlsAuthenticationPtrOutput) ElementType

func (DomainNameMutualTlsAuthenticationPtrOutput) ToDomainNameMutualTlsAuthenticationPtrOutput

func (o DomainNameMutualTlsAuthenticationPtrOutput) ToDomainNameMutualTlsAuthenticationPtrOutput() DomainNameMutualTlsAuthenticationPtrOutput

func (DomainNameMutualTlsAuthenticationPtrOutput) ToDomainNameMutualTlsAuthenticationPtrOutputWithContext

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

func (DomainNameMutualTlsAuthenticationPtrOutput) TruststoreUri

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

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

type DomainNameOutput struct{ *pulumi.OutputState }

func (DomainNameOutput) ElementType

func (DomainNameOutput) ElementType() reflect.Type

func (DomainNameOutput) ToDomainNameOutput

func (o DomainNameOutput) ToDomainNameOutput() DomainNameOutput

func (DomainNameOutput) ToDomainNameOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (DomainNameState) ElementType

func (DomainNameState) ElementType() reflect.Type

type GetApiCorsConfiguration

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

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

func (GetApiCorsConfigurationArgs) ToGetApiCorsConfigurationOutput

func (i GetApiCorsConfigurationArgs) ToGetApiCorsConfigurationOutput() GetApiCorsConfigurationOutput

func (GetApiCorsConfigurationArgs) ToGetApiCorsConfigurationOutputWithContext

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

type GetApiCorsConfigurationArray

type GetApiCorsConfigurationArray []GetApiCorsConfigurationInput

func (GetApiCorsConfigurationArray) ElementType

func (GetApiCorsConfigurationArray) ToGetApiCorsConfigurationArrayOutput

func (i GetApiCorsConfigurationArray) ToGetApiCorsConfigurationArrayOutput() GetApiCorsConfigurationArrayOutput

func (GetApiCorsConfigurationArray) ToGetApiCorsConfigurationArrayOutputWithContext

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

type GetApiCorsConfigurationArrayInput

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

type GetApiCorsConfigurationArrayOutput struct{ *pulumi.OutputState }

func (GetApiCorsConfigurationArrayOutput) ElementType

func (GetApiCorsConfigurationArrayOutput) Index

func (GetApiCorsConfigurationArrayOutput) ToGetApiCorsConfigurationArrayOutput

func (o GetApiCorsConfigurationArrayOutput) ToGetApiCorsConfigurationArrayOutput() GetApiCorsConfigurationArrayOutput

func (GetApiCorsConfigurationArrayOutput) ToGetApiCorsConfigurationArrayOutputWithContext

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

type GetApiCorsConfigurationInput

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

type GetApiCorsConfigurationOutput struct{ *pulumi.OutputState }

func (GetApiCorsConfigurationOutput) AllowCredentials

func (o GetApiCorsConfigurationOutput) AllowCredentials() pulumi.BoolOutput

Whether credentials are included in the CORS request.

func (GetApiCorsConfigurationOutput) AllowHeaders

The set of allowed HTTP headers.

func (GetApiCorsConfigurationOutput) AllowMethods

The set of allowed HTTP methods.

func (GetApiCorsConfigurationOutput) AllowOrigins

The set of allowed origins.

func (GetApiCorsConfigurationOutput) ElementType

func (GetApiCorsConfigurationOutput) ExposeHeaders

The set of exposed HTTP headers.

func (GetApiCorsConfigurationOutput) MaxAge

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

func (GetApiCorsConfigurationOutput) ToGetApiCorsConfigurationOutput

func (o GetApiCorsConfigurationOutput) ToGetApiCorsConfigurationOutput() GetApiCorsConfigurationOutput

func (GetApiCorsConfigurationOutput) ToGetApiCorsConfigurationOutputWithContext

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

type GetApisArgs

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 GetApisOutputArgs added in v4.21.0

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

A collection of arguments for invoking getApis.

func (GetApisOutputArgs) ElementType added in v4.21.0

func (GetApisOutputArgs) ElementType() reflect.Type

type GetApisResult

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

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type GetApisResultOutput added in v4.21.0

type GetApisResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getApis.

func GetApisOutput added in v4.21.0

func GetApisOutput(ctx *pulumi.Context, args GetApisOutputArgs, opts ...pulumi.InvokeOption) GetApisResultOutput

func (GetApisResultOutput) ElementType added in v4.21.0

func (GetApisResultOutput) ElementType() reflect.Type

func (GetApisResultOutput) Id added in v4.21.0

The provider-assigned unique ID for this managed resource.

func (GetApisResultOutput) Ids added in v4.21.0

Set of API identifiers.

func (GetApisResultOutput) Name added in v4.21.0

func (GetApisResultOutput) ProtocolType added in v4.21.0

func (o GetApisResultOutput) ProtocolType() pulumi.StringPtrOutput

func (GetApisResultOutput) Tags added in v4.21.0

func (GetApisResultOutput) ToGetApisResultOutput added in v4.21.0

func (o GetApisResultOutput) ToGetApisResultOutput() GetApisResultOutput

func (GetApisResultOutput) ToGetApisResultOutputWithContext added in v4.21.0

func (o GetApisResultOutput) ToGetApisResultOutputWithContext(ctx context.Context) GetApisResultOutput

type GetExportArgs added in v4.37.0

type GetExportArgs struct {
	// The API identifier.
	ApiId string `pulumi:"apiId"`
	// The version of the API Gateway export algorithm. API Gateway uses the latest version by default. Currently, the only supported version is `1.0`.
	ExportVersion *string `pulumi:"exportVersion"`
	// Specifies whether to include API Gateway extensions in the exported API definition. API Gateway extensions are included by default.
	IncludeExtensions *bool `pulumi:"includeExtensions"`
	// The output type of the exported definition file. Valid values are `JSON` and `YAML`.
	OutputType string `pulumi:"outputType"`
	// The version of the API specification to use. `OAS30`, for OpenAPI 3.0, is the only supported value.
	Specification string `pulumi:"specification"`
	// The name of the API stage to export. If you don't specify this property, a representation of the latest API configuration is exported.
	StageName *string `pulumi:"stageName"`
}

A collection of arguments for invoking getExport.

type GetExportOutputArgs added in v4.37.0

type GetExportOutputArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput `pulumi:"apiId"`
	// The version of the API Gateway export algorithm. API Gateway uses the latest version by default. Currently, the only supported version is `1.0`.
	ExportVersion pulumi.StringPtrInput `pulumi:"exportVersion"`
	// Specifies whether to include API Gateway extensions in the exported API definition. API Gateway extensions are included by default.
	IncludeExtensions pulumi.BoolPtrInput `pulumi:"includeExtensions"`
	// The output type of the exported definition file. Valid values are `JSON` and `YAML`.
	OutputType pulumi.StringInput `pulumi:"outputType"`
	// The version of the API specification to use. `OAS30`, for OpenAPI 3.0, is the only supported value.
	Specification pulumi.StringInput `pulumi:"specification"`
	// The name of the API stage to export. If you don't specify this property, a representation of the latest API configuration is exported.
	StageName pulumi.StringPtrInput `pulumi:"stageName"`
}

A collection of arguments for invoking getExport.

func (GetExportOutputArgs) ElementType added in v4.37.0

func (GetExportOutputArgs) ElementType() reflect.Type

type GetExportResult added in v4.37.0

type GetExportResult struct {
	ApiId string `pulumi:"apiId"`
	// The id of the API.
	Body          string  `pulumi:"body"`
	ExportVersion *string `pulumi:"exportVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id                string  `pulumi:"id"`
	IncludeExtensions *bool   `pulumi:"includeExtensions"`
	OutputType        string  `pulumi:"outputType"`
	Specification     string  `pulumi:"specification"`
	StageName         *string `pulumi:"stageName"`
}

A collection of values returned by getExport.

func GetExport added in v4.37.0

func GetExport(ctx *pulumi.Context, args *GetExportArgs, opts ...pulumi.InvokeOption) (*GetExportResult, error)

Exports a definition of an API in a particular output format and specification.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apigatewayv2.GetExport(ctx, &apigatewayv2.GetExportArgs{
			ApiId:         aws_apigatewayv2_route.Test.Api_id,
			Specification: "OAS30",
			OutputType:    "JSON",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetExportResultOutput added in v4.37.0

type GetExportResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getExport.

func GetExportOutput added in v4.37.0

func GetExportOutput(ctx *pulumi.Context, args GetExportOutputArgs, opts ...pulumi.InvokeOption) GetExportResultOutput

func (GetExportResultOutput) ApiId added in v4.37.0

func (GetExportResultOutput) Body added in v4.37.0

The id of the API.

func (GetExportResultOutput) ElementType added in v4.37.0

func (GetExportResultOutput) ElementType() reflect.Type

func (GetExportResultOutput) ExportVersion added in v4.37.0

func (o GetExportResultOutput) ExportVersion() pulumi.StringPtrOutput

func (GetExportResultOutput) Id added in v4.37.0

The provider-assigned unique ID for this managed resource.

func (GetExportResultOutput) IncludeExtensions added in v4.37.0

func (o GetExportResultOutput) IncludeExtensions() pulumi.BoolPtrOutput

func (GetExportResultOutput) OutputType added in v4.37.0

func (o GetExportResultOutput) OutputType() pulumi.StringOutput

func (GetExportResultOutput) Specification added in v4.37.0

func (o GetExportResultOutput) Specification() pulumi.StringOutput

func (GetExportResultOutput) StageName added in v4.37.0

func (GetExportResultOutput) ToGetExportResultOutput added in v4.37.0

func (o GetExportResultOutput) ToGetExportResultOutput() GetExportResultOutput

func (GetExportResultOutput) ToGetExportResultOutputWithContext added in v4.37.0

func (o GetExportResultOutput) ToGetExportResultOutputWithContext(ctx context.Context) GetExportResultOutput

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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
	})
}

``` ### Lambda Integration

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleFunction, err := lambda.NewFunction(ctx, "exampleFunction", &lambda.FunctionArgs{
			Code:    pulumi.NewFileArchive("example.zip"),
			Role:    pulumi.Any(aws_iam_role.Example.Arn),
			Handler: pulumi.String("index.handler"),
			Runtime: pulumi.String("nodejs12.x"),
		})
		if err != nil {
			return err
		}
		_, err = apigatewayv2.NewIntegration(ctx, "exampleIntegration", &apigatewayv2.IntegrationArgs{
			ApiId:                   pulumi.Any(aws_apigatewayv2_api.Example.Id),
			IntegrationType:         pulumi.String("AWS"),
			ConnectionType:          pulumi.String("INTERNET"),
			ContentHandlingStrategy: pulumi.String("CONVERT_TO_TEXT"),
			Description:             pulumi.String("Lambda example"),
			IntegrationMethod:       pulumi.String("POST"),
			IntegrationUri:          exampleFunction.InvokeArn,
			PassthroughBehavior:     pulumi.String("WHEN_NO_MATCH"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### AWS Service Integration

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Integration) ElementType() reflect.Type

func (*Integration) ToIntegrationOutput

func (i *Integration) ToIntegrationOutput() IntegrationOutput

func (*Integration) ToIntegrationOutputWithContext

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

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

type IntegrationArray []IntegrationInput

func (IntegrationArray) ElementType

func (IntegrationArray) ElementType() reflect.Type

func (IntegrationArray) ToIntegrationArrayOutput

func (i IntegrationArray) ToIntegrationArrayOutput() IntegrationArrayOutput

func (IntegrationArray) ToIntegrationArrayOutputWithContext

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

type IntegrationArrayInput

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

type IntegrationArrayOutput struct{ *pulumi.OutputState }

func (IntegrationArrayOutput) ElementType

func (IntegrationArrayOutput) ElementType() reflect.Type

func (IntegrationArrayOutput) Index

func (IntegrationArrayOutput) ToIntegrationArrayOutput

func (o IntegrationArrayOutput) ToIntegrationArrayOutput() IntegrationArrayOutput

func (IntegrationArrayOutput) ToIntegrationArrayOutputWithContext

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

type IntegrationInput

type IntegrationInput interface {
	pulumi.Input

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

type IntegrationMap

type IntegrationMap map[string]IntegrationInput

func (IntegrationMap) ElementType

func (IntegrationMap) ElementType() reflect.Type

func (IntegrationMap) ToIntegrationMapOutput

func (i IntegrationMap) ToIntegrationMapOutput() IntegrationMapOutput

func (IntegrationMap) ToIntegrationMapOutputWithContext

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

type IntegrationMapInput

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

type IntegrationMapOutput struct{ *pulumi.OutputState }

func (IntegrationMapOutput) ElementType

func (IntegrationMapOutput) ElementType() reflect.Type

func (IntegrationMapOutput) MapIndex

func (IntegrationMapOutput) ToIntegrationMapOutput

func (o IntegrationMapOutput) ToIntegrationMapOutput() IntegrationMapOutput

func (IntegrationMapOutput) ToIntegrationMapOutputWithContext

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

type IntegrationOutput

type IntegrationOutput struct{ *pulumi.OutputState }

func (IntegrationOutput) ElementType

func (IntegrationOutput) ElementType() reflect.Type

func (IntegrationOutput) ToIntegrationOutput

func (o IntegrationOutput) ToIntegrationOutput() IntegrationOutput

func (IntegrationOutput) ToIntegrationOutputWithContext

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

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*IntegrationResponse) ElementType() reflect.Type

func (*IntegrationResponse) ToIntegrationResponseOutput

func (i *IntegrationResponse) ToIntegrationResponseOutput() IntegrationResponseOutput

func (*IntegrationResponse) ToIntegrationResponseOutputWithContext

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

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

type IntegrationResponseArray []IntegrationResponseInput

func (IntegrationResponseArray) ElementType

func (IntegrationResponseArray) ElementType() reflect.Type

func (IntegrationResponseArray) ToIntegrationResponseArrayOutput

func (i IntegrationResponseArray) ToIntegrationResponseArrayOutput() IntegrationResponseArrayOutput

func (IntegrationResponseArray) ToIntegrationResponseArrayOutputWithContext

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

type IntegrationResponseArrayInput

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

type IntegrationResponseArrayOutput struct{ *pulumi.OutputState }

func (IntegrationResponseArrayOutput) ElementType

func (IntegrationResponseArrayOutput) Index

func (IntegrationResponseArrayOutput) ToIntegrationResponseArrayOutput

func (o IntegrationResponseArrayOutput) ToIntegrationResponseArrayOutput() IntegrationResponseArrayOutput

func (IntegrationResponseArrayOutput) ToIntegrationResponseArrayOutputWithContext

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

type IntegrationResponseInput

type IntegrationResponseInput interface {
	pulumi.Input

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

type IntegrationResponseMap

type IntegrationResponseMap map[string]IntegrationResponseInput

func (IntegrationResponseMap) ElementType

func (IntegrationResponseMap) ElementType() reflect.Type

func (IntegrationResponseMap) ToIntegrationResponseMapOutput

func (i IntegrationResponseMap) ToIntegrationResponseMapOutput() IntegrationResponseMapOutput

func (IntegrationResponseMap) ToIntegrationResponseMapOutputWithContext

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

type IntegrationResponseMapInput

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

type IntegrationResponseMapOutput struct{ *pulumi.OutputState }

func (IntegrationResponseMapOutput) ElementType

func (IntegrationResponseMapOutput) MapIndex

func (IntegrationResponseMapOutput) ToIntegrationResponseMapOutput

func (o IntegrationResponseMapOutput) ToIntegrationResponseMapOutput() IntegrationResponseMapOutput

func (IntegrationResponseMapOutput) ToIntegrationResponseMapOutputWithContext

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

type IntegrationResponseOutput

type IntegrationResponseOutput struct{ *pulumi.OutputState }

func (IntegrationResponseOutput) ElementType

func (IntegrationResponseOutput) ElementType() reflect.Type

func (IntegrationResponseOutput) ToIntegrationResponseOutput

func (o IntegrationResponseOutput) ToIntegrationResponseOutput() IntegrationResponseOutput

func (IntegrationResponseOutput) ToIntegrationResponseOutputWithContext

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

type IntegrationResponseParameter

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

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

func (IntegrationResponseParameterArgs) ToIntegrationResponseParameterOutput

func (i IntegrationResponseParameterArgs) ToIntegrationResponseParameterOutput() IntegrationResponseParameterOutput

func (IntegrationResponseParameterArgs) ToIntegrationResponseParameterOutputWithContext

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

type IntegrationResponseParameterArray

type IntegrationResponseParameterArray []IntegrationResponseParameterInput

func (IntegrationResponseParameterArray) ElementType

func (IntegrationResponseParameterArray) ToIntegrationResponseParameterArrayOutput

func (i IntegrationResponseParameterArray) ToIntegrationResponseParameterArrayOutput() IntegrationResponseParameterArrayOutput

func (IntegrationResponseParameterArray) ToIntegrationResponseParameterArrayOutputWithContext

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

type IntegrationResponseParameterArrayInput

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

type IntegrationResponseParameterArrayOutput struct{ *pulumi.OutputState }

func (IntegrationResponseParameterArrayOutput) ElementType

func (IntegrationResponseParameterArrayOutput) Index

func (IntegrationResponseParameterArrayOutput) ToIntegrationResponseParameterArrayOutput

func (o IntegrationResponseParameterArrayOutput) ToIntegrationResponseParameterArrayOutput() IntegrationResponseParameterArrayOutput

func (IntegrationResponseParameterArrayOutput) ToIntegrationResponseParameterArrayOutputWithContext

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

type IntegrationResponseParameterInput

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

type IntegrationResponseParameterOutput struct{ *pulumi.OutputState }

func (IntegrationResponseParameterOutput) ElementType

func (IntegrationResponseParameterOutput) Mappings

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

The HTTP status code in the range 200-599.

func (IntegrationResponseParameterOutput) ToIntegrationResponseParameterOutput

func (o IntegrationResponseParameterOutput) ToIntegrationResponseParameterOutput() IntegrationResponseParameterOutput

func (IntegrationResponseParameterOutput) ToIntegrationResponseParameterOutputWithContext

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

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

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 LookupApiOutputArgs added in v4.21.0

type LookupApiOutputArgs struct {
	// The API identifier.
	ApiId pulumi.StringInput `pulumi:"apiId"`
	// A map of resource tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getApi.

func (LookupApiOutputArgs) ElementType added in v4.21.0

func (LookupApiOutputArgs) ElementType() reflect.Type

type LookupApiResult

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

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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 LookupApiResultOutput added in v4.21.0

type LookupApiResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getApi.

func LookupApiOutput added in v4.21.0

func LookupApiOutput(ctx *pulumi.Context, args LookupApiOutputArgs, opts ...pulumi.InvokeOption) LookupApiResultOutput

func (LookupApiResultOutput) ApiEndpoint added in v4.21.0

func (o LookupApiResultOutput) ApiEndpoint() pulumi.StringOutput

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.

func (LookupApiResultOutput) ApiId added in v4.21.0

func (LookupApiResultOutput) ApiKeySelectionExpression added in v4.21.0

func (o LookupApiResultOutput) ApiKeySelectionExpression() pulumi.StringOutput

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.

func (LookupApiResultOutput) Arn added in v4.21.0

The ARN of the API.

func (LookupApiResultOutput) CorsConfigurations added in v4.21.0

The cross-origin resource sharing (CORS) [configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html). Applicable for HTTP APIs.

func (LookupApiResultOutput) Description added in v4.21.0

func (o LookupApiResultOutput) Description() pulumi.StringOutput

The description of the API.

func (LookupApiResultOutput) DisableExecuteApiEndpoint added in v4.21.0

func (o LookupApiResultOutput) DisableExecuteApiEndpoint() pulumi.BoolOutput

Whether clients can invoke the API by using the default `execute-api` endpoint.

func (LookupApiResultOutput) ElementType added in v4.21.0

func (LookupApiResultOutput) ElementType() reflect.Type

func (LookupApiResultOutput) ExecutionArn added in v4.21.0

func (o LookupApiResultOutput) ExecutionArn() pulumi.StringOutput

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.

func (LookupApiResultOutput) Id added in v4.21.0

The provider-assigned unique ID for this managed resource.

func (LookupApiResultOutput) Name added in v4.21.0

The name of the API.

func (LookupApiResultOutput) ProtocolType added in v4.21.0

func (o LookupApiResultOutput) ProtocolType() pulumi.StringOutput

The API protocol.

func (LookupApiResultOutput) Tags added in v4.21.0

A map of resource tags.

func (LookupApiResultOutput) ToLookupApiResultOutput added in v4.21.0

func (o LookupApiResultOutput) ToLookupApiResultOutput() LookupApiResultOutput

func (LookupApiResultOutput) ToLookupApiResultOutputWithContext added in v4.21.0

func (o LookupApiResultOutput) ToLookupApiResultOutputWithContext(ctx context.Context) LookupApiResultOutput

func (LookupApiResultOutput) Version added in v4.21.0

A version identifier for the API.

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Model) ElementType() reflect.Type

func (*Model) ToModelOutput

func (i *Model) ToModelOutput() ModelOutput

func (*Model) ToModelOutputWithContext

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

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

type ModelArray []ModelInput

func (ModelArray) ElementType

func (ModelArray) ElementType() reflect.Type

func (ModelArray) ToModelArrayOutput

func (i ModelArray) ToModelArrayOutput() ModelArrayOutput

func (ModelArray) ToModelArrayOutputWithContext

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

type ModelArrayInput

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

type ModelArrayOutput struct{ *pulumi.OutputState }

func (ModelArrayOutput) ElementType

func (ModelArrayOutput) ElementType() reflect.Type

func (ModelArrayOutput) Index

func (ModelArrayOutput) ToModelArrayOutput

func (o ModelArrayOutput) ToModelArrayOutput() ModelArrayOutput

func (ModelArrayOutput) ToModelArrayOutputWithContext

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

type ModelInput

type ModelInput interface {
	pulumi.Input

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

type ModelMap

type ModelMap map[string]ModelInput

func (ModelMap) ElementType

func (ModelMap) ElementType() reflect.Type

func (ModelMap) ToModelMapOutput

func (i ModelMap) ToModelMapOutput() ModelMapOutput

func (ModelMap) ToModelMapOutputWithContext

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

type ModelMapInput

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

type ModelMapOutput struct{ *pulumi.OutputState }

func (ModelMapOutput) ElementType

func (ModelMapOutput) ElementType() reflect.Type

func (ModelMapOutput) MapIndex

func (ModelMapOutput) ToModelMapOutput

func (o ModelMapOutput) ToModelMapOutput() ModelMapOutput

func (ModelMapOutput) ToModelMapOutputWithContext

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

type ModelOutput

type ModelOutput struct{ *pulumi.OutputState }

func (ModelOutput) ElementType

func (ModelOutput) ElementType() reflect.Type

func (ModelOutput) ToModelOutput

func (o ModelOutput) ToModelOutput() ModelOutput

func (ModelOutput) ToModelOutputWithContext

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

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Route) ElementType() reflect.Type

func (*Route) ToRouteOutput

func (i *Route) ToRouteOutput() RouteOutput

func (*Route) ToRouteOutputWithContext

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

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

type RouteArray []RouteInput

func (RouteArray) ElementType

func (RouteArray) ElementType() reflect.Type

func (RouteArray) ToRouteArrayOutput

func (i RouteArray) ToRouteArrayOutput() RouteArrayOutput

func (RouteArray) ToRouteArrayOutputWithContext

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

type RouteArrayInput

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

type RouteArrayOutput struct{ *pulumi.OutputState }

func (RouteArrayOutput) ElementType

func (RouteArrayOutput) ElementType() reflect.Type

func (RouteArrayOutput) Index

func (RouteArrayOutput) ToRouteArrayOutput

func (o RouteArrayOutput) ToRouteArrayOutput() RouteArrayOutput

func (RouteArrayOutput) ToRouteArrayOutputWithContext

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

type RouteInput

type RouteInput interface {
	pulumi.Input

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

type RouteMap

type RouteMap map[string]RouteInput

func (RouteMap) ElementType

func (RouteMap) ElementType() reflect.Type

func (RouteMap) ToRouteMapOutput

func (i RouteMap) ToRouteMapOutput() RouteMapOutput

func (RouteMap) ToRouteMapOutputWithContext

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

type RouteMapInput

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

type RouteMapOutput struct{ *pulumi.OutputState }

func (RouteMapOutput) ElementType

func (RouteMapOutput) ElementType() reflect.Type

func (RouteMapOutput) MapIndex

func (RouteMapOutput) ToRouteMapOutput

func (o RouteMapOutput) ToRouteMapOutput() RouteMapOutput

func (RouteMapOutput) ToRouteMapOutputWithContext

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

type RouteOutput

type RouteOutput struct{ *pulumi.OutputState }

func (RouteOutput) ElementType

func (RouteOutput) ElementType() reflect.Type

func (RouteOutput) ToRouteOutput

func (o RouteOutput) ToRouteOutput() RouteOutput

func (RouteOutput) ToRouteOutputWithContext

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

type RouteRequestParameter

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

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

func (RouteRequestParameterArgs) ElementType() reflect.Type

func (RouteRequestParameterArgs) ToRouteRequestParameterOutput

func (i RouteRequestParameterArgs) ToRouteRequestParameterOutput() RouteRequestParameterOutput

func (RouteRequestParameterArgs) ToRouteRequestParameterOutputWithContext

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

type RouteRequestParameterArray

type RouteRequestParameterArray []RouteRequestParameterInput

func (RouteRequestParameterArray) ElementType

func (RouteRequestParameterArray) ElementType() reflect.Type

func (RouteRequestParameterArray) ToRouteRequestParameterArrayOutput

func (i RouteRequestParameterArray) ToRouteRequestParameterArrayOutput() RouteRequestParameterArrayOutput

func (RouteRequestParameterArray) ToRouteRequestParameterArrayOutputWithContext

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

type RouteRequestParameterArrayInput

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

type RouteRequestParameterArrayOutput struct{ *pulumi.OutputState }

func (RouteRequestParameterArrayOutput) ElementType

func (RouteRequestParameterArrayOutput) Index

func (RouteRequestParameterArrayOutput) ToRouteRequestParameterArrayOutput

func (o RouteRequestParameterArrayOutput) ToRouteRequestParameterArrayOutput() RouteRequestParameterArrayOutput

func (RouteRequestParameterArrayOutput) ToRouteRequestParameterArrayOutputWithContext

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

type RouteRequestParameterInput

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

type RouteRequestParameterOutput struct{ *pulumi.OutputState }

func (RouteRequestParameterOutput) ElementType

func (RouteRequestParameterOutput) RequestParameterKey

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

Boolean whether or not the parameter is required.

func (RouteRequestParameterOutput) ToRouteRequestParameterOutput

func (o RouteRequestParameterOutput) ToRouteRequestParameterOutput() RouteRequestParameterOutput

func (RouteRequestParameterOutput) ToRouteRequestParameterOutputWithContext

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*RouteResponse) ElementType() reflect.Type

func (*RouteResponse) ToRouteResponseOutput

func (i *RouteResponse) ToRouteResponseOutput() RouteResponseOutput

func (*RouteResponse) ToRouteResponseOutputWithContext

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

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

type RouteResponseArray []RouteResponseInput

func (RouteResponseArray) ElementType

func (RouteResponseArray) ElementType() reflect.Type

func (RouteResponseArray) ToRouteResponseArrayOutput

func (i RouteResponseArray) ToRouteResponseArrayOutput() RouteResponseArrayOutput

func (RouteResponseArray) ToRouteResponseArrayOutputWithContext

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

type RouteResponseArrayInput

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

type RouteResponseArrayOutput struct{ *pulumi.OutputState }

func (RouteResponseArrayOutput) ElementType

func (RouteResponseArrayOutput) ElementType() reflect.Type

func (RouteResponseArrayOutput) Index

func (RouteResponseArrayOutput) ToRouteResponseArrayOutput

func (o RouteResponseArrayOutput) ToRouteResponseArrayOutput() RouteResponseArrayOutput

func (RouteResponseArrayOutput) ToRouteResponseArrayOutputWithContext

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

type RouteResponseInput

type RouteResponseInput interface {
	pulumi.Input

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

type RouteResponseMap

type RouteResponseMap map[string]RouteResponseInput

func (RouteResponseMap) ElementType

func (RouteResponseMap) ElementType() reflect.Type

func (RouteResponseMap) ToRouteResponseMapOutput

func (i RouteResponseMap) ToRouteResponseMapOutput() RouteResponseMapOutput

func (RouteResponseMap) ToRouteResponseMapOutputWithContext

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

type RouteResponseMapInput

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

type RouteResponseMapOutput struct{ *pulumi.OutputState }

func (RouteResponseMapOutput) ElementType

func (RouteResponseMapOutput) ElementType() reflect.Type

func (RouteResponseMapOutput) MapIndex

func (RouteResponseMapOutput) ToRouteResponseMapOutput

func (o RouteResponseMapOutput) ToRouteResponseMapOutput() RouteResponseMapOutput

func (RouteResponseMapOutput) ToRouteResponseMapOutputWithContext

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

type RouteResponseOutput

type RouteResponseOutput struct{ *pulumi.OutputState }

func (RouteResponseOutput) ElementType

func (RouteResponseOutput) ElementType() reflect.Type

func (RouteResponseOutput) ToRouteResponseOutput

func (o RouteResponseOutput) ToRouteResponseOutput() RouteResponseOutput

func (RouteResponseOutput) ToRouteResponseOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Stage) ElementType() reflect.Type

func (*Stage) ToStageOutput

func (i *Stage) ToStageOutput() StageOutput

func (*Stage) ToStageOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Stage resource.

func (StageArgs) ElementType

func (StageArgs) ElementType() reflect.Type

type StageArray

type StageArray []StageInput

func (StageArray) ElementType

func (StageArray) ElementType() reflect.Type

func (StageArray) ToStageArrayOutput

func (i StageArray) ToStageArrayOutput() StageArrayOutput

func (StageArray) ToStageArrayOutputWithContext

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

type StageArrayInput

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

type StageArrayOutput struct{ *pulumi.OutputState }

func (StageArrayOutput) ElementType

func (StageArrayOutput) ElementType() reflect.Type

func (StageArrayOutput) Index

func (StageArrayOutput) ToStageArrayOutput

func (o StageArrayOutput) ToStageArrayOutput() StageArrayOutput

func (StageArrayOutput) ToStageArrayOutputWithContext

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

type StageInput interface {
	pulumi.Input

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

type StageMap

type StageMap map[string]StageInput

func (StageMap) ElementType

func (StageMap) ElementType() reflect.Type

func (StageMap) ToStageMapOutput

func (i StageMap) ToStageMapOutput() StageMapOutput

func (StageMap) ToStageMapOutputWithContext

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

type StageMapInput

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

type StageMapOutput struct{ *pulumi.OutputState }

func (StageMapOutput) ElementType

func (StageMapOutput) ElementType() reflect.Type

func (StageMapOutput) MapIndex

func (StageMapOutput) ToStageMapOutput

func (o StageMapOutput) ToStageMapOutput() StageMapOutput

func (StageMapOutput) ToStageMapOutputWithContext

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

type StageOutput

type StageOutput struct{ *pulumi.OutputState }

func (StageOutput) ElementType

func (StageOutput) ElementType() reflect.Type

func (StageOutput) ToStageOutput

func (o StageOutput) ToStageOutput() StageOutput

func (StageOutput) ToStageOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	TagsAll 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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

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/v4/go/aws/apigatewayv2"
"github.com/pulumi/pulumi/sdk/v3/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: pulumi.Any(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

func (*VpcLink) ElementType() reflect.Type

func (*VpcLink) ToVpcLinkOutput

func (i *VpcLink) ToVpcLinkOutput() VpcLinkOutput

func (*VpcLink) ToVpcLinkOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a VpcLink resource.

func (VpcLinkArgs) ElementType

func (VpcLinkArgs) ElementType() reflect.Type

type VpcLinkArray

type VpcLinkArray []VpcLinkInput

func (VpcLinkArray) ElementType

func (VpcLinkArray) ElementType() reflect.Type

func (VpcLinkArray) ToVpcLinkArrayOutput

func (i VpcLinkArray) ToVpcLinkArrayOutput() VpcLinkArrayOutput

func (VpcLinkArray) ToVpcLinkArrayOutputWithContext

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

type VpcLinkArrayInput

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

type VpcLinkArrayOutput struct{ *pulumi.OutputState }

func (VpcLinkArrayOutput) ElementType

func (VpcLinkArrayOutput) ElementType() reflect.Type

func (VpcLinkArrayOutput) Index

func (VpcLinkArrayOutput) ToVpcLinkArrayOutput

func (o VpcLinkArrayOutput) ToVpcLinkArrayOutput() VpcLinkArrayOutput

func (VpcLinkArrayOutput) ToVpcLinkArrayOutputWithContext

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

type VpcLinkInput

type VpcLinkInput interface {
	pulumi.Input

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

type VpcLinkMap

type VpcLinkMap map[string]VpcLinkInput

func (VpcLinkMap) ElementType

func (VpcLinkMap) ElementType() reflect.Type

func (VpcLinkMap) ToVpcLinkMapOutput

func (i VpcLinkMap) ToVpcLinkMapOutput() VpcLinkMapOutput

func (VpcLinkMap) ToVpcLinkMapOutputWithContext

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

type VpcLinkMapInput

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

type VpcLinkMapOutput struct{ *pulumi.OutputState }

func (VpcLinkMapOutput) ElementType

func (VpcLinkMapOutput) ElementType() reflect.Type

func (VpcLinkMapOutput) MapIndex

func (VpcLinkMapOutput) ToVpcLinkMapOutput

func (o VpcLinkMapOutput) ToVpcLinkMapOutput() VpcLinkMapOutput

func (VpcLinkMapOutput) ToVpcLinkMapOutputWithContext

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

type VpcLinkOutput

type VpcLinkOutput struct{ *pulumi.OutputState }

func (VpcLinkOutput) ElementType

func (VpcLinkOutput) ElementType() reflect.Type

func (VpcLinkOutput) ToVpcLinkOutput

func (o VpcLinkOutput) ToVpcLinkOutput() VpcLinkOutput

func (VpcLinkOutput) ToVpcLinkOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll 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