Skip to main content
When Iru reads people from a connected source, it needs to know which incoming field fills which Iru profile attribute - and sometimes how to reshape the value along the way. You describe that with an attribute mapping: for each Iru profile attribute, you write an expression that produces its value from the source’s fields.
Where attribute mapping applies. You write attribute mappings when you connect a source system - the Workday and BambooHR connectors, which expose their own fields for you to map. It does not apply to CSV import: a CSV uses a fixed set of predefined columns, so there are no expressions to write.
Mapping expressions are written in IQL - the same expression language Iru uses for application claim and attribute mapping, Auto Group rules, and list filters. This page covers mapping a connected source system’s fields into your directory’s profile attributes; see IQL expressions for the full syntax.

How a mapping works

Each row in a mapping pairs one target - an Iru profile attribute - with an expression that draws from the source fields.

Discover the source fields

Iru reads the set of fields your source makes available. Those field names become the identifiers you can reference in expressions. See Directory Sync for how discovery fits into setup.

Write an expression per attribute

For each Iru attribute you want to fill, write an IQL expression. The simplest is just the source field name; more involved expressions combine or transform fields.

Iru validates it

Expressions are checked as you type and again when you save, so mistakes - an unknown field, a type error - surface before they ever reach a sync.

It runs on every sync

When the sync runs, Iru evaluates each expression against the incoming row and writes the result to the attribute.
Choose one stable, unique source field for the identifier that ties a source record to an Iru user, so each sync resolves to exactly one person.

Writing expressions

Expressions reference your source’s fields and can transform them - upper/lower casing, splitting, concatenation, picking a list item, and so on. The full reference (objects, functions, operators, and examples) is on the IQL expressions page, since the same language powers both directory mapping and application mapping. A few quick examples:
// Use a field as-is
work_email

// Combine fields into a display name
first_name + " " + last_name

// The local part of an email, before the @
work_email.split("@")[0]

Where to go next

IQL expressions

The full IQL reference - objects, functions, operators, and examples.

Directory Sync

Connect an HR system and set up the mappings these expressions power.

Profile attributes

The targets your expressions write into.

Auto Groups

Another place attributes drive automation in your directory.