# List absence types. List absence type. # OpenAPI definition ```json { "openapi": "3.0.3", "info": { "title": "Absence Period API", "version": "2.0.0", "description": "Read API for Absence Entities." }, "servers": [ { "url": "https://api.personio.de" } ], "security": [ { "BearerAuth": [] } ], "tags": [ { "name": "Absence Types", "description": "Endpoints to retrieve absence types." } ], "paths": { "/v2/absence-types": { "get": { "summary": "List absence types.", "description": "List absence type.", "tags": [ "Absence Types" ], "parameters": [ { "in": "query", "name": "cursor", "example": "cur_82sQwR2eZvKilo2duNh219Kw", "required": false, "schema": { "type": "string" }, "description": "The pagination cursor to navigate over to the next list of resources. If you pass a specific limit to your request, or you rely on the default value of the number of resources to be returned, then your subsequent call has to include the cursor in order to retrieve the next list of resources. If cursor is missing, the first page is returned." }, { "name": "limit", "in": "query", "required": false, "schema": { "type": "integer", "minimum": 1, "maximum": 100, "default": 100, "example": 50 }, "description": "The maximum number of absence types returned per request." } ], "x-path-examples": { "200 Valid request": { "value": "/papi/v2/absence-types", "query": "limit=3" }, "403 Forbidden": { "value": "/papi/v2/absence-types" }, "400 Invalid cursor": { "value": "/papi/v2/absence-types", "query": "cursor=invalid-cursor-string" } }, "responses": { "200": { "description": "Successful response.", "content": { "application/json": { "schema": { "type": "object", "description": "A list of all defined absence types.\n", "properties": { "_data": { "type": "array", "items": { "$ref": "#/components/schemas/AbsenceType" } }, "_meta": { "description": "This object represents the metadata information for an object. It's a set of arbitrary key/value attributes such as `links`.", "type": "object", "readOnly": true, "properties": { "links": { "type": "object", "additionalProperties": { "description": "This objects represents a hyperlink.", "type": "object", "readOnly": true, "properties": { "href": { "type": "string", "format": "uri" } }, "additionalProperties": true }, "example": { "links": { "self": { "href": "https://api.personio.de/v2/person?cursor=" } } } } } } } }, "examples": { "200 Valid request": { "$ref": "#/components/examples/ListAbsenceTypesResponse" } } } } }, "400": { "$ref": "#/components/responses/BadRequestInvalidCursorErrorResponse" }, "403": { "$ref": "#/components/responses/ForbiddenErrorResponse" } } } } }, "components": { "securitySchemes": { "BearerAuth": { "type": "http", "scheme": "bearer" } }, "examples": { "ListAbsenceTypesResponse": { "value": { "_data": [ { "id": "abc6fa09-d8fe-4de0-be03-f0a1d48df766", "name": "Vacation", "category": "PAID_VACATION", "unit": "DAY" }, { "id": "cba6fa09-d8fe-4de0-be03-f0a1d48df766", "name": "Sick leave", "category": "SICK_LEAVE", "unit": "HOUR" } ], "_meta": { "links": { "self": { "href": "https://api.personio.de/v2/absence-types" }, "next": { "href": "https://api.personio.de/v2/absence-types?cursor=cur_234ls0f02lalfdd" } } } } } }, "schemas": { "AbsenceType": { "type": "object", "description": "AbsenceType represents a classification of absence periods.", "properties": { "id": { "type": "string", "description": "A unique identifier for this absence type.", "example": "abc6fa09-d8fe-4de0-be03-f0a1d48df766" }, "name": { "type": "string", "description": "The name of the absence type.", "example": "Parental Leave (UK)" }, "category": { "type": "string", "description": "The category of the absence type.", "example": "SICK_LEAVE" }, "unit": { "type": "string", "description": "The units used for measuring this type of absence. See `AbsencePeriod` time range documentation for details\nabout how the absence type unit relates to valid and invalid time ranges for a period.\n* DAY: Absence periods of this type are specified in days or half days\n* HOUR: Absence periods of this type can have durations of less than 24 hours\n", "enum": [ "DAY", "HOUR" ], "example": "DAY" } } } }, "responses": { "BadRequestInvalidCursorErrorResponse": { "description": "Bad request.", "content": { "application/problem+json": { "schema": { "$ref": "#/components/responses/ForbiddenErrorResponse/content/application~1problem%2Bjson/schema" }, "examples": { "400 Invalid cursor": { "value": { "personio_trace_id": "8b46fa09-d8fe-4de0-be03-f0a1d48df766", "timestamp": "2021-05-28T11:17:30Z", "errors": [ { "title": "Invalid cursor", "detail": "The provided cursor is not valid." } ] } } } } } }, "ForbiddenErrorResponse": { "description": "Access to this endpoint is denied.", "content": { "application/problem+json": { "schema": { "type": "object", "description": "This object represents an error response.", "properties": { "personio_trace_id": { "type": "string", "example": "aswo3f-a202lfso-312123sld-1230ddd", "description": "A unique ID that was created for this error." }, "timestamp": { "type": "string", "format": "date-time", "example": "2021-05-28T11:17:30.000Z", "description": "The timestamp of when the error occurred." }, "errors": { "type": "array", "items": { "type": "object", "properties": { "title": { "type": "string", "example": "Not found", "description": "The title of the error." }, "detail": { "type": "string", "example": "The requested resource was not found.", "description": "A short description about the error." }, "type": { "type": "string", "format": "uri", "example": "https://developer.personio.de/reference/errors#common.requested_resource_not_found", "description": "A link to the developer hub where more information can be found for the encountered error." }, "_meta": { "type": "object", "additionalProperties": { "type": "string" } } } } } } }, "examples": { "403 Forbidden": { "value": { "personio_trace_id": "8b46fa09-d8fe-4de0-be03-f0a1d48df766", "timestamp": "2021-05-28T11:17:30Z", "errors": [ { "title": "Access Denied", "detail": "Access to this endpoint is denied." } ] } } } } } } } } } ```