Salesforce: what the assistant can do
Everything the assistant can do in Salesforce by text: 23 actions, with example texts, the Salesforce API call behind each one, and which ones ask first or can be undone.
In Salesforce, the assistant can find a contact, find an account, find a lead, add a contact, update a contact, add a lead, update a lead, add an account, update an account, put a contact under an account, log a visit, log a call, add a meeting, add a note, create a follow-up task, complete a task, reschedule a task, create an opportunity, move an opportunity, change an opportunity, list open opportunities, list your tasks and catch up on a record. You ask by text, in your own words.
Status: Built, not open yet. How to connect, permissions and limits: Salesforce.
| What it does | Asks first? | Undo |
|---|---|---|
| Find a contact | No | – |
| Find an account | No | – |
| Find a lead | No | – |
| Add a contact | If unsure | 10 minutes |
| Update a contact | If unsure | 10 minutes |
| Add a lead | If unsure | 10 minutes |
| Update a lead | If unsure | 10 minutes |
| Add an account | If unsure | 10 minutes |
| Update an account | If unsure | 10 minutes |
| Put a contact under an account | If unsure | 10 minutes |
| Log a visit | If unsure | 10 minutes |
| Log a call | If unsure | 10 minutes |
| Add a meeting | If unsure | 10 minutes |
| Add a note | If unsure | 10 minutes |
| Create a follow-up task | If unsure | 10 minutes |
| Complete a task | If unsure | 10 minutes |
| Reschedule a task | If unsure | 10 minutes |
| Create an opportunity | If unsure | 10 minutes |
| Move an opportunity | If unsure | 10 minutes |
| Change an opportunity | If unsure | 10 minutes |
| List open opportunities | No | – |
| List your tasks | No | – |
| Catch up on a record | No | – |
Asking first and undo follow the same rules for every tool: see Confirmations and undo.
Find a contact
Section titled “Find a contact”Looks up a contact or open lead by name, email, phone or company and replies with their phone, email, title and account.
- Asks before doing it? No. It only looks things up.
- Can be undone? Nothing to undo: it doesn’t change anything.
- Salesforce API call:
GET /services/data/v68.0/search?q=FIND {…} RETURNING Contact(…), Lead(…) - Action name:
salesforce.find_contact
Example texts:
- “what’s Dana Whitfield’s number?”
- “email for Mike at Lone Star Hardware?”
- “who is 512-555-0142”
Find an account
Section titled “Find an account”Looks up an account by name, website or phone and replies with its phone, website and city.
- Asks before doing it? No. It only looks things up.
- Can be undone? Nothing to undo: it doesn’t change anything.
- Salesforce API call:
GET /services/data/v68.0/search?q=FIND {…} RETURNING Account(…) - Action name:
salesforce.find_account
Example texts:
- “look up Acme Supply in Salesforce”
- “what’s the main number for Brazos Builders?”
- “is Lone Star Hardware an account?”
Find a lead
Section titled “Find a lead”Looks up an open (not yet converted) lead and replies with their company, phone and email.
- Asks before doing it? No. It only looks things up.
- Can be undone? Nothing to undo: it doesn’t change anything.
- Salesforce API call:
GET /services/data/v68.0/search?q=FIND {…} RETURNING Lead(…) - Action name:
salesforce.find_lead
Example texts:
- “find the Patel lead”
- “is Shah Fabrication a lead in Salesforce?”
- “what’s the status on the Gulf Coast lead”
Add a contact
Section titled “Add a contact”Adds a new contact with their phone, email and title, under the account they work for.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/sobjects/Contact - Action name:
salesforce.create_contact
Example texts:
- “add Dana Whitfield, purchasing at Acme Supply, 512-555-0142”
- “new contact: Jason Lee jlee@brazosbuilders.com”
- “save Maria Gomez from Gulf Coast Distributors as a contact, her cell is 713-555-0199”
Update a contact
Section titled “Update a contact”Changes a contact’s email, phone, cell, title or a misspelled name.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Contact/{id} - Action name:
salesforce.update_contact
Example texts:
- “Dana Whitfield’s new email is dana.w@acmesupply.com”
- “update Tom Becker’s cell to 512-555-0188”
- “Jason Lee is now the purchasing manager”
Add a lead
Section titled “Add a lead”Adds a new prospect as a lead with their company, phone and email, and a lead status if you give one.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/sobjects/Lead - Action name:
salesforce.create_lead
Example texts:
- “new lead: Priya Shah at Shah Fabrication, priya@shahfab.com”
- “add a lead, Carlos Ruiz from Hill Country Plumbing Supply, 512-555-0130”
- “met a prospect at the trade show, Jen Park with Park Builders, put her in as a lead”
Update a lead
Section titled “Update a lead”Changes a lead’s status (working, nurturing, unqualified…), company, email, phone or title. It doesn’t convert the lead.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Lead/{id} - Action name:
salesforce.update_lead
Example texts:
- “mark the Priya Shah lead as working”
- “Carlos Ruiz lead is unqualified, they went with a competitor”
- “update Jen Park’s lead email to jen@parkbuilders.com”
Add an account
Section titled “Add an account”Adds a new account (company) with its website, phone and city.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/sobjects/Account - Action name:
salesforce.create_account
Example texts:
- “add Gulf Coast Distributors as an account, gulfcoastdist.com”
- “new account: Shah Fabrication in Round Rock, 512-555-0130”
- “create an account called Amy’s Birds”
Update an account
Section titled “Update an account”Changes an account’s name, website, main phone or billing address.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Account/{id} - Action name:
salesforce.update_account
Example texts:
- “Acme Supply’s new number is 512-555-0111”
- “update Brazos Builders address to 1400 Industrial Blvd, Round Rock”
- “Lone Star Hardware website is lonestarhw.com”
Put a contact under an account
Section titled “Put a contact under an account”Moves an existing contact to an existing account (the person works there now).
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Contact/{id} - Action name:
salesforce.associate_contact_account
Example texts:
- “add Amy to Amy’s Birds”
- “Dana Whitfield works at Acme Supply now, link her”
- “associate Tom Becker with Lone Star Hardware”
Log a visit
Section titled “Log a visit”Logs how an in-person visit went as a completed activity on a contact, lead, account or opportunity.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/sobjects/Task - Action name:
salesforce.log_visit
Example texts:
- “log my visit with Acme, they want 200 units”
- “met with Dana at Brazos Builders, she’s ready to sign after the board meeting”
- “stopped by Lone Star Hardware this morning, talked to Tom about the spring order”
Log a call
Section titled “Log a call”Logs a phone call that already happened, with what was said, as a call on the record.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/sobjects/Task - Action name:
salesforce.log_call
Example texts:
- “log a call with Jason Lee: wants samples sent to the Round Rock site”
- “just talked to Dana at Acme on the phone, PO coming Monday”
- “Tom from Lone Star Hardware called me, needs the spring order moved up a week”
Add a meeting
Section titled “Add a meeting”Puts a meeting on your Salesforce calendar with a contact, account or opportunity, upcoming or just held. No invite is sent.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/sobjects/Event - Action name:
salesforce.log_meeting
Example texts:
- “set a meeting with Dana Whitfield Tuesday at 2 for an hour”
- “book a pricing review with Brazos Builders Nov 4 at 10am”
- “log a 30 min meeting with Tom at Lone Star this morning at 9, went over the spring order”
Add a note
Section titled “Add a note”Saves a note (shown in the record’s Notes list) on a contact, lead, account or opportunity.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/composite (ContentNote + ContentDocumentLink) - Action name:
salesforce.add_note
Example texts:
- “note on Acme Supply: gate code 4411, ask for Maria at receiving”
- “add a note to Dana Whitfield, prefers texts over calls”
- “note on the Gulf Coast opportunity: pricing approved, waiting on PO”
Create a follow-up task
Section titled “Create a follow-up task”Creates a task due on a date, with a reminder, optionally tied to a contact, lead, account or opportunity.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/sobjects/Task - Action name:
salesforce.create_task
Example texts:
- “remind me to send Acme pricing Friday”
- “urgent: get Shah Fabrication a revised quote by Thursday”
- “follow up with Dana Whitfield next Tuesday at 10”
Complete a task
Section titled “Complete a task”Marks one of your open tasks done.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Task/{id} - Action name:
salesforce.complete_task
Example texts:
- “mark the Acme pricing task done”
- “done with the follow up for Dana Whitfield”
- “sent Shah Fabrication their revised quote, check that off”
Reschedule a task
Section titled “Reschedule a task”Moves one of your open tasks to a new due date or time, or changes its priority.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Task/{id} - Action name:
salesforce.update_task
Example texts:
- “push the Acme pricing task to Monday”
- “move my Dana follow-up to Thursday at 3”
- “make the Shah Fabrication quote task high priority”
Create an opportunity
Section titled “Create an opportunity”Creates an opportunity with an amount, stage and expected close date on an account, optionally with a contact.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
POST /services/data/v68.0/composite (Opportunity + OpportunityContactRole) - Action name:
salesforce.create_opportunity
Example texts:
- “new opportunity for Acme, 200 units, $40k, closing end of November”
- “create a deal with Brazos Builders for the Round Rock job, 85k, proposal stage, close Dec 15”
- “open an opp for Lone Star Hardware spring order $12,500 closing 11/30”
Move an opportunity
Section titled “Move an opportunity”Moves an opportunity to another stage, including closed won or closed lost.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Opportunity/{id} - Action name:
salesforce.update_opportunity_stage
Example texts:
- “move the Acme opportunity to proposal”
- “mark Brazos Builders closed won!”
- “Lone Star Hardware deal is lost, they went with a competitor”
Change an opportunity
Section titled “Change an opportunity”Changes an opportunity’s amount, expected close date or owner, and can hand it to a teammate.
- Asks before doing it? Usually not. It asks first if it isn’t sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- Can be undone? Yes. Text “undo” within 10 minutes.
- Salesforce API call:
PATCH /services/data/v68.0/sobjects/Opportunity/{id} - Action name:
salesforce.update_opportunity
Example texts:
- “Acme opportunity is now 45k”
- “push the Brazos Builders close date to Dec 15”
- “give the Lone Star Hardware opp to Jake”
List open opportunities
Section titled “List open opportunities”Lists open opportunities with amount, stage and close date, for an account or contact, or all of yours.
- Asks before doing it? No. It only looks things up.
- Can be undone? Nothing to undo: it doesn’t change anything.
- Salesforce API call:
GET /services/data/v68.0/query?q=SELECT … FROM Opportunity WHERE IsClosed = false … - Action name:
salesforce.list_opportunities
Example texts:
- “what opportunities do we have open with Acme Supply?”
- “show me my pipeline”
- “Dana Whitfield’s open deals”
List your tasks
Section titled “List your tasks”Lists your open tasks due by a date (today if you don’t say), overdue ones included.
- Asks before doing it? No. It only looks things up.
- Can be undone? Nothing to undo: it doesn’t change anything.
- Salesforce API call:
GET /services/data/v68.0/query?q=SELECT … FROM Task WHERE OwnerId = … AND IsClosed = false … - Action name:
salesforce.list_tasks
Example texts:
- “what are my Salesforce tasks today?”
- “what follow-ups do I have this week”
- “anything overdue in Salesforce?”
Catch up on a record
Section titled “Catch up on a record”Shows the latest calls, visits, meetings and notes on a contact, lead, account or opportunity.
- Asks before doing it? No. It only looks things up.
- Can be undone? Nothing to undo: it doesn’t change anything.
- Salesforce API call:
POST /services/data/v68.0/composite (Task, Event and ContentDocumentLink queries) - Action name:
salesforce.recent_activity
Example texts:
- “what’s the latest with Acme Supply?”
- “when did I last talk to Dana Whitfield”
- “recent activity on the Gulf Coast opportunity”
This list is generated from the code that runs each action, so it’s always current.