AWS Certified Developer – Associate (DVA-C02) — Question 387

A company has a web application that contains an Amazon API Gateway REST API. A developer has created an AWS CloudFormation template for the initial deployment of the application. The developer has deployed the application successfully as part of an AWS CodePipeline continuous integration and continuous delivery (CI/CD) process. All resources and methods are available through the deployed stage endpoint.

The CloudFormation template contains the following resource types:

• AWS::ApiGateway::RestApi
• AWS::ApiGateway::Resource
• AWS::ApiGateway::Method
• AWS::ApiGateway::Stage
• AWS::ApiGateway::Deployment

The developer adds a new resource to the REST API with additional methods and redeploys the template. CloudFormation reports that the deployment is successful and that the stack is in the UPDATE_COMPLETE state. However, calls to all new methods are returning 404 (Not Found) errors.

What should the developer do to make the new methods available?

Answer options

Correct answer: C

Explanation

AWS CloudFormation does not automatically trigger a new API Gateway deployment when child resources like AWS::ApiGateway::Resource or AWS::ApiGateway::Method are updated, unless the AWS::ApiGateway::Deployment logical ID is changed. Running the 'aws apigateway create-deployment' command via an AWS CodeBuild stage in the pipeline forces a redeployment to the target stage, making the new endpoints live. Options A and B do not trigger a deployment, and Option D is incorrect because CloudFront invalidation will not deploy the new API Gateway configuration.