Advertisement
Guest User

Untitled

a guest
Nov 11th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 2.19 KB | None | 0 0
  1. openapi: 3.0.0
  2.  
  3. info:
  4.   version: '1.0.0'
  5.   title: 'Event Tracker Lambda'
  6.   description: 'Track event attendees'
  7.  
  8. paths:
  9.   /register:
  10.     post:
  11.       summary: Register
  12.       operationId: register
  13.       tags:
  14.        - Attendance
  15.       requestBody:
  16.         required: true
  17.         content:
  18.           application/json:
  19.             schema:
  20.               $ref: '#/components/schemas/Register'
  21.       responses:
  22.         201:
  23.           description: Attendance registered
  24.         400:
  25.           description: Bad request
  26.           content:
  27.             application/json:
  28.               schema:
  29.                 oneOf:
  30.                   - $ref: '#/components/schemas/FailedToParse'
  31.                   - $ref: '#/components/schemas/SchemaValidationFailure'
  32.         404:
  33.           description: No event to register attendance
  34.         500:
  35.           description: An unexpected error occurred
  36.           content:
  37.             application/json:
  38.               schema:
  39.                 $ref: '#/components/schemas/UnexepectedFailure'
  40.  
  41. components:
  42.   schemas:
  43.     Register:
  44.       required:
  45.        - identifier
  46.       properties:
  47.         identifier:
  48.           type: string
  49.           pattern: "^[a-zA-Z0-9]{8}$"
  50.       additionalProperties: false
  51.     FailedToParse:
  52.       required:
  53.        - reason
  54.       properties:
  55.         reason:
  56.           type: string
  57.           default: 'Failed to parse request body'
  58.       additionalProperties: false
  59.     SchemaValidationFailure:
  60.       required:
  61.        - reason
  62.         - failures
  63.       properties:
  64.         reason:
  65.           type: string
  66.           default: 'Request body failed schema validation'
  67.         failures:
  68.           type: array
  69.           items:
  70.             type: object
  71.             required:
  72.              - type
  73.               - message
  74.             properties:
  75.               property:
  76.                 type: string
  77.               message:
  78.                 type: string
  79.             additionalProperties: false
  80.       additionalProperties: false
  81.     UnexepectedFailure:
  82.       required:
  83.        - reason
  84.       properties:
  85.         reason:
  86.           type: string
  87.           default: 'An unexpected error occurred'
  88.       additionalProperties: false
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement