Darwinbox logoSailPoint logo

Identity and access management

Darwinbox to SailPoint integration: Darwinbox as authoritative source in SailPoint Identity Security Cloud

With an integration between Darwinbox and SailPoint Identity Security Cloud, Darwinbox becomes the authoritative source, so every employee gets an identity with job title, department, group company and manager, and the lifecycle state follows on hire and approved departure. SailPoint has no Darwinbox connector; KoppelHet reads the Darwinbox API and delivers to a Delimited File source through SailPoint's API.

What the integration does

Organisations that use Darwinbox as HR system and SailPoint for identity governance often load Darwinbox with a report someone exports by hand. A departure still waiting for approval is then already treated as a departure, or an approved departure only reaches SailPoint days later.

  1. We request API access from Darwinbox, with a dataset containing the fields SailPoint needs.
  2. In SailPoint we create a Delimited File source as authoritative source, with an identity profile.
  3. Together with you we record the lifecycle states, and which Darwinbox status belongs to which state.
  4. KoppelHet builds the file from the Darwinbox API and delivers it through SailPoint's API, which starts the aggregation straight away.
  5. After a trial aggregation in a sandbox the integration goes live.
Darwinbox → KoppelHet → SailPointSOURCEDarwinboxTARGETSailPointKoppelHetmapping · logging · monitoringDarwinbox → KoppelHet → SailPointSOURCEDarwinboxTARGETSailPointKoppelHetmapping · logging · monitoring
Out: Account with the Darwinbox user ID as account ID · Job title, department, group company and country · Manager and second-level manager · Start date, end date and departure status

What to watch for with Darwinbox and SailPoint

  • SailPoint's connector documentation contains no connector for Darwinbox. KoppelHet therefore does not build a custom SaaS connector that the SailPoint team would have to maintain, but delivers to a Delimited File source, with the same columns in every delivery.
  • A departure in Darwinbox has the status approved, pending or revoked, and Darwinbox only returns that data for a given list of employees. KoppelHet requests it for all employees in the delivery and only sets an end date when approved. A transform in SailPoint turns that into the lifecycle state.
  • Darwinbox keeps a list of deleted hires, with date, reason and who deleted them. If such a person already exists as an identity in SailPoint, KoppelHet delivers them with a status of their own, so SailPoint revokes the staged account and an audit shows why.
  • Besides the direct manager Darwinbox also gives a second-level manager. SailPoint uses the manager for certifications and approvals. KoppelHet delivers both, so a certification can go to the second line if the direct manager leaves.
  • Darwinbox returns dates in several formats, such as 12-Aug-2011. A transform in SailPoint expecting another format then sets a lifecycle state wrongly or not at all. KoppelHet delivers all dates in one fixed format, recorded in the identity profile.
  • Darwinbox can record a change of manager with a future effective date, visible in the employment history. KoppelHet puts the manager who applies today in the delivery, so certifications do not run ahead of a transfer.
  • In Darwinbox the employee_id can be changed; according to Darwinbox the email call also updates employee IDs. A changed account ID would be seen by SailPoint as a new account. KoppelHet therefore uses the internal user_id as account ID and delivers the employee_id as an attribute.

This integration is also part of joiner, mover, leaver.

How we build and run it

  • The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
  • Every sync and every error is visible in the functional log; on an error your administrator is notified.
  • A change that cannot go through is not half-applied but queued for another attempt.
  • KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
  • After go-live we manage the integration and adjust it when your process changes.
  • The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.

Implementation, architecture and compliance

Implementation and price

This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.

A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.

Price indication · Basic

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Why not a custom SailPoint connector for Darwinbox?

Your SailPoint team would have to maintain it. A Delimited File source is standard in SailPoint; KoppelHet makes sure the file is right.

Does a departure awaiting approval count?

No. Only an approved departure gets an end date in SailPoint.

Do leavers remain visible in SailPoint?

Yes, with their end date, so certifications and audits can look back.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Darwinbox Employee Core APIs (api_key with basic auth, or OAuth 2.0 client credentials with a 3600-second token): masterapi/employee with datasetKey and last_modified (including employee_id, first_name, last_name, department_name, designation_name, direct_manager_employee_id, l2_manager_employee_id, office_country, company_email_id, date_of_joining, date_of_exit); UpdateEmployeeDetails/separationDetails (separation_status and employee_ids required); UpdateEmployeeDetails/getDeletedEmployees; UpdateEmployeeDetails/employeehistory with filter_on_effective_date.
  • SailPoint Identity Security Cloud: Delimited File source as authoritative source, CSV through the import accounts API (load-accounts), which starts the aggregation; identity profile with transforms on startDate, endDate and separationStatus for the lifecycle states; manager correlation on employeeNumber.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in DarwinboxField in SailPointNotes
user_idAccount ID (uid)
employee_idemployeeNumber
first_name, last_namefirstname, lastname
company_email_idemail
designation_namejobTitle
department_namedepartment
Group company, office_countrycompany, country
direct_manager_employee_id, l2_manager_employee_idmanager, secondManager
date_of_joining, separation (Approved, Pending, Revoked)startDate, endDate, separationStatus (lifecycle state)

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.