UNPKG

spectral-aws-apigateway-ruleset

Version:

A spectral ruleset to enforce the AWS API Gateway Important Notes

205 lines (201 loc) 5.05 kB
openapi: "3.0.1" info: version: 1.0.0 contact: email: andy@zrmt.com title: AWS APi Gateway Petstore license: name: MIT description: An example API Gateway for AWS API Gateway servers: - url: https://petstoreapi.example.com variables: basePath: default: / description: Main tags: - name: Example description: An example tag - name: pets description: Endpoints related to pets x-amazon-apigateway-request-validators: all: validateRequestBody: true validateRequestParameters: true x-amazon-apigateway-request-validator: all paths: /pets: get: description: List all pets operationId: "listPets" tags: - pets parameters: - name: "limit" in: "query" schema: type: "string" responses: "200": description: "200 response" content: application/json: schema: $ref: "#/components/schemas/Pets" x-amazon-apigateway-integration: responses: default: statusCode: "200" requestTemplates: application/json: "{\"statusCode\": 200}" passthroughBehavior: "when_no_match" type: "mock" post: description: Updated Pet tags: - pets operationId: "createPets" requestBody: content: application/json: schema: $ref: "#/components/schemas/Pet" required: true responses: "404": description: "404 response" content: application/json: schema: $ref: "#/components/schemas/Error" "200": description: "200 response" content: application/json: schema: $ref: "#/components/schemas/Pet" "201": description: "201 response" content: application/json: schema: $ref: "#/components/schemas/ArrayOfError" "400": description: "400 response" content: application/json: schema: $ref: "#/components/schemas/Error" "401": description: "401 response" content: application/json: schema: $ref: "#/components/schemas/Error" "403": description: "403 response" content: application/json: schema: $ref: "#/components/schemas/Error" x-amazon-apigateway-integration: responses: default: statusCode: "200" requestTemplates: application/json: "{\"statusCode\": 200}" passthroughBehavior: "never" type: "mock" /pets/{petId}: get: description: Upload pet tags: - pets operationId: "showPetById" parameters: - name: "petId" in: "path" required: true schema: type: "string" responses: "200": description: "200 response" content: application/json: schema: $ref: "#/components/schemas/Pet" x-amazon-apigateway-integration: responses: default: statusCode: "200" responseTemplates: application/json: "{\"statusCode\": 200}" passthroughBehavior: "when_no_match" type: "mock" components: schemas: Pet: type: "object" required: - id - name properties: id: type: integer name: type: string tag: type: string additionalProperties: true Pets: type: array items: $ref: '#/components/schemas/Pet' maxItems: 10 Error: type: "object" required: - code - message properties: code: type: integer message: type: string additionalProperties: false ArrayOfError: type: "array" items: $ref: "#/components/schemas/Error" maxItems: 10 responses: BadRequest: description: The request was badly formed content: application/json: schema: $ref: '#/components/schemas/Error' NotFound: description: The item was not found content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorised: description: Unauthorised. The client lacks authentication credentials for this request content: application/json: schema: $ref: '#/components/schemas/Error' Forbidden: description: Forbidden. The authenticated client is not allowed to perform the request content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: encryptedScheme: type: oauth2 security: - oauth2: []