Salesforce
Overview
Section titled “Overview”Salesforce is a leading CRM platform integrating sales, service, marketing, and analytics to build customer relationships and drive business growth. With the Salesforce integration in SquadOS, your agents can create and update CRM records, query data via SOQL, log activities, send emails, and automate sales workflows — all without leaving SquadOS.
- Official website: https://www.salesforce.com/
- Composio documentation: docs.composio.dev/toolkits/salesforce
Authentication
Section titled “Authentication”This tool uses OAuth 2.0 (OAUTH2) to connect.
You will need the following fields:
| Field | Required | Description |
|---|---|---|
subdomain | Yes | Your Salesforce organization subdomain (e.g., your-company.my). |
instance_url | Yes | Your Salesforce instance endpoint (e.g., /services/data/v61.0). If you see URL_NOT_RESET, replace the login subdomain with your organization’s subdomain. |
How to get credentials
Section titled “How to get credentials”- Go to login.salesforce.com and sign in.
- Click your avatar in the top-right corner and select Settings.
- In the sidebar, go to My Personal Information → Personal Information to confirm your instance subdomain. The URL shown in the browser (
https://SUBDOMAIN.my.salesforce.com) contains the value you need. - To set up custom OAuth credentials in Composio, follow the guide at composio.dev/auth/salesforce.
How to connect in SquadOS
Section titled “How to connect in SquadOS”- Go to Tools in the side menu (
/admin/tools). - Open the Available tab and search for
Salesforce. - Click the card to open the details modal and hit Connect.
- You’re taken to the secure connection page hosted by Composio, where you authorize OAuth access to your Salesforce account.
- Once done, you’re sent back to SquadOS with the account connected and the tool available to your agents. (Connection-flow details in Organization Tools.)
How do I set up custom OAuth credentials for Salesforce?
Section titled “How do I set up custom OAuth credentials for Salesforce?”Follow the step-by-step guide at composio.dev/auth/salesforce to create and configure your own Salesforce OAuth credentials with Composio.
Why can’t I find items I created in Salesforce?
Section titled “Why can’t I find items I created in Salesforce?”Created records may not appear in a given Salesforce view. Use search to confirm they exist.
How do I query relationships like Pricebooks and Opportunities?
Section titled “How do I query relationships like Pricebooks and Opportunities?”Use SOQL subqueries to traverse relationships. Example (Products → Pricebooks → Opportunities):
SELECT Id, Name, (SELECT Id, Quantity, UnitPrice, TotalPrice, PricebookEntry.Product2.Name FROM OpportunityLineItems)FROM OpportunityWhat fields are required when connecting Salesforce?
Section titled “What fields are required when connecting Salesforce?”You need your subdomain (e.g., your-company.my) and the instance endpoint /services/data/v61.0. If you see URL_NOT_RESET, replace the login subdomain with your organization’s subdomain.
What happens to deprecated Salesforce tools?
Section titled “What happens to deprecated Salesforce tools?”Deprecated tools continue to work until removed. Check tool descriptions for DEPRECATED: markers.
Available actions
Section titled “Available actions”Create account
Section titled “Create account”SALESFORCE_CREATE_ACCOUNT
Creates a new account in Salesforce with the specified information. Returns the created Account’s ID at data.response_data.id.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Account name (required field in Salesforce). |
phone | string | No | Main phone number. |
website | string | No | Company website URL. |
industry | string | No | Industry the account belongs to. |
type | string | No | Type of account. |
description | string | No | Text description of the account. |
billing_city | string | No | Billing address city. |
billing_state | string | No | Billing address state/province. |
billing_country | string | No | Billing address country. |
billing_street | string | No | Billing address street. |
billing_postal_code | string | No | Billing address postal/zip code. |
annual_revenue | number | No | Estimated annual revenue. |
number_of_employees | integer | No | Number of employees. |
parent_id | string | No | ID of the parent account if this is a subsidiary. |
custom_fields | object | No | Custom fields to set on the account. Use Salesforce API field names (e.g., Level__c). |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Create contact
Section titled “Create contact”SALESFORCE_CREATE_CONTACT
Creates a new contact in Salesforce with the specified information. Writes to live CRM data — obtain explicit user confirmation before executing in automated flows.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
last_name | string | Yes | Contact’s last name (required field in Salesforce). |
first_name | string | No | Contact’s first name. |
email | string | No | Contact’s email address. |
phone | string | No | Contact’s primary phone number. |
mobile_phone | string | No | Contact’s mobile phone number. |
title | string | No | Contact’s job title. |
department | string | No | Contact’s department. |
account_id | string | No | ID of the Account this contact is associated with. |
lead_source | string | No | Source from which this contact originated. |
mailing_street | string | No | Contact’s mailing street address. |
mailing_city | string | No | Contact’s mailing city. |
mailing_state | string | No | Contact’s mailing state/province. |
mailing_country | string | No | Contact’s mailing country. |
mailing_postal_code | string | No | Contact’s mailing postal/zip code. |
custom_fields | object | No | Dictionary of custom field API names and their values (e.g., Level__c). |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Create lead
Section titled “Create lead”SALESFORCE_CREATE_LEAD
Creates a new lead in Salesforce. LastName and Company are required. Org-level validation rules (e.g., email format, custom required fields) may reject requests beyond these; inspect the error response body for the failing field.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
LastName | string | Yes | Lead’s last name. Required. |
Company | string | Yes | Lead’s company name. Required. |
FirstName | string | No | Lead’s first name. |
Email | string | No | Lead’s email address. |
Phone | string | No | Lead’s phone number. |
Title | string | No | Lead’s job title. Maximum length is 128 characters. |
Status | string | No | Lead status. |
LeadSource | string | No | Source of the lead. |
Industry | string | No | Lead’s industry. |
Street | string | No | Lead’s street address. |
City | string | No | Lead’s city. |
State | string | No | Lead’s state/province. |
Country | string | No | Lead’s country. |
PostalCode | string | No | Lead’s postal/zip code. |
AnnualRevenue | number | No | Lead’s company annual revenue. |
NumberOfEmployees | integer | No | Number of employees at lead’s company. |
CustomFields | object | No | Dictionary of custom field API names and their values (e.g., Level__c). |
allow_duplicates | boolean | No | When true, allows creating duplicate leads even if Salesforce duplicate detection rules are triggered. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Create opportunity
Section titled “Create opportunity”SALESFORCE_CREATE_OPPORTUNITY
Creates a new opportunity in Salesforce with the specified information.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Opportunity name (required field in Salesforce). |
close_date | string | Yes | Expected close date in YYYY-MM-DD format (required field in Salesforce). |
stage_name | string | Yes | Current stage of the opportunity (required field in Salesforce). |
account_id | string | No | ID of the Account this opportunity is associated with. Omitting leaves the opportunity orphaned and excluded from account-based reports. |
amount | number | No | Estimated total sale amount. |
description | string | No | Text description of the opportunity. |
lead_source | string | No | Source of the opportunity. |
probability | number | No | Percentage probability of closing (0–100). |
next_step | string | No | Description of next step in sales process. |
pricebook2_id | string | No | ID of the price book for this opportunity. |
custom_fields | object | No | Dictionary of custom field API names and their values. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Create task
Section titled “Create task”SALESFORCE_CREATE_TASK
Creates a new task in Salesforce to track activities, to-dos, and follow-ups related to contacts, leads, or other records.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
subject | string | Yes | Subject/title of the task. |
who_id | string | No | ID of the Contact or Lead associated with this task. Only accepts Contact IDs (prefix 003) or Lead IDs (prefix 00Q). |
what_id | string | No | ID of the related record (Account, Opportunity, Case, etc.). |
owner_id | string | No | ID of the user who owns the task. Defaults to current user. |
status | string | No | Status of the task. Must be a valid picklist value. |
priority | string | No | Priority level of the task. |
description | string | No | Detailed description or notes for the task. |
activity_date | string | No | Due date for the task in YYYY-MM-DD format. |
is_reminder_set | boolean | No | Whether to set a reminder for this task. |
reminder_date_time | string | No | Date and time for the reminder in ISO format (YYYY-MM-DDTHH:MM:SS). |
custom_fields | object | No | Dictionary of custom field API names and their values. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Get account
Section titled “Get account”SALESFORCE_GET_ACCOUNT
Retrieves a specific account by ID from Salesforce, returning all available fields.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Yes | The Salesforce ID of the account to retrieve. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Get contact
Section titled “Get contact”SALESFORCE_GET_CONTACT
Retrieves a specific contact by ID from Salesforce, returning all available fields.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
contact_id | string | Yes | The Salesforce ID of the contact to retrieve. Must be a valid 18-character Salesforce ID; names or emails are not valid substitutes. |
fields | string | No | Comma-delimited string of Contact field API names to retrieve. If omitted, all fields are returned. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Get lead
Section titled “Get lead”SALESFORCE_GET_LEAD
Retrieves a specific lead by ID from Salesforce, returning all available fields.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
lead_id | string | Yes | The Salesforce ID of the lead to retrieve. Must be a Salesforce record ID (18-char format); names, emails, or external codes are not accepted. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Get opportunity
Section titled “Get opportunity”SALESFORCE_GET_OPPORTUNITY
Retrieves a specific opportunity by ID from Salesforce, returning all available fields.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
opportunity_id | string | Yes | The Salesforce ID of the opportunity to retrieve. Must be a valid 15 or 18 character alphanumeric Salesforce ID. |
fields | string | No | Comma-delimited string of Opportunity field API names to retrieve. If omitted, all fields are returned. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Get user info
Section titled “Get user info”SALESFORCE_GET_USER_INFO
Retrieves information about the current user or a specific user in Salesforce.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
user_id | string | No | The Salesforce User ID to retrieve information for. If not provided, returns current user info. |
include_permissions | boolean | No | Whether to include user permissions in the response (requires additional API call). |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
List accounts
Section titled “List accounts”SALESFORCE_LIST_ACCOUNTS
Lists accounts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results paginate via nextRecordsUrl with up to ~2000 rows per page.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
query | string | No | SOQL query to fetch accounts. Use standard SOQL syntax to filter, sort, and limit results. Always include WHERE and LIMIT clauses to avoid oversized responses. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
List contacts
Section titled “List contacts”SALESFORCE_LIST_CONTACTS
Lists contacts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results are returned under response_data.records; check response_data.done and response_data.totalSize for pagination.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
query | string | No | SOQL query to fetch contacts. Use standard SOQL syntax. String literals must be single-quoted. Use correct field API names and relationship traversal (e.g., Account.Industry). |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
List leads
Section titled “List leads”SALESFORCE_LIST_LEADS
Lists leads from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results are paginated; follow nextRecordsUrl in the response to retrieve subsequent pages.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
query | string | No | SOQL query to fetch leads. Use standard SOQL syntax. Field API names must be exact (e.g., LeadSource, LastModifiedDate); invalid names cause MALFORMED_QUERY errors. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
List opportunities
Section titled “List opportunities”SALESFORCE_LIST_OPPORTUNITIES
Lists opportunities from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results are paginated up to ~2000 rows per batch.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
query | string | No | SOQL query to fetch opportunities. Omitting a WHERE clause returns all opportunities including historical ones. Results have no default sort order; include ORDER BY CloseDate DESC to retrieve recent opportunities first. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Log call
Section titled “Log call”SALESFORCE_LOG_CALL
Logs a completed phone call as a task in Salesforce with call-specific details like duration, type, and disposition.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
who_id | string | No | ID of the Contact or Lead associated with the call. |
what_id | string | No | ID of the related record (Account, Opportunity, Case, etc.) associated with the call. |
subject | string | No | Subject line for the call log. Defaults to Call. |
comments | string | No | Detailed notes or description of what was discussed during the call. |
call_date | string | No | Date of the call in YYYY-MM-DD format. Defaults to today. |
call_type | string | No | Standard Salesforce Task CallType values: Inbound, Outbound, or Internal. |
call_duration_seconds | integer | No | Duration of the call in seconds. |
call_disposition | string | No | Outcome or result of the call. Restricted picklist — only org-configured values are accepted. |
custom_fields | object | No | Dictionary of custom field API names and their values. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Run SOQL query
Section titled “Run SOQL query”SALESFORCE_RUN_SOQL_QUERY
Executes a SOQL query against Salesforce data. Returns records matching the query with pagination support.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
query | string | Yes | SOQL query to execute. Must start with SELECT. Field names must match object schema exactly. No AS keyword for aliases (e.g., SUM(Amount) TotalSales, not SUM(Amount) AS TotalSales). FIELDS(ALL) and FIELDS(CUSTOM) require LIMIT less than or equal to 200. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Search accounts
Section titled “Search accounts”SALESFORCE_SEARCH_ACCOUNTS
Search for Salesforce accounts using criteria like name, industry, type, location, or contact information. Always provide at least one filter parameter; omitting all filters returns a broad, slow listing.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | No | Search by account name. Supports partial matches. |
industry | string | No | Search by industry. |
type | string | No | Search by account type. |
billing_city | string | No | Search by billing city. Supports partial matches. |
billing_state | string | No | Search by billing state/province. Supports partial matches. |
billing_country | string | No | Search by billing country. Supports partial matches. |
phone | string | No | Search by phone number. Supports partial matches. |
website | string | No | Search by website. Supports partial matches. |
limit | integer | No | Maximum number of accounts to return. Hard-capped at approximately 2000 rows. |
fields | string | No | Comma-separated list of Account field API names to retrieve. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Search contacts
Section titled “Search contacts”SALESFORCE_SEARCH_CONTACTS
Search Salesforce Contact records (not Leads — use SALESFORCE_SEARCH_LEADS for those) using name, email, phone, account, or title. All parameters support partial/fuzzy matching.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | No | Search by contact name (first name, last name, or full name). Supports partial matches. |
email | string | No | Search by email address. Supports partial matches. |
phone | string | No | Search by phone number. Supports partial matches. |
title | string | No | Search by job title. Supports partial matches. |
account_name | string | No | Search by associated account name. Supports partial matches. |
limit | integer | No | Maximum number of contacts to return. Maximum allowed is 2000. |
fields | string | No | Comma-separated list of Contact fields to retrieve. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Search leads
Section titled “Search leads”SALESFORCE_SEARCH_LEADS
Search for Salesforce leads using criteria like name, email, phone, company, title, status, or lead source. Provide at least one search criterion; omitting all parameters results in a broad, slow listing.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | No | Search by lead name (first name, last name, or full name). Supports partial matches. |
email | string | No | Search by email address. Supports partial matches. |
company | string | No | Search by company name. Supports partial matches. |
phone | string | No | Search by phone number. Supports partial matches. |
title | string | No | Search by job title. Supports partial matches. |
status | string | No | Search by lead status. |
lead_source | string | No | Search by lead source. |
limit | integer | No | Maximum number of leads to return. Maximum cap is 2000. |
fields | string | No | Comma-separated list of Lead fields to retrieve. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Search opportunities
Section titled “Search opportunities”SALESFORCE_SEARCH_OPPORTUNITIES
Search for Salesforce opportunities using multiple criteria like name, account, stage, amount, close date, or status. Apply at least one filter to avoid broad result sets.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | No | Search by opportunity name. Supports partial matches. |
account_name | string | No | Search by associated account name. Supports partial matches. |
stage_name | string | No | Search by opportunity stage. |
is_closed | boolean | No | Filter by closed status. true for closed opportunities, false for open. |
is_won | boolean | No | Filter by won status. true for won opportunities, false for lost. |
amount_min | number | No | Minimum opportunity amount. |
amount_max | number | No | Maximum opportunity amount. |
close_date_from | string | No | Search opportunities with close date from this date (YYYY-MM-DD). |
close_date_to | string | No | Search opportunities with close date before this date (YYYY-MM-DD). |
lead_source | string | No | Search by lead source. |
limit | integer | No | Maximum number of opportunities to return. Maximum value is 2000. |
fields | string | No | Comma-separated list of Opportunity fields to retrieve. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Send email
Section titled “Send email”SALESFORCE_SEND_EMAIL
Sends an email through Salesforce with options for recipients, attachments, and activity logging. Can partially succeed — check per-recipient success/failure status rather than treating the call as all-or-nothing.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
subject | string | Yes | Subject line of the email. |
body | string | Yes | Body content of the email. |
to_addresses | string | Yes | Email addresses of recipients. Can be a comma-delimited string or a list. |
is_html | boolean | No | Whether the email body is HTML formatted. |
cc_addresses | string | No | CC email addresses. Can be a comma-delimited string or a list. |
bcc_addresses | string | No | BCC email addresses. Can be a comma-delimited string or a list. |
recipient_id | string | No | ID of a lead, contact, or person account to send the email to. Used for logging and merge fields. |
related_record_id | string | No | ID of a related record (e.g., Account, Opportunity, Case) for logging and merge fields. |
log_email | boolean | No | Whether to log the email on the recipient’s activity timeline. |
sender_type | string | No | Type of sender: CurrentUser or OrgWideEmailAddress. |
attachment_ids | string | No | IDs of files to attach. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Send email from template
Section titled “Send email from template”SALESFORCE_SEND_EMAIL_FROM_TEMPLATE
Sends an email using a predefined Salesforce email template with merge field support.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
template_id | string | Yes | ID of the email template to use. |
recipient_id | string | Yes | ID of the lead, contact, or person account to send the email to. Required when using templates. |
log_email | boolean | No | Whether to log the email on the recipient’s activity timeline. Defaults to true for template emails. |
sender_type | string | No | Type of sender: CurrentUser, DefaultWorkflowUser, or OrgWideEmailAddress. |
related_record_id | string | No | ID of a related record (e.g., Case, Opportunity) to populate merge fields from a different object. |
cc_addresses | string | No | CC email addresses. Can be a comma-delimited string or a list. |
bcc_addresses | string | No | BCC email addresses. Can be a comma-delimited string or a list. |
attachment_ids | string | No | IDs of files to attach. Can be a comma-delimited string or a list. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Update account
Section titled “Update account”SALESFORCE_UPDATE_ACCOUNT
Updates an existing account in Salesforce with the specified changes. Only provided fields will be updated.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Yes | The Salesforce ID of the account to update. |
name | string | No | Updated account name. Leave empty to keep unchanged. |
phone | string | No | Updated phone number. Leave empty to keep unchanged. |
website | string | No | Updated website URL. Leave empty to keep unchanged. |
industry | string | No | Updated industry. Leave empty to keep unchanged. |
type | string | No | Updated account type. Leave empty to keep unchanged. |
description | string | No | Updated description. Leave empty to keep unchanged. |
billing_city | string | No | Updated billing city. Leave empty to keep unchanged. |
billing_state | string | No | Updated billing state. Leave empty to keep unchanged. |
billing_country | string | No | Updated billing country. Leave empty to keep unchanged. |
billing_street | string | No | Updated billing street. Leave empty to keep unchanged. |
billing_postal_code | string | No | Updated billing postal code. Leave empty to keep unchanged. |
annual_revenue | number | No | Updated annual revenue. Leave empty to keep unchanged. |
number_of_employees | integer | No | Updated number of employees. Leave empty to keep unchanged. |
custom_fields | object | No | Dictionary of custom field API names and their values. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Update contact
Section titled “Update contact”SALESFORCE_UPDATE_CONTACT
Updates an existing contact in Salesforce with the specified changes. Only provided fields will be updated. Returns HTTP 204 with no body on success; use SALESFORCE_GET_CONTACT to verify applied changes.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
contact_id | string | Yes | The Salesforce ID of the contact to update. Must be a valid 18-character Salesforce ID. |
first_name | string | No | Updated first name. Leave empty to keep unchanged. |
last_name | string | No | Updated last name. Leave empty to keep unchanged. |
email | string | No | Updated email address. Leave empty to keep unchanged. |
phone | string | No | Updated primary phone number. Leave empty to keep unchanged. |
mobile_phone | string | No | Updated mobile phone number. Leave empty to keep unchanged. |
title | string | No | Updated job title. Leave empty to keep unchanged. |
department | string | No | Updated department. Leave empty to keep unchanged. |
account_id | string | No | Updated Account ID association. Leave empty to keep unchanged. |
mailing_street | string | No | Updated mailing street address. Leave empty to keep unchanged. |
mailing_city | string | No | Updated mailing city. Leave empty to keep unchanged. |
mailing_state | string | No | Updated mailing state/province. Leave empty to keep unchanged. |
mailing_country | string | No | Updated mailing country. Leave empty to keep unchanged. |
mailing_postal_code | string | No | Updated mailing postal/zip code. Leave empty to keep unchanged. |
custom_fields | object | No | Dictionary of custom field API names and their values. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Update lead
Section titled “Update lead”SALESFORCE_UPDATE_LEAD
Updates an existing lead in Salesforce with the specified changes. Only provided fields will be updated.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
lead_id | string | Yes | The Salesforce ID of the lead to update. |
first_name | string | No | Updated first name. Leave empty to keep unchanged. |
last_name | string | No | Updated last name. Leave empty to keep unchanged. |
email | string | No | Updated email address. Leave empty to keep unchanged. |
phone | string | No | Updated phone number. Leave empty to keep unchanged. |
company | string | No | Updated company name. Leave empty to keep unchanged. |
title | string | No | Updated job title. Leave empty to keep unchanged. |
status | string | No | Updated status. Must match a valid picklist value. |
rating | string | No | Updated rating. Must match a valid picklist value. |
lead_source | string | No | Updated lead source. Leave empty to keep unchanged. |
industry | string | No | Updated industry. Leave empty to keep unchanged. |
annual_revenue | number | No | Updated annual revenue. |
number_of_employees | integer | No | Updated number of employees. |
city | string | No | Updated city. Leave empty to keep unchanged. |
state | string | No | Updated state/province. Leave empty to keep unchanged. |
country | string | No | Updated country. Leave empty to keep unchanged. |
description | string | No | Updated description. Leave empty to keep unchanged. |
custom_fields | object | No | Custom fields to update. Keys are Salesforce API names (e.g., Level__c). |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Update opportunity
Section titled “Update opportunity”SALESFORCE_UPDATE_OPPORTUNITY
Updates an existing opportunity in Salesforce with the specified changes. Only provided fields will be updated. Returns HTTP 204 with empty body on success.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
opportunity_id | string | Yes | The Salesforce ID of the opportunity to update. Multiple opportunities may share the same name — apply additional filters or confirm the correct record before updating. |
name | string | No | Updated opportunity name. Leave empty to keep unchanged. |
stage_name | string | No | Updated stage. Must exactly match a stage defined in the org’s current sales process. |
close_date | string | No | Updated close date in YYYY-MM-DD format. Leave empty to keep unchanged. |
amount | number | No | Updated amount. |
account_id | string | No | Updated Account ID. Leave empty to keep unchanged. |
description | string | No | Updated description. Leave empty to keep unchanged. |
lead_source | string | No | Updated lead source. Leave empty to keep unchanged. |
probability | number | No | Updated probability percentage (0–100). |
next_step | string | No | Updated next step. Leave empty to keep unchanged. |
type | string | No | Updated opportunity type. Leave empty to keep unchanged. |
custom_fields | object | No | Dictionary of custom field API names and their values to update. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Query contacts by name
Section titled “Query contacts by name”SALESFORCE_QUERY_CONTACTS_BY_NAME
Queries Salesforce contacts by name using SOQL. Useful for quickly locating contacts without needing a record ID.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Name or partial name of the contact to search for. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Get all objects
Section titled “Get all objects”SALESFORCE_GET_ALL_CUSTOM_OBJECTS
Retrieves all Salesforce objects (standard and custom) with detailed metadata. Each object includes a custom field to identify custom objects.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
page | integer | No | Page number to retrieve (1-indexed). Defaults to 1. |
page_size | integer | No | Number of objects to return per page. Defaults to 50. Must be between 1 and 200. |
custom_only | boolean | No | If true, only returns custom objects. Defaults to false. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Get all fields for an object
Section titled “Get all fields for an object”SALESFORCE_GET_ALL_FIELDS_FOR_OBJECT
Retrieves all fields (standard and custom) for a Salesforce object with complete metadata including field types, constraints, picklist values, and relationships.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
object_name | string | Yes | API name of the Salesforce object to describe. Use standard object names (Account, Contact, Lead, Opportunity) or custom object API names ending in __c. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Delete account
Section titled “Delete account”SALESFORCE_DELETE_ACCOUNT
Permanently deletes an account from Salesforce. This action cannot be undone.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Yes | The Salesforce ID of the account to delete. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |
Delete contact
Section titled “Delete contact”SALESFORCE_DELETE_CONTACT
Permanently deletes a contact from Salesforce. This action cannot be undone.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
contact_id | string | Yes | The Salesforce ID of the contact to delete. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error if any occurred during the execution of the action. |
successful | boolean | Yes | Whether or not the action execution was successful. |