Five minutes before the call.
Alice, an account manager, has five minutes before a call with Contoso. In a Teams group chat she gets a 360° view across Salesforce and ServiceNow. After the call, she updates the CRM in one sentence. Every action runs as Alice.
Read the transcript and scene descriptions
A real Monday morning
A countdown: your customer call starts in five minutes.
Meet Alice, an account manager. Her biggest customer, Contoso, joins a call in 5 minutes.
Two teams, two systems, one customer
CRM in Salesforce and ITSM in ServiceNow side by side. Nobody sees the risk.
Deals live in Salesforce. Support tickets live in ServiceNow. Connecting the dots by hand takes much longer than five minutes.
One question
In a Teams group chat, Alice types "Give me a Customer 360 view for Contoso Ltd". Behind the scenes, acting as Alice, the assistant reaches Salesforce and ServiceNow.
So Alice asks her assistant, right in a Teams group chat. It queries Salesforce and ServiceNow using Alice's own access.
The 360° answer
Open pipeline: Contoso Analytics Add-on, $350k, in Qualification. Open cases: trading desk dashboard timeout, report generation slow. IT incidents: database performance degradation, network latency in EU-West. Both cases trace back to one database incident; suggested action: share the fix ETA on the call.
Seconds later, she has the open deal, worth $350k… the customer's open support cases… and the IT incidents behind them. One root cause behind both cases, and a $350k deal at risk.
After the call
The call is done. Time to update the CRM.
The call goes well. Now the CRM needs an update.
Update by asking
Alice types: "Add a note on the Contoso Analytics Add-on opp: customer wants a POC first. Move the close date to next quarter."
One sentence, in the chat she already has open. She asks for a note for the team and a new close date.
Written to Salesforce
"Done. Two updates, zero clicks." The opportunity shows the note and a close date moved from Dec 18, 2026 to Mar 31, 2027.
The assistant logs the note in Salesforce and moves the close date. And the record shows exactly who made the change.
Look closer
Last modified by: Alice. Not a bot. Not a service account.
Salesforce recorded the change under Alice's own name.
Follow Alice's identity
Alice in Teams, then the agent (Teams bot and Foundry agent, no master key), then the API gateway (Azure API Management: validate Alice's token, find her account in each system, get a token for Alice in each system), then Salesforce and ServiceNow, each "as Alice". Her permissions. Their rules.
How does it work? Follow Alice's identity. She is signed in to Teams with her work account. The agent has no master key. It carries Alice's token. The gateway checks it, then gets Alice's own token for each system. Each system enforces its own rules. Alice sees only what she may see.
Consent once
An OAuth consent card: "Customer 360 Assistant wants to access Salesforce as you". Alice selects Allow access, and the card reads "Connected as Alice".
The first time, Alice approves access once for each system. After that, every request runs as her.
Why it matters
Trust built in, not bolted on: her permissions, no master key, fully traceable.
There is no over-privileged service account in the data path. Every read and write can be traced to a real person.
Where you already work
Inside Microsoft Teams: 1:1 chat, group chats, and as a Copilot agent.
It works in 1:1 chats, in group chats, and as a Copilot agent.
Open source
Customer 360 Assistant: identity-aware AI across your CRM and ITSM, with links to both GitHub repositories.
Customer 360 Assistant: the code is open source on GitHub.