Skip to main content

aws_api_gateway_response resource

Use the aws_api_gateway_response Chef InSpec audit resource to test properties of a single AWS API Gateway gateway response.

The AWS::ApiGateway::GatewayResponse resource creates a gateway response for your API.

For additional information, including details on parameters and properties, see the AWS documentation on the AWS::APIGateway::GatewayResponse resource.

Syntax

Ensure that the response exists.

describe aws_api_gateway_response(rest_api_id: 'REST_API_ID', response_type: 'RESPONSE_TYPE') do
  it { should exist }
end

Parameters

rest_api_id (required)

The string identifier of the associated REST API.

response_type (required)

The response type of the associated gateway response.

Properties

response_type
The response type of the associated GatewayResponse.
status_code
The HTTP status code for this GatewayResponse.
response_parameters
Response parameters (paths, query strings and headers) of the GatewayResponse as a string-to-string map of key-value pairs.
response_templates
Response templates of the GatewayResponse as a string-to-string map of key-value pairs.
default_response
A Boolean flag to indicate whether this GatewayResponse is the default gateway response (true ) or not (false ).

Examples

Ensure a response type is ‘DEFAULT_4XX’:

describe aws_api_gateway_response(rest_api_id: 'REST_API_ID', response_type: 'DEFAULT_4XX') do
  its('response_type') { should eq 'DEFAULT_4XX' }
end

Ensure a status code is 200:

describe aws_api_gateway_response(rest_api_id: 'REST_API_ID', response_type: 'RESPONSE_TYPE') do
  its('status_code') { should eq '200' }
end

Matchers

For a full list of available matchers, see our Universal Matchers page.

This resource has the following special matchers.

exist

Use should to test that the entity exists.

describe aws_api_gateway_response(rest_api_id: 'REST_API_ID', response_type: 'RESPONSE_TYPE') do
  it { should exist }
end

Use should_not to test the entity does not exist.

describe aws_api_gateway_response(rest_api_id: 'REST_API_ID', response_type: 'RESPONSE_TYPE') do
  it { should_not exist }
end

AWS Permissions

Your AWS principal will need the APIGateway:Client:GatewayResponse action with Effect set to Allow.

Thank you for your feedback!

×