Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Salesforce

OAuth 2.0 crmsales

Connect this agent connector to let your agent:

  • Read CRM records — retrieve accounts, contacts, leads, opportunities, and cases by ID or search query
  • Create and update records — open leads, close opportunities, update deal stages, and edit contacts
  • Log activities — create tasks and events linked to any CRM record
  • Run SOQL queries — execute arbitrary Salesforce Object Query Language queries for custom data retrieval
  • Search across objects — find records by name, email, phone, or any field value

This connector uses OAuth 2.0. Scalekit acts as the OAuth client: it redirects your user to Salesforce, obtains an access token, and automatically refreshes it before it expires. Your agent code never handles tokens directly — you only pass a connectionName and a user identifier.

You supply your Salesforce Connected App credentials (Client ID + Secret) once per environment in the Scalekit dashboard.

Set up the 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.

  1. Set up auth redirects

    • In Scalekit dashboard, go to Agent AuthCreate Connection.

    • Find Salesforce from the list of providers and click Create.

    • Copy the redirect URI. It looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

      Copy redirect URI from Scalekit dashboard

    • 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.

      New Connected App form in Salesforce

    • Select the required OAuth scopes for your application.

  2. 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
  3. Add credentials in Scalekit

    • In Scalekit dashboard, go to Agent AuthConnections and open the connection you created.

    • Enter your credentials:

      Add credentials in Scalekit dashboard

    • Click Save.

Code examples

Make your first call

Once a user authorizes the connection, make a request to Salesforce through the Scalekit proxy. The example below retrieves the authenticated user’s profile — a useful sanity-check call.

import { ScalekitClient } from '@scalekit-sdk/node'
const connectionName = 'salesforce' // name set in Scalekit dashboard
const identifier = 'user_123' // your app's user ID
const scalekit = new ScalekitClient(
process.env.SCALEKIT_ENV_URL,
process.env.SCALEKIT_CLIENT_ID,
process.env.SCALEKIT_CLIENT_SECRET,
)
const actions = scalekit.actions
const result = await actions.request({
connectionName,
identifier,
method: 'GET',
path: '/chatter/users/me',
})
console.log(result)

Common workflows

Query records with SOQL

Retrieve this month’s open opportunities, sorted by deal size:

const result = await actions.request({
connectionName,
identifier,
method: 'GET',
path: '/query',
params: {
q: 'SELECT Id, Name, Amount, StageName, CloseDate FROM Opportunity WHERE CloseDate = THIS_MONTH ORDER BY Amount DESC LIMIT 10',
},
})
console.log(result.records)

Log a sales call and advance a lead

Find a lead by email, update its status, then log a completed task — all in one agent turn.

This workflow uses Scalekit’s tool calling API (execute_tool), which maps directly to the tool names in the tool list below.

// 1. Search for the lead
const searchResult = await actions.request({
connectionName,
identifier,
method: 'GET',
path: '/query',
params: { q: "SELECT Id, Status FROM Lead WHERE Email = 'jane@acme.com' LIMIT 1" },
})
const lead = searchResult.records[0]
// 2. Update the lead status
await actions.request({
connectionName,
identifier,
method: 'PATCH',
path: `/sobjects/Lead/${lead.Id}`,
body: { Status: 'Working - Contacted' },
})
// 3. Log a completed task linked to the lead
await actions.request({
connectionName,
identifier,
method: 'POST',
path: '/sobjects/Task',
body: {
WhoId: lead.Id,
Subject: 'Discovery call — follow up in 3 days',
Status: 'Completed',
ActivityDate: '2025-04-10',
},
})
salesforce_account_create Create a new Account in Salesforce. Supports standard fields 15 params

Create a new Account in Salesforce. Supports standard fields

Name Type Required Description
Name string required Account Name
AccountNumber string optional Account number for the organization
AnnualRevenue number optional Annual revenue
BillingCity string optional Billing city
BillingCountry string optional Billing country
BillingPostalCode string optional Billing postal code
BillingState string optional Billing state/province
BillingStreet string optional Billing street
Description string optional Description
Industry string optional Industry
NumberOfEmployees integer optional Number of employees
OwnerId string optional Record owner (User/Queue Id)
Phone string optional Main phone number
RecordTypeId string optional Record Type Id
Website string optional Website URL
salesforce_account_delete Delete an existing Account from Salesforce by account ID. This is a destructive operation that permanently removes the account record. 1 param

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 required ID of the account to delete
salesforce_account_get Retrieve details of a specific account from Salesforce by account ID. Returns account properties and associated data. 2 params

Retrieve details of a specific account from Salesforce by account ID. Returns account properties and associated data.

Name Type Required Description
account_id string required ID of the account to retrieve
fields string optional Comma-separated list of fields to include in the response
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. 45 params

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
account_id string required ID of the account to update
AccountNumber string optional Account number for the organization
AccountSource string optional Lead source for this account
AnnualRevenue number optional Annual revenue
BillingCity string optional Billing city
BillingCountry string optional Billing country
BillingGeocodeAccuracy string optional Billing geocode accuracy
BillingLatitude number optional Billing address latitude
BillingLongitude number optional Billing address longitude
BillingPostalCode string optional Billing postal code
BillingState string optional Billing state/province
BillingStreet string optional Billing street
CleanStatus string optional Data.com clean status
Description string optional Description
DunsNumber string optional D-U-N-S Number
Fax string optional Fax number
Industry string optional Industry
Jigsaw string optional Data.com key
JigsawCompanyId string optional Jigsaw company ID
NaicsCode string optional NAICS code
NaicsDesc string optional NAICS description
Name string optional Account Name
NumberOfEmployees integer optional Number of employees
OwnerId string optional Record owner (User/Queue Id)
Ownership string optional Ownership type
ParentId string optional Parent Account Id
Phone string optional Main phone number
Rating string optional Account rating
RecordTypeId string optional Record Type Id
ShippingCity string optional Shipping city
ShippingCountry string optional Shipping country
ShippingGeocodeAccuracy string optional Shipping geocode accuracy
ShippingLatitude number optional Shipping address latitude
ShippingLongitude number optional Shipping address longitude
ShippingPostalCode string optional Shipping postal code
ShippingState string optional Shipping state/province
ShippingStreet string optional Shipping street
Sic string optional SIC code
SicDesc string optional SIC description
Site string optional Account site or location
TickerSymbol string optional Stock ticker symbol
Tradestyle string optional Trade style name
Type string optional Account type
Website string optional Website URL
YearStarted string optional Year the company started
salesforce_accounts_list Retrieve a list of accounts from Salesforce using a pre-built SOQL query. Returns basic account information. 1 param

Retrieve a list of accounts from Salesforce using a pre-built SOQL query. Returns basic account information.

Name Type Required Description
limit number required Number of results to return per page
salesforce_chatter_comment_create Add a comment to a Salesforce Chatter post (feed element). 2 params

Add a comment to a Salesforce Chatter post (feed element).

Name Type Required Description
feed_element_id string required The ID of the Chatter post to comment on
text string required The text body of the comment
salesforce_chatter_comment_delete Delete a comment from a Salesforce Chatter post. 1 param

Delete a comment from a Salesforce Chatter post.

Name Type Required Description
comment_id string required The ID of the Chatter comment to delete
salesforce_chatter_comments_list List all comments on a Salesforce Chatter post (feed element). 3 params

List all comments on a Salesforce Chatter post (feed element).

Name Type Required Description
feed_element_id string required The ID of the Chatter post to list comments for
page string optional Page token for retrieving the next page of results
page_size number optional Number of comments to return per page (default: 25, max: 100)
salesforce_chatter_post_create Create a new post (feed element) on a Salesforce Chatter feed. Use 'me' as subject_id to post to the current user's feed. 4 params

Create a new post (feed element) on a Salesforce Chatter feed. Use 'me' as subject_id to post to the current user's feed.

Name Type Required Description
text string required The text body of the Chatter post
is_rich_text boolean optional If true, the text body will be treated as HTML rich text. Default is false (plain text).
message_segments array optional Advanced: provide raw Salesforce message segments array for full rich text control (bold, italic, links, mentions, etc.). When provided, overrides 'text' and 'is_rich_text'. Each segment must have a 'type' field (Text, MarkupBegin, MarkupEnd, Mention, Link). MarkupBegin/End use markupType: Bold, Italic, Underline, Paragraph, etc.
subject_id string optional The ID of the subject (user, record, or group) to post to. Use 'me' for the current user's feed.
salesforce_chatter_post_delete Delete a Salesforce Chatter post (feed element) by its ID. 1 param

Delete a Salesforce Chatter post (feed element) by its ID.

Name Type Required Description
feed_element_id string required The ID of the Chatter post to delete
salesforce_chatter_post_get Retrieve a specific Salesforce Chatter post (feed element) by its ID. 1 param

Retrieve a specific Salesforce Chatter post (feed element) by its ID.

Name Type Required Description
feed_element_id string required The ID of the Chatter feed element (post) to retrieve.
salesforce_chatter_user_feed_list Retrieve feed elements (posts) from a Salesforce user's Chatter news feed. Use 'me' as the user ID to get the current user's feed. 4 params

Retrieve feed elements (posts) from a Salesforce user's Chatter news feed. Use 'me' as the user ID to get the current user's feed.

Name Type Required Description
user_id string required The ID of the user whose Chatter feed to retrieve. Use 'me' for the current user.
page string optional Page token for retrieving the next page of results. Use the value from the previous response's nextPageToken.
page_size number optional Number of feed elements to return per page (default: 25, max: 100)
sort_param string optional Sort order for feed elements. Options: LastModifiedDateDesc (default), CreatedDateDesc, MostRecentActivity
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. 1 param

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 required JSON string containing composite request with multiple sub-requests
salesforce_contact_create Create a new contact in Salesforce. Allows setting contact properties like name, email, phone, account association, and other standard fields. 15 params

Create a new contact in Salesforce. Allows setting contact properties like name, email, phone, account association, and other standard fields.

Name Type Required Description
LastName string required Last name of the contact (required)
AccountId string optional Salesforce Account Id associated with this contact
Department string optional Department of the contact
Description string optional Free-form description
Email string optional Email address of the contact
FirstName string optional First name of the contact
LeadSource string optional Lead source for the contact
MailingCity string optional Mailing city
MailingCountry string optional Mailing country
MailingPostalCode string optional Mailing postal code
MailingState string optional Mailing state/province
MailingStreet string optional Mailing street
MobilePhone string optional Mobile phone of the contact
Phone string optional Phone number of the contact
Title string optional Job title of the contact
salesforce_contact_get Retrieve details of a specific contact from Salesforce by contact ID. Returns contact properties and associated data. 2 params

Retrieve details of a specific contact from Salesforce by contact ID. Returns contact properties and associated data.

Name Type Required Description
contact_id string required ID of the contact to retrieve
fields string optional Comma-separated list of fields to include in the response
salesforce_dashboard_clone Clone an existing dashboard in Salesforce. Creates a copy of the source dashboard in the specified folder. 3 params

Clone an existing dashboard in Salesforce. Creates a copy of the source dashboard in the specified folder.

Name Type Required Description
folderId string required Folder to place the cloned dashboard
source_dashboard_id string required ID of the dashboard to clone
name string optional Name for the cloned dashboard
salesforce_dashboard_get Retrieve dashboard data and results from Salesforce by dashboard ID. Returns dashboard component data and results from all underlying reports. 4 params

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 required ID of the dashboard to retrieve
filter1 string optional First dashboard filter value (DashboardFilterOption ID)
filter2 string optional Second dashboard filter value (DashboardFilterOption ID)
filter3 string optional Third dashboard filter value (DashboardFilterOption ID)
salesforce_dashboard_metadata_get Retrieve metadata for a Salesforce dashboard, including dashboard components, filters, layout, and the running user. 1 param

Retrieve metadata for a Salesforce dashboard, including dashboard components, filters, layout, and the running user.

Name Type Required Description
dashboard_id string required The unique ID of the Salesforce dashboard
salesforce_dashboard_update Update a Salesforce dashboard. Supports renaming, moving to a folder, and saving sticky filters. Use GET dashboard first to find filter IDs. 4 params

Update a Salesforce dashboard. Supports renaming, moving to a folder, and saving sticky filters. Use GET dashboard first to find filter IDs.

Name Type Required Description
dashboard_id string required ID of the dashboard to update
filters array optional Dashboard filters to save (array)
folderId string optional Folder to move the dashboard to
name string optional New name for the dashboard
salesforce_global_describe Retrieve metadata about all available SObjects in the Salesforce organization. Returns list of all objects with basic information. 0 params

Retrieve metadata about all available SObjects in the Salesforce organization. Returns list of all objects with basic information.

salesforce_limits_get Retrieve organization limits information from Salesforce. Returns API usage limits, data storage limits, and other organizational constraints. 0 params

Retrieve organization limits information from Salesforce. Returns API usage limits, data storage limits, and other organizational constraints.

salesforce_object_describe Retrieve detailed metadata about a specific SObject in Salesforce. Returns fields, relationships, and other object metadata. 1 param

Retrieve detailed metadata about a specific SObject in Salesforce. Returns fields, relationships, and other object metadata.

Name Type Required Description
sobject string required SObject API name to describe
salesforce_opportunities_list Retrieve a list of opportunities from Salesforce using a pre-built SOQL query. Returns basic opportunity information. 1 param

Retrieve a list of opportunities from Salesforce using a pre-built SOQL query. Returns basic opportunity information.

Name Type Required Description
limit number optional Number of results to return per page
salesforce_opportunity_create Create a new opportunity in Salesforce. Allows setting opportunity properties like name, amount, stage, close date, and account association. 16 params

Create a new opportunity in Salesforce. Allows setting opportunity properties like name, amount, stage, close date, and account association.

Name Type Required Description
CloseDate string required Expected close date (YYYY-MM-DD, required)
Name string required Opportunity name (required)
StageName string required Current sales stage (required)
AccountId string optional Associated Account Id
Amount number optional Opportunity amount
CampaignId string optional Related Campaign Id
Custom_Field__c string optional Example custom field (replace with your org’s custom field API name)
Description string optional Opportunity description
ForecastCategoryName string optional Forecast category name
LeadSource string optional Lead source
NextStep string optional Next step in the sales process
OwnerId string optional Record owner (User/Queue Id)
PricebookId string optional Associated Price Book Id
Probability number optional Probability percentage (0–100)
RecordTypeId string optional Record Type Id for Opportunity
Type string optional Opportunity type
salesforce_opportunity_get Retrieve details of a specific opportunity from Salesforce by opportunity ID. Returns opportunity properties and associated data. 2 params

Retrieve details of a specific opportunity from Salesforce by opportunity ID. Returns opportunity properties and associated data.

Name Type Required Description
opportunity_id string required ID of the opportunity to retrieve
fields string optional Comma-separated list of fields to include in the response
salesforce_opportunity_update Update an existing opportunity in Salesforce by opportunity ID. Allows updating opportunity properties like name, amount, stage, and close date. 16 params

Update an existing opportunity in Salesforce by opportunity ID. Allows updating opportunity properties like name, amount, stage, and close date.

Name Type Required Description
opportunity_id string required ID of the opportunity to update
AccountId string optional Associated Account Id
Amount number optional Opportunity amount
CampaignId string optional Related Campaign Id
CloseDate string optional Expected close date (YYYY-MM-DD)
Description string optional Opportunity description
ForecastCategoryName string optional Forecast category name
LeadSource string optional Lead source
Name string optional Opportunity name
NextStep string optional Next step in the sales process
OwnerId string optional Record owner (User/Queue Id)
Pricebook2Id string optional Associated Price Book Id
Probability number optional Probability percentage (0–100)
RecordTypeId string optional Record Type Id for Opportunity
StageName string optional Current sales stage
Type string optional Opportunity type
salesforce_query_next_page Fetch the next page of results from a previous SOQL query. Use the nextRecordsUrl returned when a query response has done=false. 1 param

Fetch the next page of results from a previous SOQL query. Use the nextRecordsUrl returned when a query response has done=false.

Name Type Required Description
cursor string required The record cursor from a previous SOQL query response. Extract the cursor ID from the nextRecordsUrl (e.g. '01gxx0000002GJm-2000' from '/services/data/v66.0/query/01gxx0000002GJm-2000')
salesforce_query_soql Execute SOQL queries against Salesforce data. Supports complex queries with joins, filters, and aggregations. 1 param

Execute SOQL queries against Salesforce data. Supports complex queries with joins, filters, and aggregations.

Name Type Required Description
query string required SOQL query string to execute
salesforce_report_create Create a new report in Salesforce using the Analytics API. Minimal verified version with only confirmed working fields. 13 params

Create a new report in Salesforce using the Analytics API. Minimal verified version with only confirmed working fields.

Name Type Required Description
name string required Report name
reportType string required The report type's API name from your Salesforce org (e.g. Opportunity, AccountList). Find valid values in Setup > Report Types
aggregates string optional Aggregates configuration (JSON array)
chart string optional Chart configuration (JSON object)
description string optional Report description
detailColumns string optional Detail columns (JSON array of field names)
folderId string optional Folder ID where report will be stored
groupingsAcross string optional Column groupings (JSON array)
groupingsDown string optional Row groupings (JSON array)
reportBooleanFilter string optional Filter logic
reportFilters string optional Report filters (JSON array)
reportFormat string optional Report format type. TABULAR (default, no groupings), SUMMARY (supports row groupings), or MATRIX (supports row and column groupings)
scope string optional Report scope. organization (all records) or team (current user's team records)
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. 1 param

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 required ID of the report to delete
salesforce_report_metadata_get Retrieve report, report type, and related metadata for a Salesforce report. Returns information about report structure, fields, groupings, and configuration. 1 param

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 required The unique ID of the Salesforce report
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. 13 params

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
report_id string required ID of the report to update
aggregates string optional Aggregates configuration (JSON array)
chart string optional Chart configuration (JSON object)
description string optional Updated report description
detailColumns string optional Detail columns (JSON array of field names)
folderId string optional Move report to different folder
groupingsAcross string optional Column groupings (JSON array)
groupingsDown string optional Row groupings (JSON array)
name string optional Updated report name
reportBooleanFilter string optional Filter logic
reportFilters string optional Report filters (JSON array)
reportFormat string optional Report format type. TABULAR (default, no groupings), SUMMARY (supports row groupings), or MATRIX (supports row and column groupings)
scope string optional Report scope. organization (all records) or team (current user's team records)
salesforce_search_parameterized Execute parameterized searches against Salesforce data. Provides simplified search interface with predefined parameters. 3 params

Execute parameterized searches against Salesforce data. Provides simplified search interface with predefined parameters.

Name Type Required Description
search_text string required Text to search for
sobject string required SObject type to search in
fields string optional Comma-separated list of fields to return
salesforce_search_sosl Execute SOSL searches against Salesforce data. Performs full-text search across multiple objects and fields. 1 param

Execute SOSL searches against Salesforce data. Performs full-text search across multiple objects and fields.

Name Type Required Description
search_query string required SOSL search query string to execute
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. 2 params

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 required Object containing field names and values to set on the new record
sobject_type string required The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c)
salesforce_sobject_delete Delete a record from any Salesforce SObject type by ID. This is a destructive operation that permanently removes the record. 2 params

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 required ID of the record to delete
sobject_type string required The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c)
salesforce_sobject_get Retrieve a record from any Salesforce SObject type by ID. Optionally specify which fields to return. 3 params

Retrieve a record from any Salesforce SObject type by ID. Optionally specify which fields to return.

Name Type Required Description
record_id string required ID of the record to retrieve
sobject_type string required The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c)
fields string optional Comma-separated list of fields to include in the response
salesforce_sobject_update Update an existing record for any Salesforce SObject type by ID. Only the fields provided will be updated. 3 params

Update an existing record for any Salesforce SObject type by ID. Only the fields provided will be updated.

Name Type Required Description
fields object required Object containing field names and values to update on the record
record_id string required ID of the record to update
sobject_type string required The Salesforce SObject API name (e.g., Account, Contact, Lead, CustomObject__c)
salesforce_soql_execute Execute custom SOQL queries against Salesforce data. Supports complex queries with joins, filters, aggregations, and custom field selection. 1 param

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 required SOQL query string to execute
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. 1 param

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 required SOQL query string to execute against Tooling API
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. 2 params

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 required Object containing field names and values to set on the new metadata record. Supports nested structures for complex metadata types.
sobject_type string required The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject)
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. 2 params

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 required ID of the metadata record to delete
sobject_type string required The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject)
salesforce_tooling_sobject_describe Retrieve detailed metadata schema for a specific Tooling API object type. Returns fields, relationships, and other metadata properties. 1 param

Retrieve detailed metadata schema for a specific Tooling API object type. Returns fields, relationships, and other metadata properties.

Name Type Required Description
sobject string required Tooling API object name to describe
salesforce_tooling_sobject_get Retrieve a metadata record from any Salesforce Tooling API object type by ID. Optionally specify which fields to return. 3 params

Retrieve a metadata record from any Salesforce Tooling API object type by ID. Optionally specify which fields to return.

Name Type Required Description
record_id string required ID of the metadata record to retrieve
sobject_type string required The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject)
fields string optional Comma-separated list of fields to include in the response
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. 3 params

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 required Object containing field names and values to update on the metadata record. Supports nested structures for complex metadata types.
record_id string required ID of the metadata record to update
sobject_type string required The Tooling API object name (e.g., ApexClass, ApexTrigger, CustomObject)