The first stage of the talent lifecycle: the organization Jadiroon hires into. Your ERP usually owns this data and pushes it in; Jadiroon's catalog side (sectors, sub-sectors, job families) is read-only.
Resources
| Resource | API | Pages |
|---|---|---|
| Org units (Organizational Structure) | CRUD, upsert by external id, bulk | Org units |
| Positions (seats) | CRUD, archive, upsert by external id, bulk | Positions |
| Sectors, sub-sectors, job families (Functional Structure) | read | Functional Structure |
| Job descriptions | read, create, update, archive, unarchive | Job descriptions |
| Pay scales, grades and steps | read | Pay scales |
| Users (staff) and roles | read | Users, Roles |
Typical flow
- Read
/sectors,/sub-sectorsand/job-familiesand map them to your catalog byslug. - Push the org-unit tree, top-down (
PUT /api/v1/org-units/by-external/…or bulk). - Create job descriptions with
externalRef, if your ERP holds them; otherwise read Jadiroon's. - Push positions, naming their
orgUnitandjobDescriptionby your ids. - Subscribe to
org_unit.*,position.*andjob_description.*to learn about changes made in Jadiroon.
Rules worth knowing
- Deleting an org unit with child units returns
409 has_children; its positions become unplaced and sendposition.updated. - Deleting a position with employees returns
409 has_people; with openings or interview rubrics,409 has_openings. - A position's hiring fields (
hiringStatus,hiringPathway,externalAt) are read-only here: they change through openings. - Pay fields need
structure.functional.salary. - Job descriptions from the national SSCO catalog are read-only (
409 ssco_managed); job descriptions can't be deleted through the API, only archived.