openapi: 3.1.0 info: title: Breathe HR REST Absences API description: Breathe HR is a UK SMB HRIS. The REST API exposes employees, absences, holidays, sicknesses, and account resources as JSON over HTTP. Requests authenticate with an X-API-KEY header containing the per-account token generated under Configure > API Settings. version: v1 contact: name: Breathe HR Developer url: https://developer.breathehr.com/ servers: - url: https://api.breathehr.com/v1 description: Production - url: https://api.sandbox.breathehr.com/v1 description: Sandbox security: - ApiKeyAuth: [] tags: - name: Absences paths: /absences: get: summary: List absences operationId: listAbsences tags: - Absences parameters: - name: page in: query schema: type: integer default: 1 - name: per_page in: query schema: type: integer default: 50 - name: employee_id in: query schema: type: integer responses: '200': description: Absences content: application/json: schema: type: array items: $ref: '#/components/schemas/Absence' /absences/{id}: parameters: - name: id in: path required: true schema: type: integer get: summary: Get an absence operationId: getAbsence tags: - Absences responses: '200': description: Absence content: application/json: schema: $ref: '#/components/schemas/Absence' components: schemas: Absence: type: object properties: id: type: integer employee_id: type: integer kind: type: string enum: - holiday - sickness - other start_date: type: string format: date end_date: type: string format: date status: type: string securitySchemes: ApiKeyAuth: type: apiKey in: header name: X-API-KEY