Sales Genie is a Declarative Agent designed to help sales executives get instant, actionable insights from their Salesforce CRM, Microsoft 365, and the web — all via natural language. Whether you're preparing for an upcoming customer meeting, reviewing your opportunity pipeline, or logging call notes into Salesforce, Sales Genie acts as a smart assistant that streamlines your daily sales activities. It showcases complex workflows directly using instructions.
This sample illustrates the following concepts:
- Provide a 360° view of any customer account, including opportunities, tasks, cases, and past interactions.
- Help prepare for customer meetings by surfacing key insights from:
- Salesforce CRM
- Outlook emails & Teams conversations
- External news
- Documents and pitch decks in your OneDrive and SharePoint
- Log customer meeting notes or call summaries directly into Salesforce.
- Visualize sales pipeline and task status with charts and tables.
| Version | Date | Comments |
|---|---|---|
| 1.0 | July 10, 2025 | Initial release |
- Microsoft 365 tenant with Microsoft 365 Copilot
- Visual Studio Code with the Microsoft 365 Agents Toolkit extension
- Node.js v20
- A Salesforce account with API access
-
Help me prepare for customer meeting
-
Show opportunities pipeline for this month
-
Log call for a recent customer conversation
-
Show key deals anticipated to close this week
- Clone this repository (or download this solution as a .ZIP file then unzip it)
- Open the Agents Toolkit extension and sign in to your Microsoft 365 tenant with Microsoft 365 Copilot
- Select Preview in Copilot (Edge) from the launch configuration dropdown
In your OpenAPI spec appPackage/apiSpecificationFile/openapi.yaml:
-
Update the server URL to point to your Salesforce instance
-
In your
ai-plugin.json(plugin manifest), go to theresponse_semanticssection for each function. This sample comes with basic Adaptive Card views for rich representation. You can further customize the layout and data bindings to create richer, domain-specific views. Ensure all links point to your Salesforce instance.
-
Log into your Salesforce account and open the Setup page.
-
Navigate to Platform Tools > Apps > External Client App Manager.
-
Click New External Client App.
-
In the app configuration:
- Set Callback URL to:
https://teams.microsoft.com/api/platform/v1.0/oAuthRedirect
-
Add OAuth Scopes as needed (e.g., full for complete access and Perform request at any time).
-
Only Authorization Code and Client Credentials grant types are supported.
-
More info on supported Auth types in : Copilot Plugin Auth Guide.
- After app creation, you'll see Policies, Settings, and Package Details tabs.
-
In the Policies tab: Under OAuth Policies, select "Relax IP Restrictions".
-
In the Settings tab: Click Reveal to copy your Consumer Key and Consumer Secret.
-
Provision Key & Secret in Copilot
When provisioning the Declarative Agent via the Teams Toolkit, you’ll be prompted to enter the Client ID (Key) and Client Secret. Use the values from the Salesforce OAuth app you created.
We do not support samples, but this community is always willing to help, and we want to improve these samples. We use GitHub to track issues, which makes it easy for community members to volunteer their time and help resolve issues.
You can try looking at issues related to this sample to see if anybody else is having the same issues.
If you encounter any issues using this sample, create a new issue.
Finally, if you have an idea for improvement, make a suggestion.
THIS CODE IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.








