---
availability: IDEA
description: A plugin that allows sales representatives and managers to add or edit
the Next Steps for a Salesforce Opportunity through the Moveworks AI Assistant.
It surfaces recent next steps, captures new updates with accurate dates, and streamlines
deal execution by enabling quick, contextual updates.
difficulty_level: INTERMEDIATE
time_in_minutes: 30
name: Add or Edit Next Steps for an Opportunity
purple_chat_link: https://marketplace.moveworks.com/purple-chat?conversation=%7B%22messages%22%3A%5B%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22I+want+to+add+next+steps+for+an+opportunity%2C+I+just+had+a+long+meeting+with+a+customer%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Authenticating+user+and+checking+permissions+for+Salesforce+access.%22%7D%2C%7B%22status%22%3A%22pending%22%2C%22richText%22%3A%22Identifying+the+specific+opportunity.+Please+provide+more+details.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3ENo+problem%2C+I+can+help+with+that%21+To+find+the+right+opportunity%2C+please+tell+me+more+about+it.+You+can+specify+by%3A%3C%2Fp%3E%3Col%3E%3Cli%3E%3Cp%3EOpportunity+Name%3C%2Fp%3E%3C%2Fli%3E%3Cli%3E%3Cp%3EAssociated+Account%3C%2Fp%3E%3C%2Fli%3E%3Cli%3E%3Cp%3EOwnership+%28e.g.%2C+%5C%22my+opportunities%5C%22%29%3C%2Fp%3E%3C%2Fli%3E%3Cli%3E%3Cp%3ELifecycle+Stage%2FStatus%3C%2Fp%3E%3C%2Fli%3E%3C%2Fol%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Opportunities+I+own+for+ACME+account%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Searching+Salesforce+for+opportunities+owned+by+you+associated+with+%27ACME+account%27.%22%7D%2C%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Found+3+matching+opportunities.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3EI+found+a+few+opportunities+related+to+the+ACME+account+that+you+own.+Please+select+the+one+you%27d+like+to+update%3A%3C%2Fp%3E%3Col%3E%3Cli%3E%3Cb%3EAcme+Corp+-+Expansion+Deal%3C%2Fb%3E%3Cul%3E%3Cli%3E%3Cb%3EStage%3A%3C%2Fb%3E+Negotiation%2FReview%3C%2Fli%3E%3Cli%3E%3Cb%3EAmount%3A%3C%2Fb%3E+%24500%2C000%3C%2Fli%3E%3Cli%3E%3Cb%3EClose+Date%3A%3C%2Fb%3E+2026-03-31%3C%2Fli%3E%3Cli%3E%3Cb%3EOwner%3A%3C%2Fb%3E+Jane+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EProducts%3A%3C%2Fb%3E+Enterprise+Software+License%3C%2Fli%3E%3C%2Ful%3E%3C%2Fli%3E%3Cli%3E%3Cb%3EAcme+Corp+-+New+Logo+Opportunity%3C%2Fb%3E%3Cul%3E%3Cli%3E%3Cb%3EStage%3A%3C%2Fb%3E+Prospecting%3C%2Fli%3E%3Cli%3E%3Cb%3EAmount%3A%3C%2Fb%3E+%24150%2C000%3C%2Fli%3E%3Cli%3E%3Cb%3EClose+Date%3A%3C%2Fb%3E+2026-06-15%3C%2Fli%3E%3Cli%3E%3Cb%3EOwner%3A%3C%2Fb%3E+Jane+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EProducts%3A%3C%2Fb%3E+Professional+Services%3C%2Fli%3E%3C%2Ful%3E%3C%2Fli%3E%3Cli%3E%3Cb%3EAcme+Corp+-+Renewal+Q2%3C%2Fb%3E%3Cul%3E%3Cli%3E%3Cb%3EStage%3A%3C%2Fb%3E+Qualification%3C%2Fli%3E%3Cli%3E%3Cb%3EAmount%3A%3C%2Fb%3E+%24300%2C000%3C%2Fli%3E%3Cli%3E%3Cb%3EClose+Date%3A%3C%2Fb%3E+2026-04-30%3C%2Fli%3E%3Cli%3E%3Cb%3EOwner%3A%3C%2Fb%3E+Jane+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EProducts%3A%3C%2Fb%3E+Annual+Subscription+Renewal%3C%2Fli%3E%3C%2Ful%3E%3C%2Fli%3E%3C%2Fol%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22%3Cp%3EThe+expansion+deal%3C%2Fp%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Retrieving+existing+next+steps+for+%27Acme+Corp+-+Expansion+Deal%27.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3EHere+are+the+next+steps+recorded+for+%3Cb%3EAcme+Corp+-+Expansion+Deal%3C%2Fb%3E%3A%3C%2Fp%3E%3Cul%3E%3Cli%3E%3Ci%3EFollow-up+with+procurement%3C%2Fi%3E+%28added+Feb+12%29%3C%2Fli%3E%3Cli%3E%3Ci%3EReview+legal+redlines%3C%2Fi%3E+%28added+Jan+29%29%3C%2Fli%3E%3C%2Ful%3E%3Cp%3ECurrent+Next+Step%3A+%3Ci%3EAwaiting+budget+confirmation%3C%2Fi%3E+%28updated+March+1%29%3C%2Fp%3E%3Cp%3EWhat+next+step+would+you+like+to+add+or+update+for+this+opportunity%3F%3C%2Fp%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Schedule+pricing+review+with+procurement+by+Friday.+Also%2C+follow+up+on+legal+redlines+for+the+master+services+agreement.+Then%2C+plan+for+the+executive+summary+presentation.%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22%3Cp%3EYou%27re+updating+the+%3Ci%3ENext+Steps%3C%2Fi%3E+for+%3Cb%3EAcme+Corp+-+Expansion+Deal%3C%2Fb%3E+to%3A%3C%2Fp%3E%3Cul%3E%3Cli%3ESchedule+pricing+review+with+procurement+by+Friday.%3C%2Fli%3E%3Cli%3EFollow+up+on+legal+redlines+for+the+master+services+agreement.%3C%2Fli%3E%3Cli%3EPlan+for+the+executive+summary+presentation.%3C%2Fli%3E%3C%2Ful%3E%3Cp%3EAdded+on%3A+March+5%2C+2026%3C%2Fp%3E%3Cp%3E%3Cb%3EShould+I+save+this+update+to+Salesforce%3F%3C%2Fb%3E%3C%2Fp%3E%22%7D%2C%7B%22buttons%22%3A%5B%7B%22buttonText%22%3A%22Submit%22%2C%22style%22%3A%22filled%22%7D%2C%7B%22buttonText%22%3A%22Cancel%22%2C%22style%22%3A%22outlined%22%7D%5D%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Submit%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Updating+the+NextStep+field+for+%27Acme+Corp+-+Expansion+Deal%27+in+Salesforce.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3EI+have+updated+the+Opportunity%27s+Next+Steps+on+Salesforce.%3C%2Fp%3E%3Cp%3E%3Cstrong%3EOpportunity%3A%3C%2Fstrong%3E+Acme+Corp+%E2%80%93+Expansion+Deal%3C%2Fp%3E%3Cp%3E%3Cstrong%3ENew+Next+Step%3A%3C%2Fstrong%3E+Schedule+pricing+review+with+procurement+by+Friday%2C+follow+up+on+legal+redlines+for+the+master+services+agreement%2C+plan+for+the+executive+summary+presentation.%3C%2Fp%3E%3Cp%3E%3Cstrong%3EDate+Recorded%3A%3C%2Fstrong%3E+March+5%2C+2026%3C%2Fp%3E%3Cp%3E%3Cstrong%3EUpdated+by%3A%3C%2Fstrong%3E+Jane+Doe%3C%2Fp%3E%22%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22salesforce%22%2C%22citationTitle%22%3A%22Acme+Corp+-+Expansion+Deal%22%7D%5D%7D%5D%7D%5D%7D
solution_tags:
- Productivity
- Sales
systems:
- salesforce
---
## Introduction
The **Salesforce – Add or Edit Next Steps for an Opportunity** plugin enables sales representatives and managers to quickly add or update the Next Steps for any Salesforce Opportunity directly within the Moveworks AI Assistant. It provides visibility into recent next steps, ensures new updates are captured with accurate dates, and streamlines deal execution by allowing users to make contextual updates without navigating Salesforce manually.
This guide walks you through how to configure and customize the plugin within Agent Studio so your sales team can maintain up-to-date opportunity actions in just a few minutes. Let’s get started!
## **Prerequisites**
- Access to Agent Studio
## **What are we building?**
### Agent Design
This [purple chat](https://marketplace.moveworks.com/purple-chat?conversation=%7B%22messages%22%3A%5B%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22I+want+to+add+next+steps+for+an+opportunity%2C+I+just+had+a+long+meeting+with+a+customer%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Authenticating+user+and+checking+permissions+for+Salesforce+access.%22%7D%2C%7B%22status%22%3A%22pending%22%2C%22richText%22%3A%22Identifying+the+specific+opportunity.+Please+provide+more+details.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3ENo+problem%2C+I+can+help+with+that%21+To+find+the+right+opportunity%2C+please+tell+me+more+about+it.+You+can+specify+by%3A%3C%2Fp%3E%3Col%3E%3Cli%3E%3Cp%3EOpportunity+Name%3C%2Fp%3E%3C%2Fli%3E%3Cli%3E%3Cp%3EAssociated+Account%3C%2Fp%3E%3C%2Fli%3E%3Cli%3E%3Cp%3EOwnership+%28e.g.%2C+%5C%22my+opportunities%5C%22%29%3C%2Fp%3E%3C%2Fli%3E%3Cli%3E%3Cp%3ELifecycle+Stage%2FStatus%3C%2Fp%3E%3C%2Fli%3E%3C%2Fol%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Opportunities+I+own+for+ACME+account%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Searching+Salesforce+for+opportunities+owned+by+you+associated+with+%27ACME+account%27.%22%7D%2C%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Found+3+matching+opportunities.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3EI+found+a+few+opportunities+related+to+the+ACME+account+that+you+own.+Please+select+the+one+you%27d+like+to+update%3A%3C%2Fp%3E%3Col%3E%3Cli%3E%3Cb%3EAcme+Corp+-+Expansion+Deal%3C%2Fb%3E%3Cul%3E%3Cli%3E%3Cb%3EStage%3A%3C%2Fb%3E+Negotiation%2FReview%3C%2Fli%3E%3Cli%3E%3Cb%3EAmount%3A%3C%2Fb%3E+%24500%2C000%3C%2Fli%3E%3Cli%3E%3Cb%3EClose+Date%3A%3C%2Fb%3E+2026-03-31%3C%2Fli%3E%3Cli%3E%3Cb%3EOwner%3A%3C%2Fb%3E+Jane+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EProducts%3A%3C%2Fb%3E+Enterprise+Software+License%3C%2Fli%3E%3C%2Ful%3E%3C%2Fli%3E%3Cli%3E%3Cb%3EAcme+Corp+-+New+Logo+Opportunity%3C%2Fb%3E%3Cul%3E%3Cli%3E%3Cb%3EStage%3A%3C%2Fb%3E+Prospecting%3C%2Fli%3E%3Cli%3E%3Cb%3EAmount%3A%3C%2Fb%3E+%24150%2C000%3C%2Fli%3E%3Cli%3E%3Cb%3EClose+Date%3A%3C%2Fb%3E+2026-06-15%3C%2Fli%3E%3Cli%3E%3Cb%3EOwner%3A%3C%2Fb%3E+Jane+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EProducts%3A%3C%2Fb%3E+Professional+Services%3C%2Fli%3E%3C%2Ful%3E%3C%2Fli%3E%3Cli%3E%3Cb%3EAcme+Corp+-+Renewal+Q2%3C%2Fb%3E%3Cul%3E%3Cli%3E%3Cb%3EStage%3A%3C%2Fb%3E+Qualification%3C%2Fli%3E%3Cli%3E%3Cb%3EAmount%3A%3C%2Fb%3E+%24300%2C000%3C%2Fli%3E%3Cli%3E%3Cb%3EClose+Date%3A%3C%2Fb%3E+2026-04-30%3C%2Fli%3E%3Cli%3E%3Cb%3EOwner%3A%3C%2Fb%3E+Jane+Doe%3C%2Fli%3E%3Cli%3E%3Cb%3EProducts%3A%3C%2Fb%3E+Annual+Subscription+Renewal%3C%2Fli%3E%3C%2Ful%3E%3C%2Fli%3E%3C%2Fol%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22%3Cp%3EThe+expansion+deal%3C%2Fp%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Retrieving+existing+next+steps+for+%27Acme+Corp+-+Expansion+Deal%27.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3EHere+are+the+next+steps+recorded+for+%3Cb%3EAcme+Corp+-+Expansion+Deal%3C%2Fb%3E%3A%3C%2Fp%3E%3Cul%3E%3Cli%3E%3Ci%3EFollow-up+with+procurement%3C%2Fi%3E+%28added+Feb+12%29%3C%2Fli%3E%3Cli%3E%3Ci%3EReview+legal+redlines%3C%2Fi%3E+%28added+Jan+29%29%3C%2Fli%3E%3C%2Ful%3E%3Cp%3ECurrent+Next+Step%3A+%3Ci%3EAwaiting+budget+confirmation%3C%2Fi%3E+%28updated+March+1%29%3C%2Fp%3E%3Cp%3EWhat+next+step+would+you+like+to+add+or+update+for+this+opportunity%3F%3C%2Fp%3E%22%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Schedule+pricing+review+with+procurement+by+Friday.+Also%2C+follow+up+on+legal+redlines+for+the+master+services+agreement.+Then%2C+plan+for+the+executive+summary+presentation.%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22%3Cp%3EYou%27re+updating+the+%3Ci%3ENext+Steps%3C%2Fi%3E+for+%3Cb%3EAcme+Corp+-+Expansion+Deal%3C%2Fb%3E+to%3A%3C%2Fp%3E%3Cul%3E%3Cli%3ESchedule+pricing+review+with+procurement+by+Friday.%3C%2Fli%3E%3Cli%3EFollow+up+on+legal+redlines+for+the+master+services+agreement.%3C%2Fli%3E%3Cli%3EPlan+for+the+executive+summary+presentation.%3C%2Fli%3E%3C%2Ful%3E%3Cp%3EAdded+on%3A+March+5%2C+2026%3C%2Fp%3E%3Cp%3E%3Cb%3EShould+I+save+this+update+to+Salesforce%3F%3C%2Fb%3E%3C%2Fp%3E%22%7D%2C%7B%22buttons%22%3A%5B%7B%22buttonText%22%3A%22Submit%22%2C%22style%22%3A%22filled%22%7D%2C%7B%22buttonText%22%3A%22Cancel%22%2C%22style%22%3A%22outlined%22%7D%5D%7D%5D%7D%2C%7B%22role%22%3A%22user%22%2C%22parts%22%3A%5B%7B%22richText%22%3A%22Submit%22%7D%5D%7D%2C%7B%22role%22%3A%22assistant%22%2C%22parts%22%3A%5B%7B%22reasoningSteps%22%3A%5B%7B%22status%22%3A%22success%22%2C%22richText%22%3A%22Updating+the+NextStep+field+for+%27Acme+Corp+-+Expansion+Deal%27+in+Salesforce.%22%7D%5D%7D%2C%7B%22richText%22%3A%22%3Cp%3EI+have+updated+the+Opportunity%27s+Next+Steps+on+Salesforce.%3C%2Fp%3E%3Cp%3E%3Cstrong%3EOpportunity%3A%3C%2Fstrong%3E+Acme+Corp+%E2%80%93+Expansion+Deal%3C%2Fp%3E%3Cp%3E%3Cstrong%3ENew+Next+Step%3A%3C%2Fstrong%3E+Schedule+pricing+review+with+procurement+by+Friday%2C+follow+up+on+legal+redlines+for+the+master+services+agreement%2C+plan+for+the+executive+summary+presentation.%3C%2Fp%3E%3Cp%3E%3Cstrong%3EDate+Recorded%3A%3C%2Fstrong%3E+March+5%2C+2026%3C%2Fp%3E%3Cp%3E%3Cstrong%3EUpdated+by%3A%3C%2Fstrong%3E+Jane+Doe%3C%2Fp%3E%22%7D%2C%7B%22citations%22%3A%5B%7B%22connectorName%22%3A%22salesforce%22%2C%22citationTitle%22%3A%22Acme+Corp+-+Expansion+Deal%22%7D%5D%7D%5D%7D%5D%7D) shows the experience we are going to build.
## **Installation Steps**
We recommend using user consent auth (authorization grant type). This plugin was made with APIs using authorization code grant type flow. You'll find the required permissions for User consent auth under the 'Required Salesforce Permissions'.
**User Consent Authentication Benefits:**
With OAuth 2.0 User Consent Authentication enabled, users can securely access their own Salesforce data—such as opportunities, tasks, activities, notes, and related records—through Moveworks without sharing credentials. By authenticating once through Salesforce’s login page, each user allows the bot to securely access and retrieve opportunity details on their behalf.
This ensures data privacy, role-based access control, and a seamless self-service experience where users only see the data they are authorized to view.
**Required Salesforce Permissions:**
To enable access to the Salesforce API endpoints used in this plugin, ensure your Salesforce connected app has the correct OAuth scope configured under:
- **Setup → App Manager → Connected Apps → [Your Connected App]**
**Required OAuth Scope:**
- **Access and manage your data (api)**
This scope is essential for retrieving Opportunities, Opportunity History, Tasks, Events, Notes, and related records via Salesforce REST APIs.
Ensure the integration user (via profile or permission sets) has **read and edit access** to:
- **Opportunity** – Required for retrieving opportunity details and updating the Next Step field.
These permissions are necessary to fetch opportunity information and enable accurate Next Step updates within the plugin.
**Your Instance Configuration:**
All Salesforce API endpoints in this plugin use `{{YOUR_INSTANCE_DOMAIN}}` as a placeholder.
Follow the steps below to update it correctly after installation:
1. Go to your **Salesforce Setup**.
2. In the **Quick Find** box, search for **My Domain** and select it.
3. Locate your **Salesforce org’s My Domain URL** (e.g., `yourcompany.my.salesforce.com`).
4. Replace `{{YOUR_INSTANCE_DOMAIN}}` with your actual My Domain URL in all **action definitions** within the connector.
5. Ensure all API requests use **HTTPS** and leverage **OAuth 2.0 authentication**.
6. Save your configuration to ensure that all API requests are routed correctly and securely to your Salesforce instance
After configuring the connector, refer to our [**plugin installation documentation**](https://help.moveworks.com/docs/ai-agent-marketplace-installation) for details on installing the plugin in Agent Studio.
### **API #1: Search Opportunities by Criteria**
```bash
curl --location 'https://arbaan-dev-ed.my.salesforce.com/services/data/v64.0/query/?q=SELECT+Id%2C+Name%2C+StageName%2C+Amount%2C+CloseDate%2C+LastActivityDate%2C+LastModifiedDate%2C+CreatedDate%2C+NextStep%2C+Owner.Id%2C+Owner.Name%2C+Owner.Email%2C+Account.Id%2C+Account.Name%2C+Type%2C+LeadSource%2C+Description+FROM+Opportunity+WHERE+{{{filter_query}}}+ORDER+BY+CreatedDate+ASC+LIMIT+200' \
--header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'Content-Type: application/json'
```
**Query Parameters**
- **`filter_query`** — A dynamic **SOQL WHERE filter** built based on the user’s search input.
- **`opportunity_name`** — Filters opportunities by partial/full name.
- **`account_name`** — Filters opportunities by account name.
- **`owner_email`** — Filters opportunities by the opportunity owner’s email.
- **`stage_name`** — Filters opportunities by sales stage.
- **`from_date / to_date`** — Filters opportunities by **CloseDate** range.
- **`order_by`** — Sorts results (e.g., `CreatedDate ASC`).
- **`limit`** — Maximum number of records to return.
- **`fields`** — Comma-separated list of Opportunity fields to return:
`Id, Name, StageName, Amount, CloseDate, LastActivityDate, LastModifiedDate, CreatedDate, NextStep, Owner.Id, Owner.Name, Owner.Email, Account.Id, Account.Name, Type, LeadSource, Description`.
**RSQL Filtering Notes**
- Use **SOQL syntax** in the `filter_query` parameter to filter opportunities based on different criteria.
- Common examples:
- **Opportunity Name:** `Name LIKE '%{{opportunity_name}}%'`
- **Account Name:** `Account.Name LIKE '%{{account_name}}%'`
- **Owner Email:** `Owner.Email = '{{owner.email}}`
- **Stage Name:** `StageName LIKE '%{{stage_name}}%'`
- **Close Date Range:** `CloseDate >= {{from_date}} AND CloseDate <= {{to_date}}`
- Filters can be **combined** using:
- `AND` → both conditions must be true
- `OR` → either condition can be true
**Example of a Compound Filter Query:**
```bash
Account.Name LIKE '%{{account_name}}%'
```
**Example Response:**
```bash
{
"totalCount": 1,
"results": [
{
"id": "{{opportunity_id}}",
"general": {
"name": "{{opportunity_name}}",
"amount": "{{amount}}",
"stageName": "{{stage_name}}",
"closeDate": "{{close_date}}",
"lastActivityDate": "{{last_activity_date}}",
"lastModifiedDate": "{{last_modified_date}}",
"createdDate": "{{created_date}}",
"nextStep": "{{next_step}}",
"type": "{{opportunity_type}}",
"leadSource": "{{lead_source}}",
"description": "{{description}}"
},
"owner": {
"id": "{{owner_id}}",
"name": "{{owner_name}}",
"email": "{{owner_email}}"
},
"account": {
"id": "{{account_id}}",
"name": "{{account_name}}"
}
}
]
}
```
**Notes:**
- This single API endpoint supports **flexible searches**, allowing filtering by
by **Opportunity Name, Account Name, Owner Email, Stage Name, closeDate**
### API #2: Update Opportunity Next Steps
```bash
curl --location --request PATCH 'https://arbaan-dev-ed.my.salesforce.com/services/data/v64.0/sobjects/Opportunity/{{OpportunityId}}' \
--header 'Authorization: Bearer {{ACCESS_TOKEN}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"NextStep": "{{next_step}}"
}'
```
### Path Parameter:
- `opportunity_id` – The Salesforce Opportunity ID selected by the user.
### **Request Body Parameter:**
- **`NextStep`** — The updated Next Step text. Can include date and action.