{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://schemas.workday.com/absence", "title": "Absence", "description": "Represents a time off request or leave of absence within the Workday Absence Management system.", "type": "object", "properties": { "id": { "type": "string", "description": "The unique Workday identifier for the absence record" }, "descriptor": { "type": "string", "description": "The display name of the absence record" }, "worker": { "$ref": "#/$defs/ResourceReference", "description": "The worker who requested the absence" }, "absenceType": { "$ref": "#/$defs/ResourceReference", "description": "The type of absence (Vacation, Sick, Personal, etc.)" }, "startDate": { "type": "string", "format": "date", "description": "The start date of the absence" }, "endDate": { "type": ["string", "null"], "format": "date", "description": "The end date of the absence" }, "quantity": { "type": "number", "description": "The duration of the absence in the specified unit" }, "unit": { "type": "string", "enum": ["Hours", "Days"], "description": "The unit of measurement for the absence quantity" }, "status": { "type": "string", "enum": ["Approved", "Submitted", "Not Submitted", "Sent Back", "Cancelled", "Denied"], "description": "The approval status of the absence request" }, "comment": { "type": "string", "description": "Optional comment provided with the absence request" }, "absenceCategory": { "type": "string", "enum": ["Time_Off", "Leave_Of_Absence"], "description": "Whether this is a time off request or leave of absence" } }, "required": ["id", "worker", "absenceType", "startDate"], "$defs": { "ResourceReference": { "type": "object", "properties": { "id": { "type": "string" }, "descriptor": { "type": "string" }, "href": { "type": "string", "format": "uri" } }, "required": ["id"] } } }