integration_responses
Creates, updates, deletes or gets an integration_response
resource or lists integration_responses
in a region
Overview
Name | integration_responses |
Type | Resource |
Description | The AWS::ApiGatewayV2::IntegrationResponse resource updates an integration response for an WebSocket API. For more information, see [Set up WebSocket API Integration Responses in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-integration-responses.html) in the *API Gateway Developer Guide*. |
Id | aws.apigatewayv2.integration_responses |
Fields
Name | Datatype | Description |
---|---|---|
integration_response_id | string | |
response_templates | object | The collection of response templates for the integration response as a string-to-string map of key-value pairs. Response templates are represented as a key/value map, with a content-type as the key and a template as the value. |
template_selection_expression | string | The template selection expression for the integration response. Supported only for WebSocket APIs. |
response_parameters | object | A key-value map specifying response parameters that are passed to the method response from the backend. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.{name} , where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.{name} or integration.response.body.{JSON-expression} , where {name} is a valid and unique response header name and {JSON-expression} is a valid JSON expression without the $ prefix. |
content_handling_strategy | string | Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT , with the following behaviors:CONVERT_TO_BINARY : Converts a response payload from a Base64-encoded string to the corresponding binary blob.CONVERT_TO_TEXT : Converts a response payload from a binary blob to a Base64-encoded string.If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification. |
integration_id | string | The integration ID. |
integration_response_key | string | The integration response key. |
api_id | string | The API identifier. |
region | string | AWS region. |
Methods
Name | Accessible by | Required Params |
---|---|---|
create_resource | INSERT | ApiId, IntegrationId, IntegrationResponseKey, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT
examples
Gets all integration_responses
in a region.
SELECT
region,
integration_response_id,
response_templates,
template_selection_expression,
response_parameters,
content_handling_strategy,
integration_id,
integration_response_key,
api_id
FROM aws.apigatewayv2.integration_responses
WHERE region = 'us-east-1';
Gets all properties from an individual integration_response
.
SELECT
region,
integration_response_id,
response_templates,
template_selection_expression,
response_parameters,
content_handling_strategy,
integration_id,
integration_response_key,
api_id
FROM aws.apigatewayv2.integration_responses
WHERE region = 'us-east-1' AND data__Identifier = '<ApiId>|<IntegrationId>|<IntegrationResponseId>';
INSERT
example
Use the following StackQL query and manifest file to create a new integration_response
resource, using stack-deploy
.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO aws.apigatewayv2.integration_responses (
IntegrationId,
IntegrationResponseKey,
ApiId,
region
)
SELECT
'{{ IntegrationId }}',
'{{ IntegrationResponseKey }}',
'{{ ApiId }}',
'{{ region }}';
/*+ create */
INSERT INTO aws.apigatewayv2.integration_responses (
ResponseTemplates,
TemplateSelectionExpression,
ResponseParameters,
ContentHandlingStrategy,
IntegrationId,
IntegrationResponseKey,
ApiId,
region
)
SELECT
'{{ ResponseTemplates }}',
'{{ TemplateSelectionExpression }}',
'{{ ResponseParameters }}',
'{{ ContentHandlingStrategy }}',
'{{ IntegrationId }}',
'{{ IntegrationResponseKey }}',
'{{ ApiId }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: integration_response
props:
- name: ResponseTemplates
value: {}
- name: TemplateSelectionExpression
value: '{{ TemplateSelectionExpression }}'
- name: ResponseParameters
value: {}
- name: ContentHandlingStrategy
value: '{{ ContentHandlingStrategy }}'
- name: IntegrationId
value: '{{ IntegrationId }}'
- name: IntegrationResponseKey
value: '{{ IntegrationResponseKey }}'
- name: ApiId
value: '{{ ApiId }}'
DELETE
example
/*+ delete */
DELETE FROM aws.apigatewayv2.integration_responses
WHERE data__Identifier = '<ApiId|IntegrationId|IntegrationResponseId>'
AND region = 'us-east-1';
Permissions
To operate on the integration_responses
resource, the following permissions are required:
Create
apigateway:POST
Read
apigateway:GET
Update
apigateway:PATCH,
apigateway:PUT,
apigateway:GET
Delete
apigateway:GET,
apigateway:DELETE
List
apigateway:GET