RouteResponse
The RouteResponse resource lets you manage AWS ApiGatewayV2 RouteResponses, which define how API responses are handled and formatted. For more details, you can refer to the AWS ApiGatewayV2 RouteResponses documentation.
Minimal Example
Section titled “Minimal Example”Create a basic RouteResponse with required properties and one optional property.
import AWS from "alchemy/aws/control";
const routeResponse = await AWS.ApiGatewayV2.RouteResponse("basicRouteResponse", { RouteResponseKey: "200", RouteId: "123456", ApiId: "api-abcdef", ResponseParameters: { "method.response.header.Access-Control-Allow-Origin": "'*'" }});
Advanced Configuration
Section titled “Advanced Configuration”Configure a RouteResponse with additional properties to refine response handling.
const advancedRouteResponse = await AWS.ApiGatewayV2.RouteResponse("advancedRouteResponse", { RouteResponseKey: "404", RouteId: "123456", ApiId: "api-abcdef", ModelSelectionExpression: "$request.body.type", ResponseModels: { "application/json": "ErrorModel" }});
Custom Response Parameters
Section titled “Custom Response Parameters”Create a RouteResponse that specifies custom response parameters for CORS.
const corsRouteResponse = await AWS.ApiGatewayV2.RouteResponse("corsRouteResponse", { RouteResponseKey: "200", RouteId: "123456", ApiId: "api-abcdef", ResponseParameters: { "method.response.header.Access-Control-Allow-Origin": "'https://example.com'", "method.response.header.Access-Control-Allow-Methods": "'GET, POST, OPTIONS'", "method.response.header.Access-Control-Allow-Headers": "'Content-Type'" }});
Response Model Example
Section titled “Response Model Example”Define a RouteResponse that leverages a specific response model for structured data.
const modelRouteResponse = await AWS.ApiGatewayV2.RouteResponse("modelRouteResponse", { RouteResponseKey: "200", RouteId: "123456", ApiId: "api-abcdef", ResponseModels: { "application/json": "MyResponseModel" }});