Leapsome · Schema
Absence
People EnablementPerformance ManagementOKRsGoalsEngagement SurveysHRISSCIMEmployee Development1:1 MeetingsLearning
Properties
| Name | Type | Description |
|---|---|---|
| _id | string | Unique identifier for the absence |
| createdAt | string | When the absence was created |
| updatedAt | string | When the absence was last modified |
| userId | string | ID of the user taking the absence |
| start | string | Start date and time of the absence |
| startDayTime | string | Start time of the absence (HH:mm format) |
| startDayDuration | string | Duration type for the start day of the absence |
| end | string | End date and time of the absence |
| endDayTime | string | End time of the absence (HH:mm format) |
| endDayDuration | string | Duration type for the end day of the absence |
| absenceType | string | Type of absence being taken |
| activityType | string | Activity type classification of the absence |
| status | string | Current status of the absence |
| timeUnit | string | Unit of time used for measuring the absence duration |
| comment | string | Optional comment or note about the absence |
| actualAbsenceDuration | number | Actual duration of the absence in the specified time unit |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Absence",
"type": "object",
"required": [
"_id",
"createdAt",
"updatedAt",
"userId",
"start",
"end",
"absenceType",
"activityType",
"status",
"timeUnit"
],
"properties": {
"_id": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"example": "66a1b2c3d4e5f6789012345a",
"description": "Unique identifier for the absence"
},
"createdAt": {
"type": "string",
"format": "date-time",
"example": "2024-01-15T08:30:00.000Z",
"description": "When the absence was created"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"example": "2024-01-15T08:30:00.000Z",
"description": "When the absence was last modified"
},
"userId": {
"type": "string",
"pattern": "^[0-9a-f]{24}$",
"example": "58d55e3ffdc2eb20547edd0a",
"description": "ID of the user taking the absence"
},
"start": {
"type": "string",
"format": "date-time",
"example": "2024-02-01T00:00:00.000Z",
"description": "Start date and time of the absence"
},
"startDayTime": {
"type": "string",
"example": "09:00",
"description": "Start time of the absence (HH:mm format)"
},
"startDayDuration": {
"type": "string",
"enum": [
"fullDay",
"halfDayMorning",
"halfDayAfternoon"
],
"example": "fullDay",
"description": "Duration type for the start day of the absence"
},
"end": {
"type": "string",
"format": "date-time",
"example": "2024-02-05T23:59:59.999Z",
"description": "End date and time of the absence"
},
"endDayTime": {
"type": "string",
"example": "17:00",
"description": "End time of the absence (HH:mm format)"
},
"endDayDuration": {
"type": "string",
"enum": [
"fullDay",
"halfDayMorning",
"halfDayAfternoon"
],
"example": "fullDay",
"description": "Duration type for the end day of the absence"
},
"absenceType": {
"type": "string",
"enum": [
"paidVacation",
"sickLeave",
"parentalLeave",
"unpaidVacation",
"familyCare",
"childCare",
"shortTermAllowance",
"quarantine",
"lockout",
"irrevocableExemption",
"voluntaryMilitaryService",
"unlawfulStrike",
"lawfulStrike",
"unexcusedAbsence",
"remoteWork",
"otherPaidLeave",
"educationalLeave",
"gardenLeave",
"longtermSickLeave"
],
"example": "paidVacation",
"description": "Type of absence being taken"
},
"activityType": {
"type": "string",
"enum": [
"nonWorkingPaid",
"nonWorkingUnpaid",
"working",
"nonWorkingPartiallyPaid"
],
"example": "nonWorkingPaid",
"description": "Activity type classification of the absence"
},
"status": {
"type": "string",
"enum": [
"active",
"removed",
"pendingRemoval"
],
"example": "active",
"description": "Current status of the absence"
},
"timeUnit": {
"type": "string",
"enum": [
"days",
"hours"
],
"example": "days",
"description": "Unit of time used for measuring the absence duration"
},
"comment": {
"type": "string",
"example": "Medical appointment",
"description": "Optional comment or note about the absence"
},
"actualAbsenceDuration": {
"type": "number",
"nullable": true,
"example": 5,
"description": "Actual duration of the absence in the specified time unit"
}
}
}