RequestValidator
The RequestValidator resource allows you to manage AWS ApiGateway RequestValidators which validate request parameters and request bodies for API requests.
Minimal Example
Section titled “Minimal Example”Create a basic RequestValidator with required properties and one optional property to validate request parameters:
import AWS from "alchemy/aws/control";
const requestValidator = await AWS.ApiGateway.RequestValidator("basicRequestValidator", { RestApiId: "myApiId", ValidateRequestParameters: true});
Advanced Configuration
Section titled “Advanced Configuration”Configure a RequestValidator with additional options to validate both request parameters and the request body:
const advancedRequestValidator = await AWS.ApiGateway.RequestValidator("advancedRequestValidator", { RestApiId: "myApiId", ValidateRequestParameters: true, ValidateRequestBody: true, Name: "AdvancedValidator"});
Adoption of Existing Resource
Section titled “Adoption of Existing Resource”If you want to adopt an existing RequestValidator instead of failing, you can use the adopt property:
const adoptedRequestValidator = await AWS.ApiGateway.RequestValidator("adoptedRequestValidator", { RestApiId: "myApiId", ValidateRequestParameters: true, adopt: true});
Using the RequestValidator with an API Method
Section titled “Using the RequestValidator with an API Method”Demonstrate how to associate a RequestValidator with an API method for validation:
import AWS from "alchemy/aws/control";
const requestValidator = await AWS.ApiGateway.RequestValidator("methodRequestValidator", { RestApiId: "myApiId", ValidateRequestParameters: true});
const apiMethod = await AWS.ApiGateway.Method("myApiMethod", { RestApiId: "myApiId", ResourceId: "myResourceId", HttpMethod: "POST", AuthorizationType: "NONE", RequestValidatorId: requestValidator.Arn, MethodResponses: [{ StatusCode: "200" }]});