Salesforce
Arcade tools designed for LLMs to interact with Salesforce
Salesforce Toolkit
Arcade's Salesforce toolkit lets LLMs interact with a Salesforce org to read, create, and update CRM records. It covers the full sales lifecycle — from lead capture through opportunity management to activity logging.
Capabilities
- Lead management: Create, search, update, and convert leads (lead → Contact/Account/Opportunity) with guard rails that prevent acting on already-converted records.
- Contact & account data: Create contacts and retrieve rich account/contact snapshots including related opportunities, tasks, notes, calls, emails, and events.
- Opportunity (deal) pipeline: Create, search, update, and fetch enriched opportunities including contact roles and line items; filter by owner or stage across the full org pipeline.
- Activity & task tracking: Create tasks and reminders, list your open/overdue tasks, log completed calls, and update or complete existing tasks.
- User & org context: Identify the authenticated user and org via
WhoAmI, typically called first to establish context for subsequent operations.
OAuth
This toolkit uses OAuth 2.0 with Salesforce as the identity provider. See the Arcade Salesforce auth provider docs for setup instructions.
Secrets
-
SALESFORCE_ORG_SUBDOMAIN— The subdomain of your Salesforce org's base URL. For a standard org this is the part before.my.salesforce.com(e.g.,mycompanyformycompany.my.salesforce.com). Find it in Salesforce Setup → Company Information → My Domain or directly from the URL when logged in. Required so the toolkit knows which org instance to target. -
SALESFORCE_MAX_CONCURRENT_REQUESTS— An integer that caps how many parallel API requests the toolkit will issue against your org at once. This is not a Salesforce-issued credential; it is a self-supplied tuning value you set based on your org's API request limits. Lower values reduce the risk of hitting governor limits; higher values increase throughput. Set conservatively for Developer/Sandbox orgs and more aggressively for Enterprise orgs with higher API allocation.
Store secrets in the Arcade secrets manager. See the Arcade secrets docs or manage them directly at https://api.arcade.dev/dashboard/auth/secrets.
Available tools(17)
| Tool name | Description | Secrets | |
|---|---|---|---|
Convert a lead into a Contact (and optionally Account + Opportunity).
This is the canonical lead-to-deal transition in Salesforce. The lead record
is marked as converted and new Contact/Account/Opportunity records are created. | 1 | ||
Create a contact in Salesforce. | 2 | ||
Create a new lead in Salesforce.
Use this when someone is a potential customer but isn't yet associated with
an existing account. For someone at an existing account, create a contact instead. | 1 | ||
Create a new opportunity (deal) in Salesforce.
Requires an account, name, stage, and close date. Validates stage, lead source,
and type against the org's configured picklist values. | 2 | ||
Create a task (follow-up, reminder, to-do) in Salesforce.
Use this for future actions like reminders, follow-ups, or to-do items.
To record a phone call that already happened, log it as a call instead. | 1 | ||
Get the account with related info: contacts, leads, notes, calls, opportunities, tasks,
emails, and events (up to 10 items of each type).
An account is an organization (such as a customer, supplier, or partner, though more commonly
a customer). In some Salesforce account setups, an account can also represent a person. | 1 | ||
Search for accounts in Salesforce and return them with related info: contacts, leads,
notes, calls, opportunities, tasks, emails, and events (up to 10 items of each type).
An account is an organization (such as a customer, supplier, or partner, though more commonly
a customer). In some Salesforce account setups, an account can also represent a person. | 1 | ||
Get a single opportunity with enriched related data: contact roles, line items,
open tasks, and recent notes. | 1 | ||
List tasks assigned to you in Salesforce with optional filters.
Excludes call logs and email activities — only shows actionable tasks.
Use overdue_only=true to see just tasks past their due date. | 1 | ||
Log a completed phone call as an activity in Salesforce.
Use this to record calls that already happened. For future follow-up actions,
create a task instead. | 1 | ||
Search for contacts in Salesforce with optional filters.
At least one filter (query, account_id, or title) must be provided.
Use this to find people at specific accounts or with specific roles. | 1 | ||
Search for leads in Salesforce with optional filters.
Always excludes already-converted leads. Use owner='me' (default) for your leads,
or owner='all' for all leads in the org. | 1 | ||
Search for opportunities (deals) in Salesforce with optional filters.
Returns a paginated list of opportunities with key fields like stage, amount,
close date, and associated account. Use owner='me' (default) to see your deals,
or owner='all' for the whole pipeline. | 1 | ||
Update fields on an existing lead. Only provided fields are changed.
If the lead has already been converted, returns an error with the converted
record IDs so the agent can redirect to the correct contact/account. | 1 | ||
Update fields on an existing opportunity. Only provided fields are changed.
Returns a success indicator and any warnings (e.g., amount ignored due to line items). | 1 | ||
Update fields on an existing task. Only provided fields are changed.
Use status='Completed' to mark a task as done. | 1 | ||
Get information about the currently authenticated Salesforce user.
This is typically the first tool called to establish user context.
Returns the user's profile details and organization information. | 1 |