Sage HR · Schema

Sage HR Employee

An employee record as returned by the Sage HR /employees and /employees/{id} endpoints. Derived from the published Sage HR API reference at apidoc.sage.hr and the konfig-sdks/sage-java-sdk OpenAPI artifact.

HRHRISPeopleSMBLeave ManagementRecruitmentPerformanceTimesheetsOnboarding

Properties

Name Type Description
id integer Unique Sage HR employee identifier.
email string Primary work email address for the employee.
first_name string Employee's first name.
last_name string Employee's last name.
picture_url string URL of the employee's profile picture.
employment_start_date string Date the employee started employment.
date_of_birth string Employee's date of birth.
gender string Employee's gender.
marital_status string Employee's marital status.
personal_identification_number string National ID / personal identification number (privacy-sensitive).
personal_email string Personal (non-work) email address.
phone_number string Primary phone number.
home_phone string Home phone number.
address string Employee street address.
city string Employee city.
country string Employee country.
postcode string Employee postal code.
team string Current team name.
team_id integer Current team ID.
position string Current position title.
position_id integer Current position ID.
reports_to_employee_id integer Sage HR employee ID of the direct manager.
employment_status string Current employment status (e.g., Full-Time, Part-Time, Contractor).
employment_status_history array Historical employment status changes.
team_history array Historical team assignments.
position_history array Historical position assignments.
View JSON Schema on GitHub

JSON Schema

sage-hr-employee-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/sage-hr/main/json-schema/sage-hr-employee-schema.json",
  "title": "Sage HR Employee",
  "description": "An employee record as returned by the Sage HR /employees and /employees/{id} endpoints. Derived from the published Sage HR API reference at apidoc.sage.hr and the konfig-sdks/sage-java-sdk OpenAPI artifact.",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "description": "Unique Sage HR employee identifier."
    },
    "email": {
      "type": "string",
      "format": "email",
      "description": "Primary work email address for the employee."
    },
    "first_name": {
      "type": "string",
      "description": "Employee's first name."
    },
    "last_name": {
      "type": "string",
      "description": "Employee's last name."
    },
    "picture_url": {
      "type": "string",
      "format": "uri",
      "description": "URL of the employee's profile picture."
    },
    "employment_start_date": {
      "type": "string",
      "format": "date",
      "description": "Date the employee started employment."
    },
    "date_of_birth": {
      "type": "string",
      "format": "date",
      "description": "Employee's date of birth."
    },
    "gender": {
      "type": "string",
      "description": "Employee's gender."
    },
    "marital_status": {
      "type": "string",
      "description": "Employee's marital status."
    },
    "personal_identification_number": {
      "type": "string",
      "description": "National ID / personal identification number (privacy-sensitive)."
    },
    "personal_email": {
      "type": "string",
      "format": "email",
      "description": "Personal (non-work) email address."
    },
    "phone_number": {
      "type": "string",
      "description": "Primary phone number."
    },
    "home_phone": {
      "type": "string",
      "description": "Home phone number."
    },
    "address": {
      "type": "string",
      "description": "Employee street address."
    },
    "city": {
      "type": "string",
      "description": "Employee city."
    },
    "country": {
      "type": "string",
      "description": "Employee country."
    },
    "postcode": {
      "type": "string",
      "description": "Employee postal code."
    },
    "team": {
      "type": "string",
      "description": "Current team name."
    },
    "team_id": {
      "type": "integer",
      "description": "Current team ID."
    },
    "position": {
      "type": "string",
      "description": "Current position title."
    },
    "position_id": {
      "type": "integer",
      "description": "Current position ID."
    },
    "reports_to_employee_id": {
      "type": "integer",
      "description": "Sage HR employee ID of the direct manager."
    },
    "employment_status": {
      "type": "string",
      "description": "Current employment status (e.g., Full-Time, Part-Time, Contractor)."
    },
    "employment_status_history": {
      "type": "array",
      "description": "Historical employment status changes.",
      "items": {
        "type": "object",
        "properties": {
          "employment_status": { "type": "string" },
          "start_date": { "type": "string", "format": "date" },
          "end_date": { "type": ["string", "null"], "format": "date" }
        }
      }
    },
    "team_history": {
      "type": "array",
      "description": "Historical team assignments.",
      "items": {
        "type": "object",
        "properties": {
          "team": { "type": "string" },
          "team_id": { "type": "integer" },
          "start_date": { "type": "string", "format": "date" },
          "end_date": { "type": ["string", "null"], "format": "date" }
        }
      }
    },
    "position_history": {
      "type": "array",
      "description": "Historical position assignments.",
      "items": {
        "type": "object",
        "properties": {
          "position": { "type": "string" },
          "position_id": { "type": "integer" },
          "start_date": { "type": "string", "format": "date" },
          "end_date": { "type": ["string", "null"], "format": "date" }
        }
      }
    }
  },
  "required": ["id", "email", "first_name", "last_name"],
  "additionalProperties": true
}