Eightfold AI · Schema
HRISEmployeeSchema
Talent IntelligenceTalent AcquisitionTalent ManagementAI InterviewingHuman ResourcesWorkforce PlanningAI Agents
Properties
| Name | Type | Description |
|---|---|---|
| employeeType | stringnull | Type of the employee |
| locationCountry | stringnull | The location country of the employee |
| bonusAmount | integernull | The amount of the bonus of the employee |
| middleName | stringnull | Middle name of the employee |
| employmentStatus | stringnull | Current employment status |
| managerEmail | stringnull | The email of the manager |
| positionCriticality | arraynull | The criticality of the position of the employee |
| isContingent | booleannull | Is contingent |
| bonusAmountCurrency | stringnull | The currency of the bonus given to the employee |
| location | stringnull | The location of the employee |
| badges | arraynull | The badges of the employee |
| firstName | stringnull | First Name of employee |
| mobility | object | The mobility of the employee |
| bu | stringnull | The Business unit of the employee |
| stringnull | List of Emails of the employee comma seperated | |
| bonusAmountFrequency | stringnull | The frequency of the bonus pay to the employee |
| basePayCurrency | stringnull | The currency of the base pay of the employee |
| basePay | object | The base pay of the employee |
| level | stringnull | The job level of the employee |
| maritalStatus | stringnull | Marital status of the employee |
| terminationType | stringnull | Type of termination (voluntary / involuntary) |
| userId | stringnull | The userId of the employee |
| lastReviewRating | stringnull | The last review rating of the employee |
| externalJobId | stringnull | External job id of the employee |
| additionalManagers | arraynull | The additional managers of the employee |
| customInfo | objectnull | The custom info captured for the employee by custom fields |
| employmentDates | arraynull | Employee lifecycle dates not covered by hiringDate / roleChangeDate / terminationDate, as a typed list of {type, date} |
| tenureYears | numbernull | The total tenure years of the employee |
| systemId | stringnull | The system id of the HRIS system in EF |
| employeeCriticality | object | The criticality information of the employee |
| salutation | stringnull | Salutation / title prefix (Mr, Ms, Dr, etc.) |
| companyName | stringnull | The company name of the employee |
| phone | stringnull | The phone number of the employee |
| employmentBasis | stringnull | Employment basis (full-time / part-time) |
| performanceRatings | arraynull | The performance rating of the employee |
| languages | arraynull | The employee language proficiencies |
| title | stringnull | The title of the employee |
| pronouns | stringnull | Preferred pronouns of the employee |
| externalSystemIds | arraynull | The employee's identifier in each external system (payroll vendor, etc.), as a typed list of {type, value} |
| id | stringnull | The unique id of the Employee in the HRIS system |
| terminationDate | stringnull | The termination date of the employee |
| hiringDate | stringnull | The hiring date of the employee |
| managerUserId | stringnull | The user id of the manager in HRIS system |
| citizenship | arraynull | Citizenships held by the employee (a list, to carry dual citizenship) |
| preferredLastName | stringnull | Last name the employee goes by |
| terminationRegrettable | stringnull | Whether the termination was regrettable |
| successionPlan | object | The succession plan of the employee |
| bonus | object | The bonus given to the employee |
| lastActivityTs | integernull | The last activity timestamp |
| managerFullname | stringnull | The full name of the manager |
| rehireEligibility | stringnull | Rehire eligibility status of the employee |
| jobCode | stringnull | The job code of the employee |
| timezone | stringnull | Working time zone |
| tenureCurrentRoleYears | numbernull | The no of years the employee is in current role |
| basePayFrequency | stringnull | The frequency of the base pay of the employee |
| shift | stringnull | Shift label (morning / evening / night / general) |
| lob | stringnull | The lob of the employee |
| roleChangeDate | stringnull | The last role change date of the employee |
| preferredFirstName | stringnull | First name the employee goes by |
| role | stringnull | The role of the employee |
| eligibleForTransfer | booleannull | Is the employee eligible for transfer or not |
| workplaceModel | stringnull | Workplace model (office / hybrid / remote) |
| lastName | stringnull | Last Name of employee |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/eightfold-ai/main/json-schema/eightfold-ai-hrisemployee-schema-schema.json",
"title": "HRISEmployeeSchema",
"x-generated": "2026-10-14",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/eightfold-ai-api-server-v2-service-service-openapi.yml#/components/schemas/HRISEmployeeSchema",
"type": "object",
"properties": {
"employeeType": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Type of the employee"
},
"locationCountry": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The location country of the employee"
},
"bonusAmount": {
"type": [
"integer",
"null"
],
"format": "int32",
"readOnly": true,
"description": "The amount of the bonus of the employee"
},
"middleName": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Middle name of the employee"
},
"employmentStatus": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Current employment status"
},
"managerEmail": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The email of the manager"
},
"positionCriticality": {
"type": [
"array",
"null"
],
"readOnly": true,
"description": "The criticality of the position of the employee",
"items": {
"type": "string"
}
},
"isContingent": {
"type": [
"boolean",
"null"
],
"readOnly": true,
"description": "Is contingent"
},
"bonusAmountCurrency": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The currency of the bonus given to the employee"
},
"location": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The location of the employee"
},
"badges": {
"readOnly": true,
"description": "The badges of the employee",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/EmployeeBadge"
}
},
"firstName": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "First Name of employee"
},
"mobility": {
"readOnly": true,
"nullable": true,
"description": "The mobility of the employee",
"allOf": [
{
"$ref": "#/$defs/EmployeeMobility"
}
]
},
"bu": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The Business unit of the employee"
},
"email": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "List of Emails of the employee comma seperated"
},
"bonusAmountFrequency": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The frequency of the bonus pay to the employee"
},
"basePayCurrency": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The currency of the base pay of the employee"
},
"basePay": {
"readOnly": true,
"nullable": true,
"description": "The base pay of the employee",
"allOf": [
{
"$ref": "#/$defs/Pay"
}
]
},
"level": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The job level of the employee"
},
"maritalStatus": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Marital status of the employee"
},
"terminationType": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Type of termination (voluntary / involuntary)"
},
"userId": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The userId of the employee"
},
"lastReviewRating": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The last review rating of the employee"
},
"externalJobId": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "External job id of the employee"
},
"additionalManagers": {
"readOnly": true,
"description": "The additional managers of the employee",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/AdditionalManager"
}
},
"customInfo": {
"type": [
"object",
"null"
],
"readOnly": true,
"description": "The custom info captured for the employee by custom fields"
},
"employmentDates": {
"readOnly": true,
"description": "Employee lifecycle dates not covered by hiringDate / roleChangeDate / terminationDate, as a typed list of {type, date}",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/EmployeeEmploymentDate"
}
},
"tenureYears": {
"type": [
"number",
"null"
],
"format": "float",
"readOnly": true,
"description": "The total tenure years of the employee"
},
"systemId": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The system id of the HRIS system in EF"
},
"employeeCriticality": {
"readOnly": true,
"nullable": true,
"description": "The criticality information of the employee",
"allOf": [
{
"$ref": "#/$defs/EmployeeCriticality"
}
]
},
"salutation": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Salutation / title prefix (Mr, Ms, Dr, etc.)"
},
"companyName": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The company name of the employee"
},
"phone": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The phone number of the employee"
},
"employmentBasis": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Employment basis (full-time / part-time)"
},
"performanceRatings": {
"readOnly": true,
"description": "The performance rating of the employee",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/EmployeePerformanceRating"
}
},
"languages": {
"readOnly": true,
"description": "The employee language proficiencies",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/EmployeeLanguageProficiency"
}
},
"title": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The title of the employee"
},
"pronouns": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Preferred pronouns of the employee"
},
"externalSystemIds": {
"readOnly": true,
"description": "The employee's identifier in each external system (payroll vendor, etc.), as a typed list of {type, value}",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/EmployeeExternalSystemId"
}
},
"id": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The unique id of the Employee in the HRIS system"
},
"terminationDate": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The termination date of the employee"
},
"hiringDate": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The hiring date of the employee"
},
"managerUserId": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The user id of the manager in HRIS system"
},
"citizenship": {
"type": [
"array",
"null"
],
"readOnly": true,
"description": "Citizenships held by the employee (a list, to carry dual citizenship)",
"items": {
"type": "string"
}
},
"preferredLastName": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Last name the employee goes by"
},
"terminationRegrettable": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Whether the termination was regrettable"
},
"successionPlan": {
"readOnly": true,
"nullable": true,
"description": "The succession plan of the employee",
"allOf": [
{
"$ref": "#/$defs/EmployeeSuccessionPlan"
}
]
},
"bonus": {
"readOnly": true,
"nullable": true,
"description": "The bonus given to the employee",
"allOf": [
{
"$ref": "#/$defs/Pay"
}
]
},
"lastActivityTs": {
"type": [
"integer",
"null"
],
"format": "int32",
"readOnly": true,
"description": "The last activity timestamp"
},
"managerFullname": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The full name of the manager"
},
"rehireEligibility": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Rehire eligibility status of the employee"
},
"jobCode": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The job code of the employee"
},
"timezone": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Working time zone"
},
"tenureCurrentRoleYears": {
"type": [
"number",
"null"
],
"format": "float",
"readOnly": true,
"description": "The no of years the employee is in current role"
},
"basePayFrequency": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The frequency of the base pay of the employee"
},
"shift": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Shift label (morning / evening / night / general)"
},
"lob": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The lob of the employee"
},
"roleChangeDate": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The last role change date of the employee"
},
"preferredFirstName": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "First name the employee goes by"
},
"role": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The role of the employee"
},
"eligibleForTransfer": {
"type": [
"boolean",
"null"
],
"readOnly": true,
"description": "Is the employee eligible for transfer or not"
},
"workplaceModel": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Workplace model (office / hybrid / remote)"
},
"lastName": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "Last Name of employee"
}
},
"$defs": {
"AdditionalManager": {
"type": "object",
"properties": {
"capacityManagerEmail": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The email of the capacity manager"
},
"employeeId": {
"type": [
"string",
"null"
],
"description": "Employee id of the additional manager in the HRIS system"
},
"type": {
"type": [
"string",
"null"
],
"description": "Type of the additional manager (e.g. capacity)"
},
"email": {
"type": [
"string",
"null"
],
"description": "Email of the additional manager"
}
}
},
"EmployeeBadge": {
"type": "object",
"properties": {
"badgeId": {
"type": [
"string",
"null"
],
"description": "The id of the badge"
},
"userId": {
"type": [
"string",
"null"
],
"description": "The user id the badge belongs to."
},
"creator": {
"type": [
"string",
"null"
],
"description": "The creator of the badge"
},
"photoUrl": {
"type": [
"string",
"null"
],
"description": "The photo url"
},
"lastModifiedTs": {
"type": [
"integer",
"null"
],
"format": "int32",
"description": "The last modified timestamp of the badge"
},
"photoContent": {
"nullable": true,
"description": "The photo content",
"allOf": [
{
"$ref": "#/$defs/PhotoContent"
}
]
},
"comment": {
"type": [
"string",
"null"
],
"description": "comment on the badge"
},
"title": {
"type": [
"string",
"null"
],
"description": "The title of the badge"
}
}
},
"EmployeeCriticality": {
"type": "object",
"properties": {
"riskOfLoss": {
"type": [
"string",
"null"
],
"description": "The risk of looking the employee"
},
"impactOfLoss": {
"type": [
"string",
"null"
],
"description": "The impact of loss of the employee"
}
}
},
"EmployeeEmploymentDate": {
"type": "object",
"properties": {
"date": {
"type": [
"string",
"null"
],
"description": "The date itself, as YYYY-MM-DD"
},
"type": {
"type": "string",
"enum": [
"original_hire",
"continuous_service",
"internal_transfer",
"probation_end",
"employment_confirmation",
"last_working_day",
"resignation"
],
"description": "Type of lifecycle date. One of ats.base.EmploymentDateType"
}
},
"required": [
"type"
]
},
"EmployeeExternalSystemId": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"paylocity",
"greythr"
],
"description": "External system holding the id. One of ats.base.ExternalSystemType"
},
"value": {
"type": [
"string",
"null"
],
"description": "Identifier of the employee in that system"
}
},
"required": [
"type"
]
},
"EmployeeLanguageProficiency": {
"type": "object",
"properties": {
"read": {
"type": [
"string",
"null"
],
"description": "The reading proficiency"
},
"speak": {
"type": [
"string",
"null"
],
"description": "The speaking proficiency"
},
"overall": {
"type": [
"string",
"null"
],
"description": "The overall proficiency"
},
"language": {
"type": [
"string",
"null"
],
"description": "The language string"
},
"write": {
"type": [
"string",
"null"
],
"description": "The writing proficiency"
}
}
},
"EmployeeMobility": {
"type": "object",
"properties": {
"comments": {
"type": [
"string",
"null"
],
"description": "The comments"
},
"travelPercentageMin": {
"type": [
"number",
"null"
],
"format": "float",
"description": "The min travel percentage"
},
"relocationLocations": {
"type": [
"array",
"null"
],
"description": "The relocation locations",
"items": {
"type": "string"
}
},
"relocation": {
"type": [
"string",
"null"
],
"description": "The relocation information"
},
"travel": {
"type": [
"string",
"null"
],
"description": "The travel detail"
},
"travelPercentageMax": {
"type": [
"number",
"null"
],
"format": "float",
"description": "The max travel percentage"
}
}
},
"EmployeePerformanceRating": {
"type": "object",
"properties": {
"periodEndDate": {
"type": [
"string",
"null"
],
"description": "The performance period end date"
},
"rating": {
"type": [
"number",
"null"
],
"format": "float",
"description": "The rating given"
},
"reviewedBy": {
"nullable": true,
"description": "The reviewer info",
"allOf": [
{
"$ref": "#/$defs/User"
}
]
},
"ratingLabel": {
"type": [
"string",
"null"
],
"description": "The rating level"
},
"reviewComments": {
"type": [
"string",
"null"
],
"description": "The review comments"
},
"periodStartDate": {
"type": [
"string",
"null"
],
"description": "The performance period start date"
},
"reviewType": {
"type": [
"string",
"null"
],
"description": "The review type"
}
}
},
"EmployeeSuccessionPlan": {
"type": "object",
"properties": {
"comments": {
"type": [
"string",
"null"
],
"description": "The comments"
},
"planDate": {
"type": [
"string",
"null"
],
"description": "The date of the plan"
},
"planName": {
"type": [
"string",
"null"
],
"description": "The name of the plan"
},
"successors": {
"description": "The successors of an employee",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/EmployeeSuccessor"
}
}
}
},
"EmployeeSuccessor": {
"type": "object",
"properties": {
"employeeDetails": {
"nullable": true,
"description": "The employee details",
"allOf": [
{
"$ref": "#/$defs/User"
}
]
},
"readiness": {
"type": [
"string",
"null"
],
"description": "The readiness of the successor"
},
"rank": {
"type": [
"integer",
"null"
],
"format": "int32",
"description": "The rank"
},
"comments": {
"type": [
"string",
"null"
],
"description": "The comments"
}
}
},
"Pay": {
"type": "object",
"properties": {
"frequency": {
"type": [
"string",
"null"
],
"description": "The frequency of pay"
},
"amount": {
"type": [
"number",
"null"
],
"format": "float",
"description": "The amount of pay"
},
"currency": {
"type": [
"string",
"null"
],
"description": "The currency of pay in ISO format"
}
}
},
"PhotoContent": {
"type": "object",
"properties": {
"extension": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The extension of the photo"
},
"content": {
"type": [
"string",
"null"
],
"readOnly": true,
"description": "The actual string content"
},
"isBase64": {
"type": [
"boolean",
"null"
],
"readOnly": true,
"description": "Is the content base 64 encoded"
}
}
},
"User": {
"type": "object",
"properties": {
"atsUserGroups": {
"description": "The user groups",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/$defs/UserGroup"
}
},
"name": {
"type": [
"string",
"null"
],
"description": "The name of the user"
},
"atsRoles": {
"type": [
"array",
"null"
],
"description": "The ats roles",
"items": {
"type": "string"
}
},
"userId": {
"type": [
"string",
"null"
],
"description": "The user id of the user"
},
"firstName": {
"type": [
"string",
"null"
],
"description": "The first name of the user"
},
"lastName": {
"type": [
"string",
"null"
],
"description": "The last name of the user"
},
"email": {
"type": [
"string",
"null"
],
"format": "email",
"description": "The email of the user"
}
}
},
"UserGroup": {
"type": "object",
"properties": {
"userGroupId": {
"type": [
"string",
"null"
],
"format": "email",
"description": ""
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/eightfold-ai-hrisemployee-schema"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.