Get startedGet started for free

Resolving people: the lookup pattern

1. Resolving people: the lookup pattern

Last video pulled structured rows from a data source. Every row referenced a person, but what came back wasn't an email address. This video covers the universal pattern: resolving a people reference into something you can actually send to.

2. "People" looks different in every connector

Open the dynamic content panel after any list-style action and look at what comes back for a people field. Dataverse gives you a GUID, a long hex string pointing to a row in the systemuser table. SharePoint is friendlier because its Person column already carries sub-fields like DisplayName and EMail. Salesforce returns a Lookup ID, and Excel just gives you whatever plain string someone typed into the cell. The point is that the raw value behind a people field is rarely something you can email directly, so you'll almost always need to resolve it to a real profile.

3. Inline resolution vs explicit lookup

The shape of the people field decides how much work you do. SharePoint's Person column comes back already partially resolved. It carries DisplayName, EMail, sometimes Department, all in the same object. To email that person, you reach into the object and grab the EMail sub-field. That means no second connector call. That's inline resolution. Dataverse and Salesforce go the other way. What you get is a foreign-key-style identifier, and you need a second action to turn that ID into a profile. That's explicit lookup.

4. Get user profile and Get manager (V2)

Two actions on the Office 365 Users connector cover most explicit-lookup needs. Get user profile (V2) takes any user identifier, like an email, a UPN, or a Dataverse GUID, and returns the full Microsoft 365 profile: display name, job title, department, office location. Get manager (V2) takes the same kind of input and returns that user's manager as a profile object. Reach for these when you need fields the source data doesn't carry. The classic case is an escalation path: the source row tells you who's responsible, and Get manager (V2) tells you who to fall back to when they don't respond.

5. Inline vs loop: the cost difference

Inline data costs nothing extra. If the field you need is already on the row, like the Person column's EMail, you just reference it. Explicit lookups are different. Drop Get manager (V2) inside an Apply to Each over a thousand contracts and you've just made a thousand Office 365 Users calls. Fine for most renewal flows, but worth knowing. SharePoint's Person column is itself the shortcut. The rule of thumb: take what the source gives you for free, and only reach for an explicit lookup when you actually need a field that isn't there.

6. When the directory's incomplete

Production directories are never perfect. Someone leaves, the manager relationship gets removed, but the account hangs around. Get manager (V2) returns nothing. The flow either errors out or, worse, sends an escalation email to a blank address. The fix is a Condition right after the lookup: if the manager profile is empty, fall back to a support mailbox, like IT Support or HR, so the right team can fix the directory gap. Never hardcode another person's name; people leave. Plan for the missing field. A missing field kills more flows than a buggy filter ever does.

7. Let's practice!

Resolve people references, guard against missing fields. Time to give it a go.

Create Your Free Account

or

By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.