Absences are created are created every time a holiday or absence is registered. The Webhook contains the following data model.
Absence Template |
{ "id": <int>, "requestedForPersonId": <int>, "unitType": <string – (Days|Hours)>, "partialDay": <string – (Morning|Afternoon) Only present on half day requests>, "numberOfHours": <decimal – Always 0.0 if unitType is Days > "start": <string ISO 8601 Date – Time Zeroed if unitType is Days >, "end": <string ISO 8601 Date – Time Zeroed if unitType is Days > "typeId": <int>, "type": <string – Type of absence e.g. Sickness, Holiday, … > "subTypeId": <int>, "subType": <string – Subtype of Absence e.g. Migraine, Flu, …> "policyId": <int>, "reason": <string>, "createdAt": <string ISO 8601 Date> "createdByPersonId": <int>, "modifiedAt": <string ISO 8601 Date>, "modifiedByPersonId": <int>, "documentId": <int – Absent in no document provided on request>, "approvalDetails": { "status": <string – (Pending|Approved|Declined)>, "approvedAt": <string ISO 8601 Date>, "response": <string>, "approvedByPersonId": <int> }, "manager": { "id": <int> } }
|
Json Schema (for use with MS Power Automate)
{
"type": "object",
"properties": {
"subjectType": {
"type": "string"
},
"changeType": {
"type": "string"
},
"subjectFrontEndUrl": {
"type": "string"
},
"timeStamp": {
"type": "string"
},
"data": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"requestedForPerson": {
"type": "object",
"properties": {
"PersonId": {
"type": "integer"
},
"FirstName": {
"type": "string"
},
"FamilyName": {
"type": "string"
},
"Email": {
"type": "string"
}
}
},
"unitType": {
"type": "string"
},
"numberOfHours": {
"type": "integer"
},
"partialDay": {
"type": "string"
},
"start": {
"type": "string"
},
"end": {
"type": "string"
},
"typeId": {
"type": "integer"
},
"type": {
"type": "string"
},
"subTypeId": {
"type": "integer"
},
"absenceSubType": {
"type": "string"
},
"policyId": {
"type": "integer"
},
"reason": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"createdByPerson": {
"type": "object",
"properties": {
"PersonId": {
"type": "integer"
},
"FirstName": {
"type": "string"
},
"FamilyName": {
"type": "string"
},
"Email": {
"type": "string"
}
}
},
"modifiedAt": {
"type": "string"
},
"modifiedByPerson": {
"type": "object",
"properties": {
"PersonId": {
"type": "integer"
},
"FirstName": {
"type": "string"
},
"FamilyName": {
"type": "string"
},
"Email": {
"type": "string"
}
}
},
"approvalDetails": {
"type": "object",
"properties": {
"status": {
"type": "string"
},
"approvedAt": {
"type": "string"
},
"response": {
"type": "string"
},
"approvalTypeId": {
"type": "integer"
},
"approvalType": {
"type": "string"
},
"approvedByPerson": {
"type": "object",
"properties": {
"PersonId": {
"type": "integer"
},
"FirstName": {
"type": "string"
},
"FamilyName": {
"type": "string"
},
"Email": {
"type": "string"
}
}
}
}
},
"manager": {
"type": "object",
"properties": {
"PersonId": {
"type": "integer"
},
"FirstName": {
"type": "string"
},
"FamilyName": {
"type": "string"
},
"Email": {
"type": "string"
}
}
},
"documentId": {
"type": "integer"
},
"taskId": {
"type": "integer"
},
"taskCompleted": {
"type": "boolean"
},
"isDeleted": {
"type": "boolean"
}
}
},
"differences": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"oldValue": {
"type": "string"
},
"newValue": {
"type": "string"
}
},
"required": [
"path",
"oldValue",
"newValue"
]
}
}
}
}