Skip to main content

methods

Creates, updates, deletes or gets a method resource or lists methods in a region

Overview

Namemethods
TypeResource
DescriptionThe AWS::ApiGateway::Method resource creates API Gateway methods that define the parameters and body that clients must send in their requests.
Idaws.apigateway.methods

Fields

NameDatatypeDescription
integrationobjectRepresents an HTTP, HTTP_PROXY, AWS, AWS_PROXY, or Mock integration.
operation_namestringA human-friendly operation identifier for the method. For example, you can assign the operationName of ListPets for the GET /pets method in the PetStore example.
request_modelsobjectA key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).
rest_api_idstringThe string identifier of the associated RestApi.
authorization_scopesarrayA list of authorization scopes configured on the method. The scopes are used with a COGNITO_USER_POOLS authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes.
request_validator_idstringThe identifier of a RequestValidator for request validation.
request_parametersobjectA key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of method.request.{location}.{name}, where location is querystring, path, or header and name is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (true) or optional (false). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates.
method_responsesarrayGets a method response associated with a given HTTP status code.
authorizer_idstringThe identifier of an authorizer to use on this method. The method's authorization type must be CUSTOM or COGNITO_USER_POOLS.
resource_idstringThe Resource identifier for the MethodResponse resource.
api_key_requiredbooleanA boolean flag specifying whether a valid ApiKey is required to invoke this method.
authorization_typestringThe method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.
If you specify the AuthorizerId property, specify CUSTOM or COGNITO_USER_POOLS for this property.
http_methodstringThe method's HTTP verb.
regionstringAWS region.

Methods

NameAccessible byRequired Params
create_resourceINSERTRestApiId, ResourceId, HttpMethod, region
delete_resourceDELETEdata__Identifier, region
update_resourceUPDATEdata__Identifier, data__PatchDocument, region
get_resourceSELECTdata__Identifier, region

SELECT examples

Gets all properties from an individual method.

SELECT
region,
integration,
operation_name,
request_models,
rest_api_id,
authorization_scopes,
request_validator_id,
request_parameters,
method_responses,
authorizer_id,
resource_id,
api_key_required,
authorization_type,
http_method
FROM aws.apigateway.methods
WHERE region = 'us-east-1' AND data__Identifier = '<RestApiId>|<ResourceId>|<HttpMethod>';

INSERT example

Use the following StackQL query and manifest file to create a new method resource, using stack-deploy.

/*+ create */
INSERT INTO aws.apigateway.methods (
RestApiId,
ResourceId,
HttpMethod,
region
)
SELECT
'{{ RestApiId }}',
'{{ ResourceId }}',
'{{ HttpMethod }}',
'{{ region }}';

DELETE example

/*+ delete */
DELETE FROM aws.apigateway.methods
WHERE data__Identifier = '<RestApiId|ResourceId|HttpMethod>'
AND region = 'us-east-1';

Permissions

To operate on the methods resource, the following permissions are required:

Read

apigateway:GET

Create

apigateway:PUT,
apigateway:GET,
iam:PassRole

Update

apigateway:GET,
apigateway:DELETE,
apigateway:PUT,
iam:PassRole

Delete

apigateway:DELETE