Route Args
Manages an Amazon API Gateway Version 2 route. More information can be found in the Amazon API Gateway Developer Guide for WebSocket and HTTP APIs.
Example Usage
Basic
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.apigatewayv2.Api;
import com.pulumi.aws.apigatewayv2.ApiArgs;
import com.pulumi.aws.apigatewayv2.Route;
import com.pulumi.aws.apigatewayv2.RouteArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var exampleApi = new Api("exampleApi", ApiArgs.builder()
.protocolType("WEBSOCKET")
.routeSelectionExpression("$request.body.action")
.build());
var exampleRoute = new Route("exampleRoute", RouteArgs.builder()
.apiId(exampleApi.id())
.routeKey("$default")
.build());
}
}
HTTP Proxy Integration
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.apigatewayv2.Api;
import com.pulumi.aws.apigatewayv2.ApiArgs;
import com.pulumi.aws.apigatewayv2.Integration;
import com.pulumi.aws.apigatewayv2.IntegrationArgs;
import com.pulumi.aws.apigatewayv2.Route;
import com.pulumi.aws.apigatewayv2.RouteArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var exampleApi = new Api("exampleApi", ApiArgs.builder()
.protocolType("HTTP")
.build());
var exampleIntegration = new Integration("exampleIntegration", IntegrationArgs.builder()
.apiId(exampleApi.id())
.integrationType("HTTP_PROXY")
.integrationMethod("ANY")
.integrationUri("https://example.com/{proxy}")
.build());
var exampleRoute = new Route("exampleRoute", RouteArgs.builder()
.apiId(exampleApi.id())
.routeKey("ANY /example/{proxy+}")
.target(exampleIntegration.id().applyValue(id -> String.format("integrations/%s", id)))
.build());
}
}
Import
aws_apigatewayv2_route
can be imported by using the API identifier and route identifier, e.g.,
$ pulumi import aws:apigatewayv2/route:Route example aabbccddee/1122334
Constructors
Properties
Boolean whether an API key is required for the route. Defaults to false
. Supported only for WebSocket APIs.
Authorization scopes supported by this route. The scopes are used with a JWT authorizer to authorize the method invocation.
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
.
Identifier of the aws.apigatewayv2.Authorizer
resource to be associated with this route.
The model selection expression for the route. Supported only for WebSocket APIs.
Operation name for the route. Must be between 1 and 64 characters in length.
Request models for the route. Supported only for WebSocket APIs.
Request parameters for the route. Supported only for WebSocket APIs.
The route response selection expression for the route. Supported only for WebSocket APIs.