Salesforce
Connect to Salesforce CRM. Manage leads, opportunities, accounts, and customer relationships
Connect to Salesforce CRM. Manage leads, opportunities, accounts, and customer relationships
Supports authentication: OAuth 2.0
Set up the agent connector
Section titled “Set up the agent connector”Register your Scalekit environment with the Salesforce connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. You’ll need your app credentials from the Salesforce Developer Console.
-
Set up auth redirects
-
In Scalekit dashboard, go to Agent Auth → Create Connection.
-
Find Salesforce from the list of providers and click Create.
-
Click Use your own credentials and copy the redirect URI. It looks like
https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback. -
Log in to Salesforce and go to Setup.
-
In the Quick Find box, search for App Manager and click to open it.
-
Click New Connected App.
-
Enter a name for your app, check the Enable OAuth Settings checkbox, and paste the redirect URI in the Callback URL field.
-
Select the required OAuth scopes for your application.
-
-
Get client credentials
- In your Connected App settings, note the following:
- Consumer Key — listed under OAuth Settings
- Consumer Secret — click Reveal to view and copy
- In your Connected App settings, note the following:
-
Add credentials in Scalekit
-
In Scalekit dashboard, go to Agent Auth → Connections and open the connection you created.
-
Enter your credentials:
- Client ID (Consumer Key from above)
- Client Secret (Consumer Secret from above)
- Permissions (scopes — see Salesforce OAuth Scopes documentation)
-
Click Save.
-
Tool list
Section titled “Tool list”salesforce_account_create
Section titled “salesforce_account_create”Create a new Account in Salesforce. Supports standard fields
| Name | Type | Required | Description |
|---|---|---|---|
AccountNumber | string | No | Account number for the organization |
AnnualRevenue | number | No | Annual revenue |
BillingCity | string | No | Billing city |
BillingCountry | string | No | Billing country |
BillingPostalCode | string | No | Billing postal code |
BillingState | string | No | Billing state/province |
BillingStreet | string | No | Billing street |
Description | string | No | Description |
Industry | string | No | Industry |
Name | string | Yes | Account Name |
NumberOfEmployees | integer | No | Number of employees |
OwnerId | string | No | Record owner (User/Queue Id) |
Phone | string | No | Main phone number |
RecordTypeId | string | No | Record Type Id |
Website | string | No | Website URL |
salesforce_account_delete
Section titled “salesforce_account_delete”Delete an existing Account from Salesforce by account ID. This is a destructive operation that permanently removes the account record.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Yes | ID of the account to delete |
salesforce_account_get
Section titled “salesforce_account_get”Retrieve details of a specific account from Salesforce by account ID. Returns account properties and associated data.
| Name | Type | Required | Description |
|---|---|---|---|
account_id | string | Yes | ID of the account to retrieve |
fields | string | No | Comma-separated list of fields to include in the response |
salesforce_account_update
Section titled “salesforce_account_update”Update an existing Account in Salesforce by account ID. Allows updating account properties like name, phone, website, industry, billing information, and more.
| Name | Type | Required | Description |
|---|---|---|---|
AccountNumber | string | No | Account number for the organization |
AccountSource | string | No | Lead source for this account |
AnnualRevenue | number | No | Annual revenue |
BillingCity | string | No | Billing city |
BillingCountry | string | No | Billing country |
BillingGeocodeAccuracy | string | No | Billing geocode accuracy |
BillingLatitude | number | No | Billing address latitude |
BillingLongitude | number | No | Billing address longitude |
BillingPostalCode | string | No | Billing postal code |
BillingState | string | No | Billing state/province |
BillingStreet | string | No | Billing street |
CleanStatus | string | No | Data.com clean status |
Description | string | No | Description |
DunsNumber | string | No | D-U-N-S Number |
Fax | string | No | Fax number |
Industry | string | No | Industry |
Jigsaw | string | No | Data.com key |
JigsawCompanyId | string | No | Jigsaw company ID |
NaicsCode | string | No | NAICS code |
NaicsDesc | string | No | NAICS description |
Name | string | No | Account Name |
NumberOfEmployees | integer | No | Number of employees |
OwnerId | string | No | Record owner (User/Queue Id) |
Ownership | string | No | Ownership type |
ParentId | string | No | Parent Account Id |
Phone | string | No | Main phone number |
Rating | string | No | Account rating |
RecordTypeId | string | No | Record Type Id |
ShippingCity | string | No | Shipping city |
ShippingCountry | string | No | Shipping country |
ShippingGeocodeAccuracy | string | No | Shipping geocode accuracy |
ShippingLatitude | number | No | Shipping address latitude |
ShippingLongitude | number | No | Shipping address longitude |
ShippingPostalCode | string | No | Shipping postal code |
ShippingState | string | No | Shipping state/province |
ShippingStreet | string | No | Shipping street |
Sic | string | No | SIC code |
SicDesc | string | No | SIC description |
Site | string | No | Account site or location |
TickerSymbol | string | No | Stock ticker symbol |
Tradestyle | string | No | Trade style name |
Type | string | No | Account type |
Website | string | No | Website URL |
YearStarted | string | No | Year the company started |
account_id | string | Yes | ID of the account to update |
salesforce_accounts_list
Section titled “salesforce_accounts_list”Retrieve a list of accounts from Salesforce using a pre-built SOQL query. Returns basic account information.
| Name | Type | Required | Description |
|---|---|---|---|
limit | number | Yes | Number of results to return per page |
salesforce_composite
Section titled “salesforce_composite”Execute multiple Salesforce REST API requests in a single call using the Composite API. Allows for efficient batch operations and related data retrieval.
| Name | Type | Required | Description |
|---|---|---|---|
composite_request | string | Yes | JSON string containing composite request with multiple sub-requests |
salesforce_contact_create
Section titled “salesforce_contact_create”Create a new contact in Salesforce. Allows setting contact properties like name, email, phone, account association, and other standard fields.
| Name | Type | Required | Description |
|---|---|---|---|
AccountId | string | No | Salesforce Account Id associated with this contact |
Department | string | No | Department of the contact |
Description | string | No | Free-form description |
Email | string | No | Email address of the contact |
FirstName | string | No | First name of the contact |
LastName | string | Yes | Last name of the contact (required) |
LeadSource | string | No | Lead source for the contact |
MailingCity | string | No | Mailing city |
MailingCountry | string | No | Mailing country |
MailingPostalCode | string | No | Mailing postal code |
MailingState | string | No | Mailing state/province |
MailingStreet | string | No | Mailing street |
MobilePhone | string | No | Mobile phone of the contact |
Phone | string | No | Phone number of the contact |
Title | string | No | Job title of the contact |
salesforce_contact_get
Section titled “salesforce_contact_get”Retrieve details of a specific contact from Salesforce by contact ID. Returns contact properties and associated data.
| Name | Type | Required | Description |
|---|---|---|---|
contact_id | string | Yes | ID of the contact to retrieve |
fields | string | No | Comma-separated list of fields to include in the response |
salesforce_dashboard_clone
Section titled “salesforce_dashboard_clone”Clone an existing dashboard in Salesforce. Creates a copy of the source dashboard in the specified folder.
| Name | Type | Required | Description |
|---|---|---|---|
folderId | string | No | Folder to place the cloned dashboard |
source_dashboard_id | string | Yes | ID of the dashboard to clone |
salesforce_dashboard_get
Section titled “salesforce_dashboard_get”Retrieve dashboard data and results from Salesforce by dashboard ID. Returns dashboard component data and results from all underlying reports.
| Name | Type | Required | Description |
|---|---|---|---|
dashboard_id | string | Yes | ID of the dashboard to retrieve |
filter1 | string | No | First dashboard filter value (DashboardFilterOption ID) |
filter2 | string | No | Second dashboard filter value (DashboardFilterOption ID) |
filter3 | string | No | Third dashboard filter value (DashboardFilterOption ID) |
salesforce_dashboard_metadata_get
Section titled “salesforce_dashboard_metadata_get”Retrieve metadata for a Salesforce dashboard, including dashboard components, filters, layout, and the running user.
| Name | Type | Required | Description |
|---|---|---|---|
dashboard_id | string | Yes | The unique ID of the Salesforce dashboard |
salesforce_dashboard_update
Section titled “salesforce_dashboard_update”Save dashboard filters (sticky filters) in Salesforce. Use GET dashboard first to find filter IDs.
| Name | Type | Required | Description |
|---|---|---|---|
dashboard_id | string | Yes | ID of the dashboard to update |
filters | array<unknown> | No | Dashboard filters to save (array) |
salesforce_global_describe
Section titled “salesforce_global_describe”Retrieve metadata about all available SObjects in the Salesforce organization. Returns list of all objects with basic information.
salesforce_limits_get
Section titled “salesforce_limits_get”Retrieve organization limits information from Salesforce. Returns API usage limits, data storage limits, and other organizational constraints.
salesforce_object_describe
Section titled “salesforce_object_describe”Retrieve detailed metadata about a specific SObject in Salesforce. Returns fields, relationships, and other object metadata.
| Name | Type | Required | Description |
|---|---|---|---|
sobject | string | Yes | SObject API name to describe |
salesforce_opportunities_list
Section titled “salesforce_opportunities_list”Retrieve a list of opportunities from Salesforce using a pre-built SOQL query. Returns basic opportunity information.
| Name | Type | Required | Description |
|---|---|---|---|
limit | number | No | Number of results to return per page |
salesforce_opportunity_create
Section titled “salesforce_opportunity_create”Create a new opportunity in Salesforce. Allows setting opportunity properties like name, amount, stage, close date, and account association.
| Name | Type | Required | Description |
|---|---|---|---|
AccountId | string | No | Associated Account Id |
Amount | number | No | Opportunity amount |
CampaignId | string | No | Related Campaign Id |
CloseDate | string | Yes | Expected close date (YYYY-MM-DD, required) |
Custom_Field__c | string | No | Example custom field (replace with your org’s custom field API name) |
Description | string | No | Opportunity description |
ForecastCategoryName | string | No | Forecast category name |
LeadSource | string | No | Lead source |
Name | string | Yes | Opportunity name (required) |
NextStep | string | No | Next step in the sales process |
OwnerId | string | No | Record owner (User/Queue Id) |
PricebookId | string | No | Associated Price Book Id |
Probability | number | No | Probability percentage (0–100) |
RecordTypeId | string | No | Record Type Id for Opportunity |
StageName | string | Yes | Current sales stage (required) |
Type | string | No | Opportunity type |
salesforce_opportunity_get
Section titled “salesforce_opportunity_get”Retrieve details of a specific opportunity from Salesforce by opportunity ID. Returns opportunity properties and associated data.
| Name | Type | Required | Description |
|---|---|---|---|
fields | string | No | Comma-separated list of fields to include in the response |
opportunity_id | string | Yes | ID of the opportunity to retrieve |
salesforce_opportunity_update
Section titled “salesforce_opportunity_update”Update an existing opportunity in Salesforce by opportunity ID. Allows updating opportunity properties like name, amount, stage, and close date.
| Name | Type | Required | Description |
|---|---|---|---|
AccountId | string | No | Associated Account Id |
Amount | number | No | Opportunity amount |
CampaignId | string | No | Related Campaign Id |
CloseDate | string | No | Expected close date (YYYY-MM-DD) |
Description | string | No | Opportunity description |
ForecastCategoryName | string | No | Forecast category name |
LeadSource | string | No | Lead source |
Name | string | No | Opportunity name |
NextStep | string | No | Next step in the sales process |
OwnerId | string | No | Record owner (User/Queue Id) |
Pricebook2Id | string | No | Associated Price Book Id |
Probability | number | No | Probability percentage (0–100) |
RecordTypeId | string | No | Record Type Id for Opportunity |
StageName | string | No | Current sales stage |
Type | string | No | Opportunity type |
opportunity_id | string | Yes | ID of the opportunity to update |
salesforce_query_soql
Section titled “salesforce_query_soql”Execute SOQL queries against Salesforce data. Supports complex queries with joins, filters, and aggregations.
| Name | Type | Required | Description |
|---|---|---|---|
query | string | Yes | SOQL query string to execute |
salesforce_report_create
Section titled “salesforce_report_create”Create a new report in Salesforce using the Analytics API. Minimal verified version with only confirmed working fields.
| Name | Type | Required | Description |
|---|---|---|---|
aggregates | string | No | Aggregates configuration (JSON array) |
chart | string | No | Chart configuration (JSON object) |
description | string | No | Report description |
detailColumns | string | No | Detail columns (JSON array of field names) |
folderId | string | No | Folder ID where report will be stored |
groupingsAcross | string | No | Column groupings (JSON array) |
groupingsDown | string | No | Row groupings (JSON array) |
name | string | Yes | Report name |
reportBooleanFilter | string | No | Filter logic |
reportFilters | string | No | Report filters (JSON array) |
reportType | string | Yes | Report type - object name (e.g., Account, Opportunity, Contact, Lead) |
salesforce_report_delete
Section titled “salesforce_report_delete”Delete an existing report from Salesforce by report ID. This is a destructive operation that permanently removes the report and cannot be undone.
| Name | Type | Required | Description |
|---|---|---|---|
report_id | string | Yes | ID of the report to delete |
salesforce_report_metadata_get
Section titled “salesforce_report_metadata_get”Retrieve report, report type, and related metadata for a Salesforce report. Returns information about report structure, fields, groupings, and configuration.
| Name | Type | Required | Description |
|---|---|---|---|
report_id | string | Yes | The unique ID of the Salesforce report |
salesforce_report_update
Section titled “salesforce_report_update”Update an existing report in Salesforce by report ID. Minimal verified version with only confirmed working fields. Only updates fields that are provided.
| Name | Type | Required | Description |
|---|---|---|---|
aggregates | string | No | Aggregates configuration (JSON array) |
chart | string | No | Chart configuration (JSON object) |
description | string | No | Updated report description |
detailColumns | string | No | Detail columns (JSON array of field names) |
folderId | string | No | Move report to different folder |
groupingsAcross | string | No | Column groupings (JSON array) |
groupingsDown | string | No | Row groupings (JSON array) |
name | string | No | Updated report name |
reportBooleanFilter | string | No | Filter logic |
reportFilters | string | No | Report filters (JSON array) |
report_id | string | Yes | ID of the report to update |
salesforce_search_parameterized
Section titled “salesforce_search_parameterized”Execute parameterized searches against Salesforce data. Provides simplified search interface with predefined parameters.
| Name | Type | Required | Description |
|---|---|---|---|
fields | string | No | Comma-separated list of fields to return |
search_text | string | Yes | Text to search for |
sobject | string | Yes | SObject type to search in |
salesforce_search_sosl
Section titled “salesforce_search_sosl”Execute SOSL searches against Salesforce data. Performs full-text search across multiple objects and fields.
| Name | Type | Required | Description |
|---|---|---|---|
search_query | string | Yes | SOSL search query string to execute |
salesforce_sobject_create
Section titled “salesforce_sobject_create”Create a new record for any Salesforce SObject type (Account, Contact, Lead, Opportunity, custom objects, etc.). Provide the object type and fields as a dynamic object.
| Name | Type | Required | Description |
|---|---|---|---|
fields | object | Yes | Object containing field names and values to set on the new record |
sobject_type | string | Yes | The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c) |
salesforce_sobject_delete
Section titled “salesforce_sobject_delete”Delete a record from any Salesforce SObject type by ID. This is a destructive operation that permanently removes the record.
| Name | Type | Required | Description |
|---|---|---|---|
record_id | string | Yes | ID of the record to delete |
sobject_type | string | Yes | The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c) |
salesforce_sobject_get
Section titled “salesforce_sobject_get”Retrieve a record from any Salesforce SObject type by ID. Optionally specify which fields to return.
| Name | Type | Required | Description |
|---|---|---|---|
fields | string | No | Comma-separated list of fields to include in the response |
record_id | string | Yes | ID of the record to retrieve |
sobject_type | string | Yes | The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c) |
salesforce_sobject_update
Section titled “salesforce_sobject_update”Update an existing record for any Salesforce SObject type by ID. Only the fields provided will be updated.
| Name | Type | Required | Description |
|---|---|---|---|
fields | object | Yes | Object containing field names and values to update on the record |
record_id | string | Yes | ID of the record to update |
sobject_type | string | Yes | The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c) |
salesforce_soql_execute
Section titled “salesforce_soql_execute”Execute custom SOQL queries against Salesforce data. Supports complex queries with joins, filters, aggregations, and custom field selection.
| Name | Type | Required | Description |
|---|---|---|---|
soql_query | string | Yes | SOQL query string to execute |
salesforce_tooling_query_execute
Section titled “salesforce_tooling_query_execute”Execute SOQL queries against Salesforce Tooling API to access metadata objects like ApexClass, ApexTrigger, CustomObject, and development metadata. Use this for querying metadata rather than data objects.
| Name | Type | Required | Description |
|---|---|---|---|
soql_query | string | Yes | SOQL query string to execute against Tooling API |
salesforce_tooling_sobject_create
Section titled “salesforce_tooling_sobject_create”Create a new metadata record for any Salesforce Tooling API object type (ApexClass, ApexTrigger, CustomField, etc.). Supports both simple and nested field structures. For CustomField, use FullName and Metadata properties.
| Name | Type | Required | Description |
|---|---|---|---|
fields | object | Yes | Object containing field names and values to set on the new metadata record. Supports nested structures for complex metadata types. |
sobject_type | string | Yes | The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject) |
salesforce_tooling_sobject_delete
Section titled “salesforce_tooling_sobject_delete”Delete a metadata record from any Salesforce Tooling API object type by ID. This is a destructive operation that permanently removes the metadata.
| Name | Type | Required | Description |
|---|---|---|---|
record_id | string | Yes | ID of the metadata record to delete |
sobject_type | string | Yes | The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject) |
salesforce_tooling_sobject_describe
Section titled “salesforce_tooling_sobject_describe”Retrieve detailed metadata schema for a specific Tooling API object type. Returns fields, relationships, and other metadata properties.
| Name | Type | Required | Description |
|---|---|---|---|
sobject | string | Yes | Tooling API object name to describe |
salesforce_tooling_sobject_get
Section titled “salesforce_tooling_sobject_get”Retrieve a metadata record from any Salesforce Tooling API object type by ID. Optionally specify which fields to return.
| Name | Type | Required | Description |
|---|---|---|---|
fields | string | No | Comma-separated list of fields to include in the response |
record_id | string | Yes | ID of the metadata record to retrieve |
sobject_type | string | Yes | The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject) |
salesforce_tooling_sobject_update
Section titled “salesforce_tooling_sobject_update”Update an existing metadata record for any Salesforce Tooling API object type by ID. Supports both simple and nested field structures. Only the fields provided will be updated.
| Name | Type | Required | Description |
|---|---|---|---|
fields | object | Yes | Object containing field names and values to update on the metadata record. Supports nested structures for complex metadata types. |
record_id | string | Yes | ID of the metadata record to update |
sobject_type | string | Yes | The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject) |