Onboard people in bulk
For administrators, engineering managers 7 min read
Bring in members from your identity provider, and register a whole cohort of joiners from an HR export with their journeys and day-one access.
Before you begin
- A service account whose role has Manage people and Request access.
Members from your identity provider
- On first sign-in, a person appears on Members automatically, with the role your identity provider asserts until you set an access role.
- With SCIM 2.0, your identity provider creates members, its
rolesattribute sets their ELOS access role, and deactivating someone there offboards them in ELOS. SCIM is set up with our team.
A cohort of joiners from an HR export
Your HR system stays the system of record for employees. To start engineering onboarding for everyone joining next week, export them to a CSV and register them in one run.
name,role,team,manager,project
Lena Fischer,Backend Engineer,Payments,Daniel Ortiz,Checkout
Omar Haddad,Site Reliability Engineer,Reliability,Ana Silva,The columns are name, role, team, manager and project; manager and project can be empty. Keep commas out of the values.
- Download import-joiners.sh and the example CSV. The script needs
bash,curlandjq. - Set
ELOS_APIandELOS_KEYand run it with your file. - Check Onboarding: each joiner is there with their day-one plan, and their access requests are waiting for approvers on Access requests.
export ELOS_API=https://<your ELOS API address>
export ELOS_KEY=esk.…
./import-joiners.sh joiners.csv
# added Lena Fischer (Backend Engineer, Payments)
# added Omar Haddad (Site Reliability Engineer, Reliability)
# done: 2 added, 0 skipped, 0 failedWhat it does for each person
# 1. Register the joiner (starts onboarding and the day-one plan)
curl -sS -X POST "$ELOS_API/v1/people" -H "Authorization: Bearer $ELOS_KEY" \
-H "Content-Type: application/json" -H "Idempotency-Key: joiner-lena-fischer" \
--data '{"name":"Lena Fischer","role":"Backend Engineer","team":"Payments","manager":"Daniel Ortiz"}'
# 2. Generate the knowledge journey for the role, team and project
curl -sS -X POST "$ELOS_API/v1/journeys" -H "Authorization: Bearer $ELOS_KEY" \
-H "Content-Type: application/json" -H "Idempotency-Key: journey-lena-fischer" \
--data '{"personId":"<id from step 1>","role":"Backend Engineer","team":"Payments","project":"Checkout"}'
# 3. Request the day-one access bundle (each item goes to its approver)
curl -sS -X POST "$ELOS_API/v1/access/bundle" -H "Authorization: Bearer $ELOS_KEY" \
-H "Content-Type: application/json" -H "Idempotency-Key: bundle-lena-fischer" \
--data '{"personId":"<id from step 1>"}'- Registers the joiner. Onboarding starts automatically with the day-one plan for their role.
- Generates their knowledge journey for the role, team and project.
- Requests the day-one access bundle. Each item goes to its approver; nothing is granted without approval.
What's next
- Onboarding templates: ELOS proposes each engineering team's day-one plan from your tools. Approve it once, and everyone your identity provider adds to that team gets it automatically.