Get Personnel Event¶
Endpoint: GET /api/personnel-events/{id}
Description: Returns a single personnel event by its unique identifier, including milestone stages, activity log, and comments.
Path Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string (GUID) | Yes | The unique identifier of the personnel event. |
Response Attributes¶
| Field | Type | Description |
|---|---|---|
id |
string (GUID) | Unique identifier of the personnel event. |
kind |
string | Resource type. Always Personnel Event. |
number |
integer | Sequential personnel event number. |
type |
string | Event type. Values: Onboard, Offboard, Role Transition, Absence. |
status |
string | Current status. Values: Pending, Open, Resolved, Completed, Canceled, Scheduled, Snoozed. |
reporter |
object | The user who created the personnel event. |
reporter.id |
string (GUID) | Reporter identity ID. |
reporter.name |
string | Reporter display name. |
assignee |
object | The identity assigned to manage the event. null if unassigned. |
assignee.id |
string (GUID) | Assignee identity ID. |
assignee.name |
string | Assignee display name. |
affectedIdentity |
object | The identity affected by this event. Full identity representation. |
affectedIdentity.id |
string (GUID) | Identity ID. |
affectedIdentity.kind |
string | Always Identity. |
affectedIdentity.firstName |
string | First name. |
affectedIdentity.lastName |
string | Last name. |
affectedIdentity.emailAddress |
string | Email address. |
affectedIdentity.type |
string | Identity type. |
affectedIdentity.title |
string | Job title. |
affectedIdentity.company |
string | Company name. |
affectedIdentity.division |
string | Division name. |
affectedIdentity.department |
string | Department name. |
affectedIdentity.office |
string | Office location. |
affectedIdentity.supervisorName |
string | Supervisor display name. |
affectedIdentity.createdDate |
string (ISO 8601) | Source system created date. |
affectedIdentity.updatedDate |
string (ISO 8601) | Source system updated date. |
affectedIdentity.firstSeenDate |
string (ISO 8601) | First import date. |
affectedIdentity.inactivatedDate |
string (ISO 8601) | Inactivation date. |
affectedIdentity.status |
string | Identity status. |
neededOn |
string (ISO 8601) | Effective date of the event. |
neededUntil |
string (ISO 8601) | End date. null if not applicable. |
completedOn |
string (ISO 8601) | Date the event was completed. null if not completed. |
stages |
array[object] | Milestone stages for this event, ordered by sequence. |
stages[].name |
string | Stage name (e.g., Approval, Provision, Verification, Transition, Removal). |
stages[].status |
string | Stage status. Values: Pending, Open, Resolved, Completed, Canceled, Scheduled, Snoozed. |
stages[].startedOn |
string (ISO 8601) | Date the stage started. null if not started. |
stages[].scheduledStart |
string (ISO 8601) | Scheduled start date. null if not scheduled. |
stages[].completedOn |
string (ISO 8601) | Date the stage was completed. null if not completed. |
stages[].completedBy |
object | The identity who completed the stage. null if not completed. |
stages[].completedBy.id |
string (GUID) | Identity ID. |
stages[].completedBy.name |
string | Display name. |
stages[].accessRequests |
array[object] | Access requests generated by this stage. Summary representation. |
stages[].accessRequests[].id |
string (GUID) | Access request ID. |
stages[].accessRequests[].kind |
string | Always Access Request. |
stages[].accessRequests[].number |
integer | Access request number. |
stages[].accessRequests[].action |
string | Action type. |
stages[].accessRequests[].status |
string | Access request status. |
stages[].accessRequests[].reporter |
object | Reporter reference. |
stages[].accessRequests[].reporter.id |
string (GUID) | Reporter identity ID. |
stages[].accessRequests[].reporter.name |
string | Reporter display name. |
stages[].accessRequests[].assignee |
object | Assignee reference. null if unassigned. |
stages[].accessRequests[].assignee.id |
string (GUID) | Assignee identity ID. |
stages[].accessRequests[].assignee.name |
string | Assignee display name. |
stages[].accessRequests[].target |
object | Target user or group. |
stages[].accessRequests[].target.type |
string | Target type. Values: User, Group. |
stages[].accessRequests[].target.name |
string | Target name. |
stages[].accessRequests[].target.affectedIdentity |
object | Affected identity. Full identity representation. |
stages[].accessRequests[].target.application |
object | Application summary. |
stages[].accessRequests[].scheduledStart |
string (ISO 8601) | Scheduled start date. |
stages[].accessRequests[].startedOn |
string (ISO 8601) | Date work started. |
stages[].accessRequests[].approvedOn |
string (ISO 8601) | Date approved. |
stages[].accessRequests[].resolvedOn |
string (ISO 8601) | Date resolved. |
stages[].accessRequests[].verifiedOn |
string (ISO 8601) | Date verified. |
stages[].accessRequests[].completedOn |
string (ISO 8601) | Date completed. |
stages[].accessRequests[].canceledOn |
string (ISO 8601) | Date canceled. |
activity |
array[object] | Chronological activity log. |
activity[].createdDate |
string (ISO 8601) | Date of the activity entry. |
activity[].author |
string | Author display name. |
activity[].action |
string | Action description. null if not applicable. |
activity[].content |
string | Activity detail text. |
comments |
array[object] | User comments on this event. |
comments[].createdDate |
string (ISO 8601) | Date the comment was posted. |
comments[].author |
string | Comment author display name. |
comments[].content |
string | Comment text. |
Sample Response¶
{
"id": "e5f6a7b8-c9d0-1234-5678-9abcdef01234",
"kind": "Personnel Event",
"number": 312,
"type": "Onboard",
"status": "Completed",
"reporter": {
"id": "c4d5e6f7-a8b9-0123-4567-89abcdef0123",
"name": "API Token - HR Integration"
},
"assignee": {
"id": "e6f7a8b9-c0d1-2345-6789-abcdef012345",
"name": "Williams, James"
},
"affectedIdentity": {
"id": "d4a7e2b1-3f5c-4a8d-9e6b-1c2d3e4f5a6b",
"kind": "Identity",
"firstName": "Sarah",
"lastName": "Chen",
"emailAddress": "schen@firstbankofvalkyrie.com",
"type": "Employee",
"title": "Senior Loan Officer",
"company": "First Bank of Valkyrie",
"division": "Commercial Lending",
"department": "Business Loans",
"office": "Fargo Main",
"supervisorName": "Martinez, Robert",
"createdDate": "2023-03-15T14:30:00Z",
"updatedDate": "2025-11-20T09:15:00Z",
"firstSeenDate": "2023-03-16T02:00:00Z",
"inactivatedDate": null,
"status": "Active"
},
"neededOn": "2023-03-15T00:00:00Z",
"neededUntil": null,
"completedOn": "2023-03-17T16:00:00Z",
"stages": [
{
"name": "Approval",
"status": "Completed",
"startedOn": "2023-03-08T10:00:00Z",
"scheduledStart": "2023-03-08T00:00:00Z",
"completedOn": "2023-03-08T14:30:00Z",
"completedBy": {
"id": "f7a8b9c0-d1e2-3456-7890-abcdef012345",
"name": "Martinez, Robert"
},
"accessRequests": []
},
{
"name": "Provision",
"status": "Completed",
"startedOn": "2023-03-15T08:00:00Z",
"scheduledStart": "2023-03-15T00:00:00Z",
"completedOn": "2023-03-16T11:00:00Z",
"completedBy": {
"id": "e6f7a8b9-c0d1-2345-6789-abcdef012345",
"name": "Williams, James"
},
"accessRequests": [
{
"id": "a2b3c4d5-e6f7-8901-2345-6789abcdef01",
"kind": "Access Request",
"number": 1038,
"action": "Add",
"status": "Completed",
"reporter": {
"id": "c4d5e6f7-a8b9-0123-4567-89abcdef0123",
"name": "API Token - HR Integration"
},
"assignee": {
"id": "e6f7a8b9-c0d1-2345-6789-abcdef012345",
"name": "Williams, James"
},
"target": {
"type": "User",
"name": "schen",
"affectedIdentity": {
"id": "d4a7e2b1-3f5c-4a8d-9e6b-1c2d3e4f5a6b",
"kind": "Identity",
"firstName": "Sarah",
"lastName": "Chen",
"emailAddress": "schen@firstbankofvalkyrie.com",
"type": "Employee",
"title": "Senior Loan Officer",
"company": "First Bank of Valkyrie",
"division": "Commercial Lending",
"department": "Business Loans",
"office": "Fargo Main",
"supervisorName": "Martinez, Robert",
"createdDate": "2023-03-15T14:30:00Z",
"updatedDate": "2025-11-20T09:15:00Z",
"firstSeenDate": "2023-03-16T02:00:00Z",
"inactivatedDate": null,
"status": "Active"
},
"application": {
"id": "b8c1d2e3-4f5a-6b7c-8d9e-0f1a2b3c4d5e",
"kind": "Application",
"name": "Jack Henry Symitar",
"priority": "Critical",
"isArchived": false,
"lastUpdated": "2025-12-01T08:45:00Z"
}
},
"scheduledStart": "2023-03-15T00:00:00Z",
"startedOn": "2023-03-15T08:00:00Z",
"approvedOn": "2023-03-08T14:30:00Z",
"resolvedOn": "2023-03-16T10:00:00Z",
"verifiedOn": "2023-03-16T11:00:00Z",
"completedOn": "2023-03-16T11:00:00Z",
"canceledOn": null
}
]
},
{
"name": "Verification",
"status": "Completed",
"startedOn": "2023-03-16T11:00:00Z",
"scheduledStart": null,
"completedOn": "2023-03-17T16:00:00Z",
"completedBy": {
"id": "f7a8b9c0-d1e2-3456-7890-abcdef012345",
"name": "Martinez, Robert"
},
"accessRequests": []
}
],
"activity": [
{
"createdDate": "2023-03-08T10:00:00Z",
"author": "API Token - HR Integration",
"action": "Created",
"content": "Onboard event created via API"
},
{
"createdDate": "2023-03-08T14:30:00Z",
"author": "Martinez, Robert",
"action": "Approved",
"content": "Approved onboarding for new hire"
}
],
"comments": [
{
"createdDate": "2023-03-15T09:00:00Z",
"author": "Williams, James",
"content": "Setting up accounts in core banking system and Active Directory."
}
]
}
Error Response (404)¶
{
"error": "not_found",
"message": "PersonnelEvent with id e5f6a7b8-c9d0-1234-5678-9abcdef01234 not found",
"correlationId": "a1b2c3d4e5f6789012345678abcdef01"
}