Business

Employee Record JSON Example

Employee JSON example for HRMS APIs with personal info, department, compensation, and manager. Copy-ready for HR systems, org charts, and employee directory schemas.

{
  "id": "emp_4Mn8pL2qZ6",
  "employeeCode": "EMP-1042",
  "firstName": "Ravi",
  "lastName": "Mehta",
  "email": "ravi.mehta@company.com",
  "phone": "+91-98765-43210",
  "jobTitle": "Senior Software Engineer",
  "department": {
    "id": "dept_eng",
    "name": "Engineering",
    "costCenter": "CC-ENG-01"
  },
  "manager": {
    "id": "emp_2Bk9sR7vY1",
    "name": "Ananya Kapoor",
    "title": "Engineering Manager"
  },
  "employment": {
    "type": "full_time",
    "status": "active",
    "startDate": "2022-06-01",
    "endDate": null,
    "probationEndDate": "2022-09-01",
    "noticePeriodDays": 60
  },
  "compensation": {
    "currency": "INR",
    "annualCTC": 1800000,
    "payFrequency": "monthly",
    "lastIncrementDate": "2025-01-15",
    "nextReviewDate": "2026-01-15"
  },
  "location": {
    "office": "Surat HQ",
    "workMode": "hybrid",
    "timezone": "Asia/Kolkata"
  },
  "createdAt": "2022-06-01T09:00:00Z",
  "updatedAt": "2025-01-20T10:00:00Z"
}

Field Reference

employeeCodestringrequiredHuman-readable employee number shown on payslips and ID cards
employment.typestringrequiredEngagement type: full_time, part_time, contract, intern
employment.statusstringrequiredCurrent state: active, on_leave, notice_period, terminated
employment.noticePeriodDaysintegeroptionalNotice period in days required for resignation or termination
compensation.annualCTCintegerrequiredAnnual cost-to-company in smallest currency unit (paise) to avoid float errors
managerobject | nulloptionalDirect manager reference. null for top-level employees or the CEO

Variants

Directory CardMinimal employee data for org charts and public directories.
Directory Card
{
  "id": "emp_4Mn8pL2qZ6",
  "name": "Ravi Mehta",
  "title": "Senior Software Engineer",
  "department": "Engineering",
  "email": "ravi.mehta@company.com",
  "avatar": "https://cdn.example.com/avatars/emp_4Mn8pL2qZ6.jpg"
}
Offboarded EmployeeRecord of an employee who has left, with offboarding checklist.
Offboarded Employee
{
  "id": "emp_9Zp4qM6nR8",
  "employeeCode": "EMP-0831",
  "name": "Priya Sharma",
  "employment": {
    "status": "terminated",
    "startDate": "2021-03-01",
    "endDate": "2024-12-31",
    "terminationReason": "resignation"
  },
  "offboarding": {
    "exitInterviewDone": true,
    "equipmentReturned": true,
    "accessRevoked": true,
    "lastWorkingDay": "2024-12-31"
  }
}

Common Use Cases

  • HRMS API response for the employee profile page
  • Payroll processing system data export
  • Building org charts and reporting hierarchy visualizations
employeeHRHRMSorg chartpayroll

Validate or format this JSON

Paste the example above into JSONKit's tools to validate, minify, or explore the structure interactively.

Frequently Asked Questions

Separate it by endpoint and access control. The employee directory (accessible to all staff) should not include compensation. Return salary only from privileged endpoints accessible to HR, the employee themselves, or their manager.

Include a manager object with the direct manager's id and name for single-level lookup. For the full tree, return a flat list with a parentId (managerId) field — the client can build the tree from this.

Requirements vary by jurisdiction. Common mandatory fields include full legal name, date of birth, tax ID (PAN in India), employment start date, and employment type. Consult your legal team for country-specific requirements.

Related JSON Examples