openapi: 3.1.0 info: title: Amazon API Gateway REST API Keys Authorizers API description: The Amazon API Gateway REST API enables programmatic management of API Gateway resources. You can create, configure, and manage REST APIs, stages, deployments, authorizers, models, resources, methods, and integrations through this management interface. version: '2015-07-09' contact: name: AWS Support url: https://aws.amazon.com/premiumsupport/ license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html x-logo: url: https://a0.awsstatic.com/libra-css/images/logos/aws_logo_smile_1200x630.png servers: - url: https://apigateway.{region}.amazonaws.com description: Amazon API Gateway regional endpoint variables: region: default: us-east-1 description: AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - eu-west-1 - eu-west-2 - eu-west-3 - eu-central-1 - ap-northeast-1 - ap-northeast-2 - ap-southeast-1 - ap-southeast-2 - ap-south-1 - sa-east-1 - ca-central-1 security: - sigv4: [] tags: - name: Authorizers description: Operations for managing API authorizers paths: /restapis/{restapi_id}/authorizers: get: operationId: GetAuthorizers summary: Amazon API Gateway List Authorizers description: Returns a collection of Authorizer resources for a given REST API. tags: - Authorizers parameters: - $ref: '#/components/parameters/RestApiId' - $ref: '#/components/parameters/Position' - $ref: '#/components/parameters/Limit' responses: '200': description: Successful response with list of authorizers content: application/json: schema: $ref: '#/components/schemas/Authorizers' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' post: operationId: CreateAuthorizer summary: Amazon API Gateway Create an Authorizer description: Creates an Authorizer resource for a given REST API. tags: - Authorizers parameters: - $ref: '#/components/parameters/RestApiId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateAuthorizerRequest' responses: '201': description: Authorizer created successfully content: application/json: schema: $ref: '#/components/schemas/Authorizer' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /restapis/{restapi_id}/authorizers/{authorizer_id}: get: operationId: GetAuthorizer summary: Amazon API Gateway Get an Authorizer description: Returns information about a specific authorizer. tags: - Authorizers parameters: - $ref: '#/components/parameters/RestApiId' - $ref: '#/components/parameters/AuthorizerId' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Authorizer' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' patch: operationId: UpdateAuthorizer summary: Amazon API Gateway Update an Authorizer description: Updates an existing authorizer. tags: - Authorizers parameters: - $ref: '#/components/parameters/RestApiId' - $ref: '#/components/parameters/AuthorizerId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchOperations' responses: '200': description: Authorizer updated successfully content: application/json: schema: $ref: '#/components/schemas/Authorizer' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: operationId: DeleteAuthorizer summary: Amazon API Gateway Delete an Authorizer description: Deletes an existing authorizer. tags: - Authorizers parameters: - $ref: '#/components/parameters/RestApiId' - $ref: '#/components/parameters/AuthorizerId' responses: '202': description: Authorizer deletion accepted '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' '429': $ref: '#/components/responses/TooManyRequests' components: parameters: Limit: name: limit in: query description: The maximum number of returned results per page. The default value is 25 and the maximum value is 500. schema: type: integer minimum: 1 maximum: 500 default: 25 RestApiId: name: restapi_id in: path required: true description: The identifier of the REST API. schema: type: string Position: name: position in: query description: The current pagination position in the paged result set. Used for cursor-based pagination. schema: type: string AuthorizerId: name: authorizer_id in: path required: true description: The identifier of the authorizer. schema: type: string schemas: Authorizers: type: object properties: position: type: string item: type: array items: $ref: '#/components/schemas/Authorizer' Authorizer: type: object properties: id: type: string description: The identifier of the authorizer. name: type: string description: The name of the authorizer. type: type: string enum: - TOKEN - REQUEST - COGNITO_USER_POOLS description: The authorizer type. providerARNs: type: array items: type: string description: A list of the Amazon Cognito user pool ARNs. authType: type: string description: An optional customer-defined field for authorization type. authorizerUri: type: string description: The authorizer's URI. For TOKEN or REQUEST authorizers, this is the Lambda function URI. authorizerCredentials: type: string description: The credentials required for the authorizer as an IAM role ARN. identitySource: type: string description: The identity source for which authorization is requested. identityValidationExpression: type: string description: A validation expression for the incoming identity token. authorizerResultTtlInSeconds: type: integer description: The TTL in seconds of cached authorizer results. Max 3600. PatchOperation: type: object properties: op: type: string enum: - add - remove - replace - move - copy - test description: The operation type. path: type: string description: The op operation's target, as identified by a JSON Pointer value. value: type: string description: The new target value of the update operation. It is applicable for the add or replace operation. from: type: string description: The copy update operation's source as identified by a JSON Pointer value. CreateAuthorizerRequest: type: object required: - name - type properties: name: type: string description: The name of the authorizer. type: type: string enum: - TOKEN - REQUEST - COGNITO_USER_POOLS providerARNs: type: array items: type: string authType: type: string authorizerUri: type: string authorizerCredentials: type: string identitySource: type: string identityValidationExpression: type: string authorizerResultTtlInSeconds: type: integer PatchOperations: type: object properties: patchOperations: type: array items: $ref: '#/components/schemas/PatchOperation' Error: type: object properties: message: type: string description: A human-readable error message. code: type: string description: The error code. responses: TooManyRequests: description: The request rate has exceeded the allowed limit. content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: The request is invalid or malformed. content: application/json: schema: $ref: '#/components/schemas/Error' NotFound: description: The specified resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error' Conflict: description: The request conflicts with the current state of the resource. content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: sigv4: type: apiKey name: Authorization in: header description: AWS Signature Version 4 authentication