Skip to Content
ResourcesIntegrationsSalesSalesforce

Salesforce

Service domainCRM
Salesforce icon
Arcade Optimized

Arcade tools designed for LLMs to interact with Salesforce

Author:Arcade
Version:2.2.2
Auth:User authorization via the Salesforce auth provider
17tools
17require secrets

Arcade's Salesforce toolkit lets LLMs interact with a Salesforce org to read, create, and update core CRM objects — accounts, contacts, leads, opportunities, and tasks — via OAuth-authenticated API calls.

Capabilities

  • Lead lifecycle management — create leads, update lead fields, convert leads into Contacts, Accounts, and Opportunities, and search or filter leads (excluding converted records).
  • Contact and account data — create contacts, search contacts by query/account/title, and retrieve rich account profiles with up to 10 related items each (contacts, leads, notes, calls, opportunities, tasks, emails, events) by ID or keyword.
  • Opportunity (deal) management — create, search, update, and fetch enriched opportunities including contact roles, line items, open tasks, and recent notes; supports pagination and owner-scoped views.
  • Activity tracking — create actionable tasks, update task fields (including marking complete), list your tasks with optional overdue filtering, and log completed phone calls as call activities.
  • User and org context — resolve the authenticated user's profile and org details, typically as the first call to establish context for subsequent operations.

OAuth

This toolkit uses OAuth 2.0 via the Salesforce provider. See the Arcade Salesforce auth provider docs for setup details.

Secrets

  • SALESFORCE_ORG_SUBDOMAIN — The subdomain of your Salesforce org's instance URL. For a standard org this is the part before .salesforce.com (e.g., mycompany for mycompany.salesforce.com). For sandbox orgs it typically includes .sandbox. Find this in Salesforce Setup → Company Settings → My Domain, or read it directly from your org's login URL. Required so the toolkit routes API calls to the correct org instance.

  • SALESFORCE_MAX_CONCURRENT_REQUESTS — An integer cap on the number of simultaneous API requests the toolkit will make to Salesforce. Salesforce enforces per-org and per-user API concurrency limits; setting this prevents the toolkit from hitting those limits and triggering EXCEEDED_MAX_CONCURRENT_REQUESTS errors. The right value depends on your org's edition and overall API usage — consult Salesforce API request limits for your edition. A conservative starting value is 5.

For how to configure secrets in Arcade, see the Arcade secrets guide. You can also manage secrets directly at https://api.arcade.dev/dashboard/auth/secrets.

Available tools(17)

17 of 17 tools
Operations
Behavior
Tool nameDescriptionSecrets
Converts 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
Creates a contact in Salesforce.
1
Creates a new lead in Salesforce. Use this when someone is a potential customer but isn't yet associated with an existing account. For contacts under existing accounts, use create_contact.
1
Creates 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.
1
Creates a task (follow-up, reminder, to-do) in Salesforce. Use this for future actions like reminders, follow-ups, or to-do items. For logging a completed phone call, use LogACall instead.
1
Gets 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
Searches for accounts in Salesforce and returns 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
Gets a single opportunity with enriched related data: contact roles, line items, open tasks, and recent notes.
1
Lists 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
Logs a completed phone call as an activity in Salesforce. Use this to record calls that already happened. For future follow-up actions, use CreateTask instead.
1
Searches 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
Searches 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
Searches 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
Updates 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
Updates 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
Updates 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
Last updated on