> For the complete documentation index, see [llms.txt](https://docs.toolhouse.ai/toolhouse/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.toolhouse.ai/toolhouse/integrations/salesforce.md).

# Salesforce

Your Toolhouse AI Worker can connect to Salesforce using 216 specialized tools.

## Auth Connection

This service requires an auth connection to use its tools. You can set this up in your Toolhouse dashboard under [Auth Connections](https://toolhouse.app/auth-connections?authkit_slugs=salesforce).

## Tools (216)

### `Salesforce Account Creation With Content Type Option`

Integration name: **SALESFORCE\_ACCOUNT\_CREATION\_WITH\_CONTENT\_TYPE\_OPTION**

DEPRECATED: Creates a new Salesforce Account using a JSON POST request, requiring 'Name'; specific fields (e.g., custom, DunsNumber) may have org-level prerequisites.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                          | Description                                                                                                                                               |
| ------------------------- | ------- | :------: | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Id`                      | string  |          | —                                | Unique identifier for the account (system-generated and read-only upon creation).                                                                         |
| `Fax`                     | string  |          | —                                | Fax number for the account.                                                                                                                               |
| `Sic`                     | string  |          | —                                | Standard Industrial Classification (SIC) code (max 20 chars). For business accounts only.                                                                 |
| `Name`                    | string  |          | —                                | Name of the account (required, max 255 chars). For Person Accounts, this is a concatenated field from the associated contact and not directly modifiable. |
| `Site`                    | string  |          | —                                | Name of the account’s specific location or site (max 80 chars).                                                                                           |
| `Type`                    | string  |          | `"Customer - Direct"`            | Type of account, influencing categorization and behavior.                                                                                                 |
| `Phone`                   | string  |          | —                                | Primary phone number for the account (max 40 chars).                                                                                                      |
| `Jigsaw`                  | string  |          | —                                | Data.com company ID reference (max 20 chars, API v22.0+). For business accounts. Read-only, do not modify.                                                |
| `Rating`                  | string  |          | `"Hot"`                          | Prospect rating (picklist).                                                                                                                               |
| `SLA__c`                  | string  |          | —                                | Custom field for Service Level Agreement (SLA) type/details.                                                                                              |
| `OwnerId`                 | string  |          | —                                | ID of the Salesforce user owning this account. 'Transfer Record' permission may be needed to update if not the API user (API v16.0+).                     |
| `SicDesc`                 | string  |          | —                                | Description of line of business based on SIC code (max 80 chars). For business accounts only.                                                             |
| `Website`                 | string  |          | —                                | Website URL of the account (max 255 chars).                                                                                                               |
| `Industry`                | string  |          | `"Agriculture"`                  | Primary industry of the account (picklist, max 40 chars).                                                                                                 |
| `ParentId`                | string  |          | —                                | ID of the parent account for subsidiary or hierarchical relationships.                                                                                    |
| `PhotoUrl`                | string  |          | —                                | URL path for the social network profile image (read-only). Blank if Social Accounts and Contacts is not enabled for the user.                             |
| `Active__c`               | string  |          | —                                | Custom field indicating if the account is active.                                                                                                         |
| `IsDeleted`               | boolean |          | —                                | Indicates if the account is in the Recycle Bin (read-only).                                                                                               |
| `NaicsCode`               | string  |          | —                                | NAICS code (6-digit industry classifier, max 8 chars). For business accounts. Requires Data.com Prospector/Clean.                                         |
| `NaicsDesc`               | string  |          | —                                | Description of line of business based on NAICS code (max 120 chars). For business accounts. Requires Data.com Prospector/Clean.                           |
| `Ownership`               | string  |          | `"Public"`                       | Ownership structure (picklist).                                                                                                                           |
| `DunsNumber`              | string  |          | —                                | D-U-N-S number (9-digit identifier, max 9 chars). For business accounts. Requires Data.com Prospector/Clean.                                              |
| `Tradestyle`              | string  |          | —                                | Organization's 'Doing Business As' (DBA) name (max 255 chars). For business accounts. Requires Data.com Prospector/Clean.                                 |
| `BillingCity`             | string  |          | —                                | City for the billing address (max 40 chars).                                                                                                              |
| `CleanStatus`             | string  |          | `"Matched"`                      | Data quality status compared with Data.com.                                                                                                               |
| `CreatedById`             | string  |          | —                                | ID of the user who created the account (read-only).                                                                                                       |
| `CreatedDate`             | string  |          | —                                | Date and time of account creation (read-only).                                                                                                            |
| `Description`             | string  |          | —                                | Text description of the account (max 32,000 chars).                                                                                                       |
| `YearStarted`             | string  |          | —                                | Year the organization was established (max 4 chars). For business accounts. Requires Data.com Prospector/Clean.                                           |
| `BillingState`            | string  |          | —                                | State or province for the billing address (max 80 chars).                                                                                                 |
| `ShippingCity`            | string  |          | —                                | City for the shipping address (max 40 chars).                                                                                                             |
| `TickerSymbol`            | string  |          | —                                | Stock market ticker symbol (max 20 chars). For business accounts only.                                                                                    |
| `AccountNumber`           | string  |          | —                                | Account number assigned to this account (max 40 chars).                                                                                                   |
| `AccountSource`           | string  |          | `"Web"`                          | Origin source of the account record (admin-defined picklist, values max 40 chars).                                                                        |
| `AnnualRevenue`           | integer |          | —                                | Estimated annual revenue.                                                                                                                                 |
| `BillingStreet`           | string  |          | —                                | Street address for the billing location.                                                                                                                  |
| `ShippingState`           | string  |          | —                                | State or province for the shipping address (max 80 chars).                                                                                                |
| `custom_fields`           | object  |          | `{"CustomerPriority__c":"High"}` | Dictionary of custom field API names and their values. Custom field names typically end with '\_\_c'.                                                     |
| `BillingCountry`          | string  |          | —                                | Country for the billing address (max 80 chars).                                                                                                           |
| `DandbCompanyId`          | string  |          | —                                | Associated Dun & Bradstreet company ID for D\&B integration (read-only).                                                                                  |
| `LastViewedDate`          | string  |          | —                                | Timestamp of when current user last viewed this account record (read-only).                                                                               |
| `MasterRecordId`          | string  |          | —                                | ID of the master record if this account was merged (read-only).                                                                                           |
| `ShippingStreet`          | string  |          | —                                | Street address for the shipping location (max 255 chars).                                                                                                 |
| `SystemModstamp`          | string  |          | —                                | Timestamp of last modification by user or automated process (read-only).                                                                                  |
| `BillingLatitude`         | integer |          | —                                | Latitude for the billing address (-90 to 90, up to 15 decimal places).                                                                                    |
| `JigsawCompanyId`         | string  |          | —                                | Associated Data.com company ID (read-only).                                                                                                               |
| `ShippingCountry`         | string  |          | —                                | Country for the shipping address (max 80 chars).                                                                                                          |
| `attributes__url`         | string  |          | —                                | Internal Salesforce field: Relative API URL for this SObject record. System-set or read-only.                                                             |
| `BillingLongitude`        | integer |          | —                                | Longitude for the billing address (-180 to 180, up to 15 decimal places).                                                                                 |
| `LastActivityDate`        | string  |          | —                                | Most recent due date of an event or closed task associated with the record (read-only).                                                                   |
| `LastModifiedById`        | string  |          | —                                | ID of the user who last modified the account (read-only).                                                                                                 |
| `LastModifiedDate`        | string  |          | —                                | Date and time of last modification (read-only).                                                                                                           |
| `OperatingHoursId`        | string  |          | —                                | ID of associated operating hours. Requires Salesforce Field Service.                                                                                      |
| `ShippingLatitude`        | integer |          | —                                | Latitude for the shipping address (-90 to 90, up to 15 decimal places).                                                                                   |
| `attributes__type`        | string  |          | —                                | Internal Salesforce field: Type of the SObject (e.g., 'Account'). System-set or read-only.                                                                |
| `BillingPostalCode`       | string  |          | —                                | Postal code for the billing address (max 20 chars).                                                                                                       |
| `NumberOfEmployees`       | integer |          | —                                | Number of employees (max 8 digits).                                                                                                                       |
| `ShippingLongitude`       | integer |          | —                                | Longitude for the shipping address (-180 to 180, up to 15 decimal places).                                                                                |
| `LastReferencedDate`      | string  |          | —                                | Timestamp of when current user last accessed this record or related items (read-only).                                                                    |
| `SLASerialNumber__c`      | string  |          | —                                | Custom field for SLA serial number.                                                                                                                       |
| `ShippingPostalCode`      | string  |          | —                                | Postal code for the shipping address (max 20 chars).                                                                                                      |
| `CustomerPriority__c`     | string  |          | —                                | Custom field for customer priority (e.g., High, Medium, Low).                                                                                             |
| `NumberofLocations__c`    | integer |          | —                                | Custom field for the number of physical locations.                                                                                                        |
| `SLAExpirationDate__c`    | string  |          | —                                | Custom field for SLA expiration date.                                                                                                                     |
| `UpsellOpportunity__c`    | string  |          | —                                | Custom field indicating upsell opportunity potential.                                                                                                     |
| `BillingGeocodeAccuracy`  | string  |          | `"Address"`                      | Accuracy level of the geocode for the billing address.                                                                                                    |
| `ShippingGeocodeAccuracy` | string  |          | `"Address"`                      | Accuracy level of the geocode for the shipping address.                                                                                                   |

***

### `Salesforce Add Contact To Campaign`

Integration name: **SALESFORCE\_ADD\_CONTACT\_TO\_CAMPAIGN**

Adds a contact to a campaign by creating a CampaignMember record to track campaign engagement. Fails if the contact is already a member of the campaign; pre-check membership via SOQL before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                               | Description                                                                                                                                                                                                                                                                                                                          |
| --------------- | ------ | :------: | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `status`        | string |          | `"Sent"`                                              | The status of the campaign member. Common values include 'Sent', 'Responded'. The available statuses depend on campaign configuration. Value must exactly match a configured CampaignMember Status for the campaign; arbitrary strings will fail. Query the campaign's CampaignMemberStatus records first if unsure of valid values. |
| `contact_id`    | string |     ✅    | `"003XXXXXXXXXXXXXXX"`                                | The Salesforce ID of the contact to add to the campaign.                                                                                                                                                                                                                                                                             |
| `campaign_id`   | string |     ✅    | `"701XXXXXXXXXXXXXXX"`                                | The Salesforce ID of the campaign to add the contact to.                                                                                                                                                                                                                                                                             |
| `custom_fields` | object |          | `{"VIP_Member__c":true,"Member_Source__c":"Webinar"}` | Dictionary of custom field API names and their values for CampaignMember. Custom field names typically end with '\_\_c'.                                                                                                                                                                                                             |

***

### `Salesforce Add Lead To Campaign`

Integration name: **SALESFORCE\_ADD\_LEAD\_TO\_CAMPAIGN**

Adds a lead to a campaign by creating a CampaignMember record, allowing you to track campaign engagement. Both `campaign_id` and `lead_id` must be valid Salesforce IDs of active, existing records — names or emails cannot be substituted, and deleted or inactive records will cause the call to fail. This is a persistent CRM write; confirm the correct lead and campaign before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                             | Description                                                                                                                                                                                                                                                              |
| --------------- | ------ | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `status`        | string |          | `"Sent"`                                            | The status of the campaign member. Common values include 'Sent', 'Responded'. The available statuses depend on campaign configuration. Value must exactly match one of the campaign's configured CampaignMember statuses; a mismatch will cause the call to be rejected. |
| `lead_id`       | string |     ✅    | `"00QXXXXXXXXXXXXXXX"`                              | The Salesforce ID of the lead to add to the campaign.                                                                                                                                                                                                                    |
| `campaign_id`   | string |     ✅    | `"701XXXXXXXXXXXXXXX"`                              | The Salesforce ID of the campaign to add the lead to.                                                                                                                                                                                                                    |
| `custom_fields` | object |          | `{"VIP_Member__c":true,"Member_Source__c":"Event"}` | Dictionary of custom field API names and their values for CampaignMember. Custom field names typically end with '\_\_c'.                                                                                                                                                 |

***

### `Salesforce Add Opportunity Line Item`

Integration name: **SALESFORCE\_ADD\_OPPORTUNITY\_LINE\_ITEM**

Adds a product (line item) to an opportunity. The product must exist in a pricebook entry that's associated with the opportunity's pricebook.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                             | Description                                                                                                                                                                                                                                                                                                                                                          |
| -------------------- | ------ | :------: | ------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `discount`           | number |          | `10`                                                                | Discount percentage (0-100). Cannot be used with TotalPrice.                                                                                                                                                                                                                                                                                                         |
| `quantity`           | number |     ✅    | `1`                                                                 | The quantity of the product to add.                                                                                                                                                                                                                                                                                                                                  |
| `unit_price`         | number |          | `99.99`                                                             | The sales price per unit. If not specified, uses the standard price from the pricebook entry.                                                                                                                                                                                                                                                                        |
| `description`        | string |          | `"Premium support package"`                                         | Optional description for this line item.                                                                                                                                                                                                                                                                                                                             |
| `total_price`        | number |          | `500`                                                               | The total price for this line item. Cannot be used with UnitPrice or Discount.                                                                                                                                                                                                                                                                                       |
| `service_date`       | string |          | `"2025-12-31"`                                                      | Service date for the product in YYYY-MM-DD format.                                                                                                                                                                                                                                                                                                                   |
| `custom_fields`      | object |          | `{"Discount_Code__c":"Q4PROMO","Line_Item_Category__c":"Services"}` | Dictionary of custom field API names and their values. Custom field names typically end with '\_\_c'.                                                                                                                                                                                                                                                                |
| `opportunity_id`     | string |     ✅    | `"006XXXXXXXXXXXXXXX"`                                              | The Salesforce ID of the opportunity to add a product to.                                                                                                                                                                                                                                                                                                            |
| `pricebook_entry_id` | string |     ✅    | `"01uXXXXXXXXXXXXXXX"`                                              | The ID of the PricebookEntry that contains the product and price information. This links to a specific product in a specific pricebook. Entry must be active and match the opportunity's pricebook and currency; mismatches cause REQUIRED\_FIELD\_MISSING or INVALID\_CROSS\_REFERENCE\_KEY errors. Use SALESFORCE\_LIST\_PRICEBOOK\_ENTRIES to find valid entries. |

***

### `Salesforce Apply Lead Assignment Rules`

Integration name: **SALESFORCE\_APPLY\_LEAD\_ASSIGNMENT\_RULES**

Applies configured lead assignment rules to a specific lead, automatically routing it to the appropriate owner based on your organization's rules. Allow a brief propagation delay before querying updated ownership or field values after rule application.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                | Description                                                 |
| --------- | ------ | :------: | ---------------------- | ----------------------------------------------------------- |
| `lead_id` | string |     ✅    | `"00QWd000005V3RmMAK"` | The Salesforce ID of the lead to apply assignment rules to. |

***

### `Salesforce Associate Contact To Account`

Integration name: **SALESFORCE\_ASSOCIATE\_CONTACT\_TO\_ACCOUNT**

Associates a contact with an account by updating the contact's AccountId field. Overwrites any existing AccountId on the contact. For broader contact field updates alongside the account association, use SALESFORCE\_UPDATE\_CONTACT instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                             | Description                                                                                                                    |
| --------------- | ------ | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `account_id`    | string |     ✅    | `"001XXXXXXXXXXXXXXX"`                              | The Salesforce ID of the account to associate the contact with.                                                                |
| `contact_id`    | string |     ✅    | `"003XXXXXXXXXXXXXXX"`                              | The Salesforce ID of the contact to associate with an account.                                                                 |
| `custom_fields` | object |          | `{"Account_Association_Source__c":"Manual Update"}` | Dictionary of custom field API names and their values to update on the contact. Custom field names typically end with '\_\_c'. |

***

### `Salesforce Clone Opportunity With Products`

Integration name: **SALESFORCE\_CLONE\_OPPORTUNITY\_WITH\_PRODUCTS**

Clones an opportunity and optionally its products (line items). Creates a new opportunity with the same field values and products as the original.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                    | Description                                                                                             |
| ---------------- | ------- | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------- |
| `new_name`       | string  |          | `"Q4 Renewal Opportunity"` | Name for the cloned opportunity. If not specified, will append 'Clone of' to original name.             |
| `close_date`     | string  |          | `"2025-12-31"`             | Close date for the cloned opportunity in YYYY-MM-DD format. If not specified, uses original close date. |
| `stage_name`     | string  |          | `"Prospecting"`            | Stage for the cloned opportunity. If not specified, uses original stage.                                |
| `clone_products` | boolean |          | —                          | Whether to clone the opportunity's products (line items). Set to false to clone only the opportunity.   |
| `opportunity_id` | string  |     ✅    | `"006XXXXXXXXXXXXXXX"`     | The ID of the opportunity to clone.                                                                     |

***

### `Salesforce Clone Record`

Integration name: **SALESFORCE\_CLONE\_RECORD**

Creates a copy of an existing Salesforce record by reading its data, removing system fields, and creating a new record. Optionally apply field updates to the clone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                               | Description                                                                                                                                                                       |
| --------------- | ------ | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `record_id`     | string |     ✅    | `"001XXXXXXXXXXXXXXX"`                | The ID of the record to clone.                                                                                                                                                    |
| `object_type`   | string |     ✅    | `"Account"`                           | The Salesforce object type to clone (e.g., Account, Contact, Lead, Opportunity).                                                                                                  |
| `field_updates` | string |          | `"{\"Name\": \"Clone of Original\"}"` | Optional field updates to apply to the cloned record as a JSON string. Use this to modify specific fields in the clone. Example: '{"Name": "Clone of Original", "Status": "New"}' |

***

### `Salesforce Close Or Abort Job`

Integration name: **SALESFORCE\_CLOSE\_OR\_ABORT\_JOB**

Tool to close or abort a Salesforce Bulk API v2 ingest job. Use when you need to finalize job processing by closing (state: UploadComplete) or cancel a job by aborting (state: Aborted). This is required for every ingest job - closing queues data for processing, while aborting cancels the job and deletes uploaded data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                | Description                                                                                                                                                                               |
| --------- | ------ | :------: | ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `state`   | string |     ✅    | `"UploadComplete"`     | The state to update the job to. 'UploadComplete' closes the job and queues uploaded data for processing. 'Aborted' cancels the job and deletes any uploaded data. This field is required. |
| `job_id`  | string |     ✅    | `"750dN00000BITXdQAP"` | The unique identifier of the Bulk API v2 ingest job to close or abort.                                                                                                                    |

***

### `Salesforce Complete Task`

Integration name: **SALESFORCE\_COMPLETE\_TASK**

Marks a task as completed with optional completion notes. This is a convenience action that updates the task status to 'Completed'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                                       | Description                                                                                                                             |
| ------------------ | ------ | :------: | ------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`          | string |     ✅    | `"00TXXXXXXXXXXXXXXX"`                                        | The Salesforce ID of the task to mark as completed.                                                                                     |
| `custom_fields`    | object |          | `{"Resolved__c":true,"Completion_Source__c":"Customer Call"}` | Dictionary of custom field API names and their values. Custom field names typically end with '\_\_c' (e.g., 'Completion\_Source\_\_c'). |
| `completion_notes` | string |          | `"Call completed successfully. Customer agreed to proceed."`  | Optional notes to add about the task completion. Will be appended to existing description.                                              |
