Hi @gmurnock
Here is a quick demo on how to achieve this:
First make sure your authentication is set to "Only for Teams"

Now inside a Topic, you want to call an action, and create a Flow. In the Flow you want to have an Input for the User Display name

Next use a 'Search for users' action, and pass in the User input

The outputs of this action are an array which makes it hard to pass back into PVA or any other system. So to get around this, add a 'Get user profile' action and use the first() expression to only take the first 'UserPrincipalName' from the 'Search for users' action
Here is my expression:
first(outputs('Search_for_users_(V2)')?['body/value'])?['UserPrincipalName']

Now we have all the users details, I am passing some info back to PVA to test:

Save, and go back to the PVA canvas, next add an Action and select the Flow you created.
For the User input, select 'bot.UserDisplayName' this is available to us from the Authentication we set above.

Next I am adding a Message block, to test out the Flow.

Testing the Bot:
