CRM
Salesforce
API integration
Ship CRM features without building the integration. Full Salesforce API access via Proxy, normalized data through Unified APIs, and 230+ MCP-ready tools for AI agents — all extensible to your exact use case.
Talk to usUse Cases
Why integrate with Salesforce
Common scenarios for SaaS companies building Salesforce integrations for their customers.
Log product activity to the Salesforce timeline automatically
SaaS companies push in-app events — emails sent, calls made, feature usage — as Engagements, Tasks, or Notes on the relevant Contact or Account in Salesforce. This keeps sales reps informed without switching tabs, and it's one of the most requested integrations by RevOps teams.
Enrich Salesforce records with product telemetry via custom fields
Push SaaS-specific data like health scores, subscription tiers, or last login dates into custom Fields on Salesforce Accounts or Contacts. This lets sales and CS teams segment, prioritize, and act on product signals directly inside their CRM without manual data entry.
Sync leads and contacts bidirectionally to keep systems in lockstep
When a new user signs up in your product or a lead is captured externally, search Salesforce for an existing Contact or Lead and create one if it doesn't exist — and vice versa. Continuous bidirectional sync eliminates duplicate records and ensures both systems reflect the latest state.
Automate opportunity and pipeline updates from external triggers
When a contract is signed, a quote is approved, or a self-serve user upgrades, automatically create or update an Opportunity and move its Stage in Salesforce. This removes manual deal updates and gives sales leadership accurate, real-time pipeline data for forecasting.
Surface Salesforce context inside your product's UI
Pull Account, Opportunity, and Contact data from Salesforce into your app so your end users — whether they're support agents, CSMs, or marketers — can see deal status, ownership, and relationship history without leaving your product.
What You Can Build
Ship these features with Truto + Salesforce
Concrete product features your team can ship faster by leveraging Truto’s Salesforce integration instead of building from scratch.
Visual custom field mapper
Use the Fields resource to read all standard and custom fields from your users' Salesforce instances, then present a drag-and-drop UI that lets them map your product's data points to the exact Salesforce fields their RevOps team has defined.
Automated activity logger
Write every meaningful in-app action — calls, emails, meetings, survey completions — as an Engagement or Task on the correct Salesforce Contact or Account, complete with the right owner assignment via the Users resource.
Two-way contact and account sync
Keep Contacts and Accounts continuously synchronized between your product and Salesforce using the Unified CRM API, handling creates, updates, and deduplication so both systems always agree.
Pipeline automation engine
Automatically create Opportunities, update Stages, and adjust deal amounts in Salesforce when key events happen in your product — like a contract being signed or a usage threshold being crossed.
Intelligent lead creation with duplicate detection
Use the Unified Search API to check for existing Leads or Contacts before creating new records, preventing duplicates and respecting the data hygiene rules that Salesforce admins enforce.
Account-level engagement feed
Pull Engagements, Notes, and Tasks from a Salesforce Account into your product's interface so your users can see the full customer interaction history alongside your own product data.
SuperAI
Salesforce AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_salesforce_accounts
List Salesforce accounts by executing a SOQL query that selects standard account fields. Returns: attributes, Id, Name, accountid.
get_single_salesforce_account_by_id
Get a single Salesforce account by id. Returns: attributes, Id, Name, accountid. Required: id.
update_a_salesforce_account_by_id
Update a Salesforce Account by id. Field values in the request body replace existing values on the record. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_account_by_id
Delete a Salesforce account by id. Returns an empty 204 response on success. Required: id.
create_a_salesforce_account
Create a new Salesforce Account record by supplying field values in the request body. Returns: id, success, errors.
salesforce_accounts_describe
Get complete metadata for the Account sObject in Salesforce, including fields, child relationships, and URLs. Returns: name, label, keyPrefix, labelPlural, custom, createable, updateable, deletable, queryable, searchable, mergeable, layoutable, activateable, compactLayoutable, customSetting, deepCloneable, deprecatedAndHidden, feedEnabled, hasSubtypes, isSubtype, mruEnabled, replicateable,…
salesforce_accounts_merge
Merge duplicate Salesforce account records via the SOAP API merge() call by sending a raw XML envelope. Returns: soapenv:Envelope. Required: body.
salesforce_accounts_batch_delete
Delete multiple Salesforce account records in a single request via the sObject Collections resource. Returns an empty 204 response on success. Required: ids.
list_all_salesforce_contacts
List Salesforce contacts by executing a SOQL query that selects all standard Contact fields, with optional custom fields and WHERE clause filtering. Returns: attributes, Id, Name. Optional: where, include_custom_fields.
get_single_salesforce_contact_by_id
Get a single Salesforce contact by id. Returns the contact record including Id, Name, and attributes (type, url). Required: id.
create_a_salesforce_contact
Create a new Contact record in Salesforce by providing field name-value pairs in the request body. Returns: id, success, errors. Available Contact fields depend on your Salesforce org's Contact object configuration.
update_a_salesforce_contact_by_id
Update a Salesforce Contact by id. Field values in the request body replace existing values on the record. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_contact_by_id
Delete a Salesforce Contact by id. Returns an empty 204 response on success. Required: id.
salesforce_contacts_describe
Describe the Contact sObject in Salesforce to retrieve complete field-level metadata, child relationships, and URLs. Returns: name, label, type, length, byteLength, nillable, custom, soapType, createable, updateable, filterable, sortable, groupable, aggregatable, unique, calculated, autoNumber, defaultValue, defaultValueFormula, digits, precision, scale, referenceTo, relationshipName,…
salesforce_contacts_merge
Merge up to two duplicate Contact records into a master record in Salesforce via the SOAP API. The master record retains its identity and optionally absorbs updated field values. Returns: soapenv:Envelope. Required: master_record_id, record_to_merge_ids.
list_all_salesforce_voice_calls
List VoiceCall records in Salesforce using a SOQL query. Returns each record with attributes (type, url), Id, CreatedDate, LastModifiedDate, SystemModstamp, and all standard VoiceCall fields. The query parameter q defaults to SELECT FIELDS(STANDARD) FROM VoiceCall.
get_single_salesforce_voice_call_by_id
Get a single VoiceCall record in Salesforce by id. Returns: attributes, Id, CreatedDate, LastModifiedDate, SystemModstamp. Required: id.
create_a_salesforce_voice_call
Create a new VoiceCall record in Salesforce with field values in the request body. Returns: id, success, errors.
update_a_salesforce_voice_call_by_id
Update a Salesforce VoiceCall record by id. Field values provided in the request body replace the existing values in the record. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_voice_call_by_id
Delete a Salesforce VoiceCall record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_tasks
List Salesforce tasks via a SOQL query selecting all standard Task fields and Who.Type. Returns: attributes, Id, Subject, Status, Priority, ActivityDate, OwnerId, WhoId, WhatId, Who, Description, IsClosed, CompletedDateTime, TaskSubtype, CreatedDate, LastModifiedDate and the standard recurrence fields. Optional: where clause to filter results.
get_single_salesforce_task_by_id
Get a single Salesforce Task record by id. Returns standard Task fields including Id, Subject, Status, Priority, ActivityDate, Description, OwnerId, WhoId, WhatId, IsClosed, CompletedDateTime and TaskSubtype, plus the Who.Type polymorphic field. Required: id.
create_a_salesforce_task
Create a new Task record in Salesforce by providing field values in the request body. Use WhoId to relate the task to a Contact or Lead and WhatId to relate it to any other object such as an Account or Opportunity. Returns: id, success, errors. Custom fields ending in __c must be declared in this tool's schema to be transmitted.
update_a_salesforce_task_by_id
Update a Salesforce Task record by id. Field values in the request body replace existing values on the record; omitted fields are left unchanged. Required: id. Returns an empty 204 response on success.
delete_a_salesforce_task_by_id
Delete a Salesforce Task record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_email_messages
List Salesforce EmailMessage records via a SOQL query selecting FIELDS(STANDARD). Returns each record with its attributes (including type and url) and Id, along with all standard EmailMessage fields. Optionally supply a SOQL WHERE clause fragment to filter results.
get_single_salesforce_email_message_by_id
Get a single Salesforce EmailMessage record by id. Returns the record with its attributes (including type and url) and Id, along with all standard EmailMessage fields. Required: id.
create_a_salesforce_email_message
Create a new EmailMessage record in Salesforce by supplying field name-value pairs in the request body. Returns: id, success, errors. The request body accepts any createable field on the EmailMessage sObject; use the sObject Describe resource to discover available fields.
update_a_salesforce_email_message_by_id
Update a Salesforce EmailMessage record by id. Field values provided in the request body replace existing values. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_email_message_by_id
Delete a Salesforce EmailMessage record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_events
List Salesforce events via a SOQL query selecting all standard Event fields and Who.Type. Returns: attributes, Id, Who. Optional: where clause to filter results.
get_single_salesforce_event_by_id
Get a single Salesforce Event record by id. Returns standard Event fields including Id, Subject, StartDateTime, EndDateTime, Location, WhoId, and the Who.Type polymorphic field. Required: id.
create_a_salesforce_event
Create a new Event record in Salesforce by providing field values in the request body. Returns: attributes, Id, Who.
update_a_salesforce_event_by_id
Update a Salesforce Event record by id. Field values in the request body replace existing values on the record. Required: id. Returns an empty 204 response on success.
delete_a_salesforce_event_by_id
Delete a Salesforce Event record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_leads
List Salesforce leads by executing a SOQL query against the Lead object. Returns each record with attributes (type, url), Id, and Name. Optional: where for filtering and include_custom_fields for custom field selection.
get_single_salesforce_lead_by_id
Get a single Salesforce Lead by id. Returns the lead record with attributes (type, url), Id, and Name. Required: id.
create_a_salesforce_lead
Create a new Salesforce Lead record from field values in the request body. Returns: id, success, errors.
update_a_salesforce_lead_by_id
Update a Salesforce Lead record by id. Field values in the request body replace existing values on the record. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_lead_by_id
Delete a Salesforce Lead by id. Returns an empty 204 response on success. Required: id.
salesforce_leads_describe
Describe the Salesforce Lead object's field-level metadata. Returns an array of field descriptors including name, label, type, nillable, createable, updateable, custom, picklistValues, referenceTo, and relationshipName for each field.
list_all_salesforce_notes
List Salesforce Notes via a SOQL query selecting standard fields and the parent object's type. Returns: attributes, Id, Title, Body, OwnerId, ParentId, IsPrivate, CreatedDate, LastModifiedDate, Parent.Type for each note record. Optional where parameter accepts a SOQL WHERE clause fragment to filter results.
get_single_salesforce_note_by_id
Get a single Salesforce Note by id. Returns: attributes, Id, Title, Body, OwnerId, ParentId, IsPrivate, CreatedDate, LastModifiedDate, Parent.Type. Required: id.
create_a_salesforce_note
Create a new Note record in Salesforce by supplying field values in the request body. Returns: id, success, errors. Required: ParentId, Body.
update_a_salesforce_note_by_id
Update a Salesforce Note record by id. Field values provided in the request body replace existing values on the Note sObject. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_note_by_id
Delete a Salesforce Note record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_opportunities
List Salesforce Opportunities via a SOQL query that selects standard fields. Returns: attributes, Id, Name. Use the where parameter to filter results and include_custom_fields to add custom fields to the query.
get_single_salesforce_opportunity_by_id
Get a single Salesforce Opportunity by id. Returns: attributes, Id, Name. Required: id.
create_a_salesforce_opportunity
Create a new Salesforce Opportunity with field values in the request body. Returns: id, success, errors.
update_a_salesforce_opportunity_by_id
Update a Salesforce Opportunity by id with field values in the request body. Field values in the request body replace existing values. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_opportunity_by_id
Delete a Salesforce Opportunity by id. Returns an empty 204 response on success. Required: id.
salesforce_opportunities_describe
Describe the Salesforce Opportunity sObject metadata at all levels. Returns: fields, urls, childRelationships.
list_all_salesforce_opportunity_stages
List Salesforce opportunity stages by executing a SOQL query against the OpportunityStage object. Returns: attributes, Id, MasterLabel, ApiName, DefaultProbability, ForecastCategoryName, IsActive, IsClosed, IsWon, SortOrder, Description. Optional: where (SOQL WHERE clause fragment, without the WHERE keyword).
get_single_salesforce_opportunity_stage_by_id
Get a single Salesforce OpportunityStage record by id. Returns the stage record including its attributes, Id, and Name. Required: id.
list_all_salesforce_users
List Salesforce users by executing a SOQL query that selects all standard User fields. Returns each user record with Id, Name, and attributes metadata. An optional where clause appends a SOQL WHERE filter to the query.
get_single_salesforce_user_by_id
Get a single Salesforce user by record id. Returns the full user record including Id, Name, and attributes metadata. Required: id.
create_a_salesforce_user
Create a new Salesforce user by supplying field values in the request body. Returns the created user record including Id, Name, and attributes metadata.
update_a_salesforce_user_by_id
Update a Salesforce User record by id. Field values in the request body replace existing values on the record; only fields included in the body are modified. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_user_by_id
Delete a Salesforce User record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_profiles
List Salesforce Profile records by executing a SOQL query that selects all standard fields. Returns each Profile record including attributes, Id, and Name. The optional where parameter accepts a SOQL WHERE clause fragment to filter results.
get_single_salesforce_profile_by_id
Get a single Salesforce Profile record by id. Returns the Profile record including attributes, Id, and Name. Required: id.
create_a_salesforce_profile
Create a new Profile record in Salesforce by posting field values in the request body. Returns: id, success, errors. The request body must contain the required fields for the Profile object as defined in your Salesforce org.
update_a_salesforce_profile_by_id
Update a Salesforce Profile record by id. Field values in the request body replace existing values on the record. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_profile_by_id
Delete a Salesforce Profile record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_custom_fields
List Salesforce custom fields for a specified object type using a Tooling API SOQL query. Returns: attributes, Id, DeveloperName, TableEnumOrId, Description, InlineHelpText, NamespacePrefix, CreatedDate, LastModifiedDate. Required: object_type.
get_single_salesforce_custom_field_by_id
Get a single Salesforce custom field by id from the Tooling API. Returns: attributes, Id, DeveloperName, TableEnumOrId, Description, InlineHelpText, NamespacePrefix, CreatedDate, LastModifiedDate. Required: id.
create_a_salesforce_custom_field
Create a new custom field on any standard or custom Salesforce object. FullName format is ObjectName.FieldName__c (e.g. Account.Priority__c). Metadata must include type (Text, Number, Picklist, Checkbox, Lookup, Currency, Date, DateTime, Email, Phone, Url, TextArea, LongTextArea, etc.) and label. Type-specific config varies: Text needs length, Number needs precision/scale, Picklist needs valueSet.
update_a_salesforce_custom_field_by_id
Update a Salesforce CustomField record via the Tooling API. Field values in the request body replace existing values on the record. Returns an empty 204 response on success. Required: id.
salesforce_custom_fields_describe
Describe the Salesforce CustomField Tooling API object, completely describing its metadata at all levels including field definitions, URLs, and child relationships. Returns: name, fields, childRelationships, urls.
salesforce_custom_fields_filter_by_developer_name
Filter Salesforce custom fields by object type and developer name using a Tooling API SOQL query. Returns matching CustomField records including Id, DeveloperName, TableEnumOrId, Description, InlineHelpText, NamespacePrefix, CreatedDate, LastModifiedDate, and Metadata. Required: object_type, developer_name.
list_all_salesforce_visualforce_pages
List Salesforce Visualforce pages (ApexPage) via a SOQL query against the Tooling API. Returns: attributes, Id, Name, NamespacePrefix, ApiVersion, MasterLabel, CreatedDate, LastModifiedDate. Provide an optional where clause to filter results.
get_single_salesforce_visualforce_page_by_id
Get a single Salesforce Visualforce page (ApexPage) by id from the Tooling API. Returns: attributes, Id, Name, NamespacePrefix, ApiVersion, MasterLabel, CreatedDate, LastModifiedDate. Required: id.
create_a_salesforce_visualforce_page
Create a new Salesforce Visualforce page (ApexPage) in the Tooling API. Returns: id, success, errors. Required: Name, MasterLabel, ApiVersion.
update_a_salesforce_visualforce_page_by_id
Update an existing Salesforce Visualforce page (ApexPage) by id in the Tooling API. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_visualforce_page_by_id
Delete a Salesforce Visualforce page (ApexPage) by id from the Tooling API. Returns an empty 204 response on success. Required: id.
salesforce_visualforce_pages_describe
Describe the ApexPage (Visualforce pages) sObject in Salesforce via the Tooling API, retrieving complete metadata at all levels for the object. Returns: name, label, labelPlural, keyPrefix, fields, urls, childRelationships, createable, updateable, deletable, queryable, searchable, retrieveable, custom, layoutable.
list_all_salesforce_permission_sets
List Salesforce permission sets by executing a SOQL query that selects all standard fields from the PermissionSet object. Returns each record's attributes (type, url), Id, and Name. Supply a where clause to filter results.
get_single_salesforce_permission_set_by_id
Get a single Salesforce permission set by id. Returns the permission set record including attributes (type, url), Id, and Name. Required: id.
create_a_salesforce_field_permission
Create a Salesforce FieldPermissions record by posting field values. Returns: id, success, errors. Required: ParentId, SobjectType, Field.
list_all_salesforce_field_permissions
List Salesforce FieldPermissions records via a SOQL query selecting all standard fields. Returns: attributes, Id, ParentId, SobjectType, Field, PermissionsEdit, PermissionsRead, CreatedById, CreatedDate, LastModifiedById, LastModifiedDate, SystemModstamp.
get_single_salesforce_field_permission_by_id
Get a single Salesforce FieldPermissions record by id. Returns the field-level security record including its Id, SobjectType, Field, PermissionsRead, PermissionsEdit, and ParentId. Required: id.
list_all_salesforce_contact_listview_results
Execute the SOQL query for a Salesforce Contact list view and return the resulting records. Returns: attributes, Id, Name. Required: list_view_id.
list_all_salesforce_contact_listviews
List the Contact list views available to the current Salesforce user. Returns: id, label, developerName, describeUrl, resultsUrl, soqlCompatible, url for each list view. Pass a returned id as list_view_id to contact-listview-results to execute the list view and fetch its records.
get_single_salesforce_contact_listview_by_id
Get a single Salesforce Contact list view by id. Returns: id, label, developerName, describeUrl, resultsUrl, soqlCompatible, url. Required: id.
list_all_salesforce_login_history
List Salesforce login history records via SOQL, ordered by LoginTime descending. Returns standard LoginHistory fields including LoginTime, UserId, Application, and SourceIp. Supports optional where and limit_query for filtering and limiting results.
list_all_salesforce_organization
List Salesforce organizations by executing a predefined SOQL query (SELECT FIELDS(STANDARD) FROM Organization) that returns all standard fields for each org record. Returns: attributes, Id.
get_single_salesforce_organization_by_id
Get a single Salesforce organization record by id, returning all standard fields for the Organization sObject. Returns: attributes, Id. Required: id.
list_all_salesforce_user_licenses
List Salesforce user licenses by executing a SOQL query that selects all standard fields from the UserLicense object. Returns: attributes, Id.
get_single_salesforce_user_license_by_id
Get a single Salesforce user license by id using a SOQL query filtered by Id. Returns: attributes, Id. Required: id.
list_all_salesforce_case_statuses
List Salesforce CaseStatus records via a SOQL query selecting all standard fields. Returns: attributes, Id, CreatedDate, LastModifiedDate.
get_single_salesforce_case_status_by_id
Get a single Salesforce CaseStatus record by id. Returns: attributes, Id, CreatedDate, LastModifiedDate. Required: id.
list_all_salesforce_cases
List Salesforce cases by executing a SOQL query that selects all standard Case fields via FIELDS(STANDARD). Returns: attributes, Id. The response also includes every standard Case field returned by the query; the exact field set depends on the org's Case object schema.
get_single_salesforce_case_by_id
Get a single Salesforce Case record by id. Returns the full Case record including Id, CaseNumber, Subject, Status, Origin, Priority, IsClosed, CreatedDate, and all other field values along with the record attributes. Required: id.
create_a_salesforce_case
Create a new Salesforce Case record by supplying field values in the request body. Returns: id, success, errors. The body accepts any standard or custom Case field (Subject, Origin, Status, Priority, Description, AccountId, ContactId, OwnerId, and others); required fields depend on your org's validation rules and page layout configuration.
update_a_salesforce_case_by_id
Update a Salesforce Case record by id, replacing existing field values with those provided in the request body. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_case_by_id
Delete a Salesforce Case record by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_case_comments
List Salesforce case comments by executing a SOQL query with FIELDS(STANDARD) on the CaseComment object. Returns: attributes, Id, CommentBody, IsPublished, ParentId, CreatedById, CreatedDate, LastModifiedById, LastModifiedDate, SystemModstamp, IsDeleted. Supports an optional where clause to filter results.
get_single_salesforce_case_comment_by_id
Get a single Salesforce CaseComment record by id. Returns the case comment record including its Id, CommentBody, IsPublished, ParentId, and attributes (type, url). Required: id.
create_a_salesforce_case_comment
Create a new CaseComment in Salesforce by providing field values in the request body. Returns: id, success, errors. Required: CommentBody, ParentId.
update_a_salesforce_case_comment_by_id
Update a Salesforce case comment by id. Field values provided in the request body replace existing values on the record. Returns an empty 204 response on success. Required: id.
delete_a_salesforce_case_comment_by_id
Delete a Salesforce case comment by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_query
Execute a SOQL query in Salesforce to retrieve matching records. Returns: attributes, Id, Name. Required: q.
salesforce_query_run
Run a SOQL query in Salesforce. Returns result records, each with attributes (sObject type and url), Id, and the fields selected in the query, such as Name. Required: q and version; spaces in q must be replaced with + or %20.
salesforce_query_get_more
Get the next batch of SOQL query results in Salesforce using the query locator from a previous run or get_more batch. Returns records with attributes (sObject type and url), Id, and the queried fields, such as Name. Required: query_id and version.
salesforce_query_run_all
Run a SOQL query in Salesforce that can also return soft-deleted, merged, and archived task and event records. Returns records with attributes (sObject type and url), Id, and the queried fields, such as Name. Required: q and version.
salesforce_query_get_more_all
Get the next batch of QueryAll results in Salesforce using the query locator from a previous run_all or get_more_all batch. Returns records with attributes (sObject type and url), Id, and the queried fields, such as Name. Required: queryall_id and version.
list_all_salesforce_query_all
Execute a SOQL query with queryAll in Salesforce. Unlike query, queryAll also returns records that were soft-deleted (IsDeleted = true, in the Recycle Bin) and archived records such as archived Tasks and Events. Returns the matching records: attributes, Id and the fields selected in the query. Required: q.
list_all_salesforce_search
Search Salesforce records using a SOSL query string. Returns matching records with attributes (type, url), Id, Name, and any additional fields specified in the SOSL RETURNING clause. Required: q. The search string must be URL-encoded.
salesforce_search_run
Run a SOSL search across Salesforce records. Returns the matching search records as an array, each with its id and attributes whose fields depend on the sObject type and the SOSL RETURNING clause. Required: q (URL-encoded SOSL statement) and version.
list_all_salesforce_objects
List all Salesforce objects available in the org, including both standard and custom objects, using the Describe Global resource. Returns: sobjects (array of object metadata entries), encoding, maxBatchSize.
create_a_salesforce_composite
Execute a series of Salesforce REST API requests in a single POST call, using the output of one subrequest as input to a subsequent one. Returns a compositeResponse array where each item includes referenceId, httpStatusCode, and body of the corresponding subrequest. The entire series counts as a single call toward API limits.
list_all_salesforce_composite
List composite resources in Salesforce. Returns the URIs for the other composite resources available at the specified API version. Required: version.
list_all_salesforce_me
Get the authenticated Salesforce user's identity information via the Identity URL resolved from the OAuth token. Returns: user_id, organization_id, username, email, first_name, last_name, display_name, photos, rest_url.
list_all_salesforce_case_attachments
List Salesforce case attachments by querying ContentDocumentLink records linked to a specific case. Returns: attributes, Id, ContentDocumentId, LinkedEntityId. Required: case_id.
get_single_salesforce_case_attachment_by_id
Get a single Salesforce case attachment (the latest ContentVersion) by ContentDocumentId. Returns: attributes, Id, ContentDocumentId, IsLatest. Required: id.
salesforce_case_attachments_download
Download a Salesforce case attachment file from the specified path. Returns the raw file content as binary data (content-type-specific, not enumerable as JSON fields). Required: path, base.
list_all_salesforce_account_describe
Describe the Account sObject in Salesforce to retrieve complete field-level metadata. Returns an array of field descriptors including name, label, type, length, nillable, createable, updateable, picklistValues, and referenceTo.
list_all_salesforce_contact_describe
Describe the Contact sObject's field metadata in Salesforce. Returns an array of field descriptors including each field's name, label, type, nillable, createable, updateable, picklistValues, relationshipName, and urls. The response is extracted from the `fields` property of the sObject Describe result.
list_all_salesforce_opportunity_describe
Describe the Opportunity sObject in Salesforce to retrieve complete field-level metadata. Returns the fields array where each field descriptor includes name, type, and label along with additional field properties.
list_all_salesforce_lead_describe
Describe the Lead sObject in Salesforce, returning comprehensive field metadata for every field on the object. Returns: name, label, type, length, byteLength, digits, precision, scale, nillable, custom, updateable, createable, filterable, sortable, groupable, nameField, autoNumber, calculated, unique, idLookup, externalId, defaultedOnCreate, defaultValue, soapType, inlineHelpText,…
list_all_salesforce_case_describe
Describe the Salesforce Case object to retrieve its complete field-level metadata. Returns the fields array, where each field includes name, label, type, length, nillable, createable, and updateable.
list_all_salesforce_case_feed
List Salesforce CaseFeed records (case feed items) using a SOQL query that selects all standard fields via FIELDS(STANDARD). Returns: attributes, Id. Provide an optional where clause to filter results.
salesforce_attachments_download
Download the binary Body field of a specific Salesforce Attachment record by id. Returns the raw binary file content of the attachment, not a JSON or XML payload. Required: id.
list_all_salesforce_package_license
List Salesforce package licenses by querying the PackageLicense object for all standard fields. Returns each record's Id and attributes including the object type and REST URL.
get_single_salesforce_package_license_by_id
Get a single Salesforce package license by its Id. Returns the record's Id and attributes including the object type and REST URL. Required: id.
list_all_salesforce_user_package_license
List Salesforce user package licenses by executing a SOQL query that returns all standard fields from the userPackageLicense object. Returns: attributes, Id, UserId, PackageLicenseId, CreatedDate, CreatedById, LastModifiedDate, LastModifiedById, SystemModstamp. Results are limited to records visible to the executing user.
get_single_salesforce_user_package_license_by_id
Get a single Salesforce user package license by id, executing a SOQL query that returns all standard fields filtered by the record Id. Returns: attributes, Id, UserId, PackageLicenseId, CreatedDate, CreatedById, LastModifiedDate, LastModifiedById, SystemModstamp. Required: id.
list_all_salesforce_namespace_registry
List Salesforce NamespaceRegistry sObject metadata via the Describe Global resource. Returns each sObject descriptor with name, label, keyPrefix, custom, createable, updateable, and urls. The response is extracted from the sobjects array.
list_all_salesforce_meta_data_package
List Salesforce MetadataPackage records via the Tooling API SOQL query endpoint. Returns: attributes, Id, Name, NamespacePrefix.
get_single_salesforce_content_version_by_id
Download the binary file content (VersionData blob) of a specific ContentVersion record in Salesforce. Returns the file content as binary data. Required: id.
list_all_salesforce_permission_set_assignments
List Salesforce permission set assignments by executing a SOQL query against the PermissionSetAssignment object. Returns records including Id, AssigneeId, PermissionSetId, PermissionSetGroupId, CreatedDate, CreatedById, SystemModstamp, and attributes. An optional where clause filters results.
get_single_salesforce_permission_set_assignment_by_id
Get a single Salesforce permission set assignment by id. Returns: attributes, Id, AssigneeId, PermissionSetId, PermissionSetGroupId, CreatedDate, CreatedById, SystemModstamp. Required: id.
create_a_salesforce_permission_set_assignment
Assign a Salesforce permission set to a user by creating a PermissionSetAssignment record via the sObject create endpoint. Returns: id, success, errors. Required: AssigneeId, PermissionSetId.
delete_a_salesforce_permission_set_assignment_by_id
Delete a Salesforce permission set assignment by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_permission_set_licenses
List Salesforce permission set licenses by executing a SOQL query that selects all standard fields from the PermissionSetLicense object. Returns: attributes, Id, Name, MasterLabel, DeveloperName, NamespacePrefix, Status, CreatedDate, LastModifiedDate, SystemModstamp. An optional where clause can be supplied to filter results.
get_single_salesforce_permission_set_license_by_id
Get a single Salesforce PermissionSetLicense record by id. Returns the record's attributes (including type and url) and Id. Required: id.
list_all_salesforce_permission_set_license_assigns
List Salesforce permission set license assignments via a SOQL query. Returns each record with attributes, Id, AssigneeId, PermissionSetLicenseId, CreatedDate, and LastModifiedDate. An optional SOQL WHERE clause can be supplied via the where parameter to filter results.
get_single_salesforce_permission_set_license_assign_by_id
Get a single Salesforce permission set license assignment by id. Returns: attributes, Id, AssigneeId, PermissionSetLicenseId, CreatedDate, LastModifiedDate. Required: id.
create_a_salesforce_permission_set_license_assign
Create a new Salesforce permission set license assignment by providing field values in the request body. Returns: id, success, errors. Required: AssigneeId, PermissionSetLicenseId.
delete_a_salesforce_permission_set_license_assign_by_id
Delete a Salesforce permission set license assignment by id. Returns an empty 204 response on success. Required: id.
list_all_salesforce_active_feature_license_metric
List Salesforce ActiveFeatureLicenseMetric records by executing a SOQL query that selects all standard fields. Returns: attributes, Id, CreatedDate, LastModifiedDate. The SOQL query is preset and requires no caller-supplied parameters.
list_all_salesforce_limits
List Salesforce org limits. Returns a map of limit names, each containing the maximum allocation (Max) and remaining allocation (Remaining) for that limit.
list_all_salesforce_describe
Describe the field metadata for a Salesforce sObject by its object API name. Returns an array of field descriptors, each including its name and additional field-type-specific metadata attributes (such as type, label, nillable, length, picklist values, and access properties). Required: object_api_name.
get_single_salesforce_object_describe_by_id
Get complete metadata for a Salesforce sObject by name, including field definitions, URL endpoints, and child relationships. Returns: fields, urls, childRelationships. Required: id.
create_a_salesforce_record
Create a new Salesforce record for a specified sObject using field values in the request body. Returns: id, success, errors. Required: object_name. The body fields depend on the sObject type (e.g., Account, Contact).
update_a_salesforce_record_by_id
Update a Salesforce record by id for a specified sObject. Field values in the request body replace existing values. Returns an empty 204 response on success. Required: object_name, id. The body fields depend on the sObject type.
delete_a_salesforce_record_by_id
Delete a Salesforce record by specifying the sObject type and record ID. Returns an empty 204 response on success. Required: object_name, id.
get_single_salesforce_record_by_id
Get a single Salesforce record by object name and record id. Returns the record's attributes (type and url), Id, and all field values defined for the specified sObject type. Required: object_name, id. The specific fields returned beyond Id and attributes depend on the object's schema in Salesforce.
list_all_salesforce_records
List related Salesforce records by traversing a relationship field from a parent sObject record. Returns each related record's id and attributes (sObject type and REST URL); remaining field values depend on the specified sobject. Required: version, sobject, sobject_id, relationship_name. Available in REST API version 36.0 and later.
salesforce_records_get_by_external_id
Get a Salesforce sObject record by the value of one of its external ID fields. Returns the record's id and attributes (sObject type and REST URL); remaining field values depend on the specified sobject. Required: version, sobject, external_id_field, external_id.
salesforce_records_partial_update
Update a Salesforce sObject record by id. Field values provided in the request body replace the existing values in the record. Required: version, sobject, record_id. Returns an empty 204 response on success.
salesforce_records_upsert
Upsert a Salesforce sObject record by external ID field and value; the request creates the record when the external ID value does not exist and updates the existing record when it does. Required: version, sobject, external_id_field, external_id. Returns an empty 204 response on success.
salesforce_records_delete_by_external_id
Delete a Salesforce sObject record by the value of one of its external ID fields. Required: version, sobject, external_id_field, external_id. Returns an empty 204 response on success.
salesforce_records_list_deleted
List Salesforce records that were deleted for the given sobject within the start/end timespan (UTC). Returns: deletedRecords, earliestDateAvailable, latestDateCovered. Required: version, sobject, start, end. Max 600,000 IDs per call (EXCEEDED_ID_LIMIT beyond that) and results reach back at most 15 days.
salesforce_records_list_updated
List Salesforce records that were added or changed for the given sobject within the start/end timespan (UTC), keyed on SystemModstamp (or LastModifiedDate) and commonly used for data replication. Returns: ids, latestDateCovered. Required: version, sobject, start, end. Results span at most the 30 days before the call; max 600,000 ids (EXCEEDED_ID_LIMIT beyond).
list_all_salesforce_custom_objects
List Salesforce CustomObject records by executing a SOQL query via the Tooling API. Returns each record with attributes (type, url), Id, Name, and any additional fields selected in the query. Required: q.
get_single_salesforce_custom_object_by_id
Get a single Salesforce CustomObject record by id via the Tooling API. Returns the full CustomObject metadata including attributes (type, url), Id, and Name. Required: id.
list_all_salesforce_versions
List the Salesforce REST API versions currently available. Returns each version's summary with its version and label. Takes no parameters.
list_all_salesforce_resources
List the REST API resources available in Salesforce for a given API version. Returns a dynamic, version-specific collection of available resources; the response shape is not enumerated. Required: version.
list_all_salesforce_limits_v_query_version
List the Salesforce limits for your org, such as DailyApiRequests or DataStorageMB. Returns a collection of limits, each with its name, maximum allocation (max), and remaining allocation based on usage (remaining). Required: version (API version, e.g. 62.0; "latest" resolves to the newest released version). Available in API version 29.0 and later; values are accurate within five minutes of…
list_all_salesforce_record_counts
List Salesforce object record counts for your organization. Returns the sObjects array with each object's name and cached count. Required: version. Counts are cached snapshots that exclude recycled, archived, and associated records such as ChangeEvent and Share.
create_a_salesforce_composite_batch
Execute up to 25 Salesforce REST API subrequests in a single POST via the Composite Batch resource. Returns the result of each subrequest, including its response body and HTTP status. Subrequests run serially in order, commit independently with no rollback on failure, and the batch times out after 10 minutes. Required: version. Subrequest API versions must be at least 34.0 and no later than the…
create_a_salesforce_composite_graph
Submit one or more Salesforce composite graphs in a single request to create, update, or delete related sObject records, with all subrequest statuses returned together in one response body counting as one API call. Returns: graphs.compositeResponse results, and isSuccessful. Required: version and graphs.
list_all_salesforce_search_scopeorder
Get the ordered list of objects in the default global search scope of a logged-in user in Salesforce. Returns the objects ranked by usage frequency, including any pinned objects from the user's search results page. Required: version.
get_single_salesforce_records_sobject_by_id
Get a Salesforce record of the specified sobject type by id. Returns the record's id and attributes metadata (object type and REST url). Required: id, sobject, version. Additional field values returned vary by sobject type.
create_a_salesforce_records_sobject
Create a Salesforce record of the specified sobject type from field values supplied in the request body. Returns the created record's id and attributes metadata. Required: sobject, version.
delete_a_salesforce_records_sobject_by_id
Delete a Salesforce record of the specified sobject type by id. Returns an empty 204 response on success. Required: id, sobject, version.
get_single_salesforce_sobject_collection_by_id
Get up to 200 Salesforce records of one sObject type in a single request. Pass the record IDs as id (comma-separated for several, e.g. 0012w00001GfdfSAAR,0012w00001GfdfTAAR), the sObject type as sobject and the fields to return as fields. Returns one entry per requested ID, in order, with attributes and the requested fields; an unknown or inaccessible ID returns null in its slot. Required: id, version, sobject, fields.
create_a_salesforce_sobject_collection
Create up to 200 Salesforce records in a single request. Returns a single response body with the result for each record, with fields specific to the sObject types written. Requires version.
salesforce_sobject_collections_bulk_update
Update up to 200 Salesforce records in a single request. Returns a single response body with the result for each record, with fields specific to the sObject types updated. Requires version.
salesforce_sobject_collections_bulk_delete
Delete multiple Salesforce records in one request by record ID. Returns a single response body with the result for each record. Requires version.
create_a_salesforce_sobject_tree
Create one or more sObject trees with root records of the specified type in Salesforce — nested parent-child hierarchies created in request order (up to 200 records across all trees, up to five records of different types, trees up to five levels deep). Returns each created record's id and referenceId, plus hasErrors and errors details; if any record fails to create, the entire request fails.…
list_all_salesforce_sobjects
List the standard and custom objects in the Salesforce org with Describe Global. Returns: sobjects, encoding, maxBatchSize. Required: version.
get_single_salesforce_sobject_by_id
Get basic metadata for a specified Salesforce object, including some object properties, recent items, and URIs for related resources. Returns: objectDescribe, recentItems, urls. Required: sobject, version.
salesforce_sobjects_describe
Describe all metadata levels of a specified Salesforce object, including its fields, URLs, and child relationships. Returns: fields, childRelationships, urls. Required: sobject, version.
list_all_salesforce_layouts
List the page layouts and their descriptions for a Salesforce sObject. Returns the id of the default layout for the object. Required: version, sobject.
get_single_salesforce_layout_by_id
Get the page layouts and their descriptions for a Salesforce sObject that has multiple record types. Returns the id of the layout for the specified record type. Required: version, sobject, id (the record type ID).
get_single_salesforce_named_layout_by_id
Get information about a named layout for a Salesforce sObject. Returns the id of the layout for the specified object and named layout. Requires version, sobject, and layout_name; layout_name must be a valid named layout for the given object. Available in REST API version 31.0 and later.
list_all_salesforce_process_approvals
List all approval processes in Salesforce. Returns each approval process record with its id and upstream-defined attributes. Required: version. Available in REST API version 30.0 and later.
create_a_salesforce_process_approval
Submit a record for approval, or approve or reject a pending approval, in Salesforce. Returns the outcome of the action with its id and upstream-defined attributes. Required: version. Approving or rejecting requires the current user to be an assigned approver. Available in REST API version 30.0 and later.
list_all_salesforce_process_rules
List all active workflow rules in Salesforce. Returns workflow rule records including their id and attributes (upstream-defined rule configuration). Required: version. Available in REST API version 30.0 and later.
create_a_salesforce_process_rule
Trigger all active workflow rules in Salesforce for record IDs supplied in the request body. Every rule associated with a supplied record ID is evaluated regardless of its evaluation criteria. Required: version. All IDs must be for records on the same object; cross-object workflow rules can't be invoked.
salesforce_process_rules_list_for_sobject
List all active workflow rules for a given sObject in Salesforce. Returns workflow rule records including their id and attributes (upstream-defined rule configuration). Required: version and sobject. Available in REST API version 30.0 and later.
salesforce_process_rules_get_for_sobject
Get a single active workflow rule for an sObject in Salesforce. Returns the workflow rule record including its id and attributes (upstream-defined rule configuration). Required: version, sobject, and rule_id.
list_all_salesforce_quick_actions
List the global quick actions available in Salesforce, including their types and the custom fields and objects that appear in the Chatter feed. Returns each action with its id and action-specific attributes. Requires version. Available in REST API version 28.0 and later.
create_a_salesforce_quick_action
Create a record in Salesforce by invoking a global quick action by name, supplying the field values for the record in the request body. Returns the created record's id and quick-action-specific attributes. Requires version, action_name, and the record's field values in the body. Available in REST API version 28.0 and later.
list_all_salesforce_sobject_quick_actions
List the quick actions for a Salesforce sObject, including the object's own actions as well as global actions. Returns: id, attributes. Required: version, sobject. Available in REST API v28.0+.
get_single_salesforce_sobject_quick_action_by_id
Get a specific quick action for a Salesforce sObject, including the action's details. Returns: id, attributes. Required: version, sobject, action_name. Available in REST API v28.0+.
create_a_salesforce_sobject_quick_action
Create a record via a specific Salesforce sObject quick action using the field values supplied in the request body. Returns: id, attributes. Required: version, sobject, action_name. Available in REST API v28.0+.
list_all_salesforce_platform_actions
Query the PlatformAction virtual read-only object in Salesforce for the actions displayed in the UI — standard and custom buttons, quick actions, and productivity actions — given a user, a context, a device format, and a record ID. Returns: id, attributes. Required: version (API version 33.0 or later).
list_all_salesforce_suggested_articles
List suggested Salesforce Knowledge articles for a Case, Work Order, or Work Order Line in salesforce, ranked by keyword relevance in the subject and description. Returns an array of article version suggestions with Id and attributes (record type and REST url). Required: version, sobject, language, plus subject or description (both valid only for unsaved records without an ID). Available in REST…
get_single_salesforce_user_password_by_id
Get the password expiration status for a Salesforce user. Returns a bare True or False value in the response body indicating whether the user's password is expired. Required: id, sobject, version. Available in REST API version 24.0 and later.
salesforce_user_passwords_bulk_delete
Reset (delete) a Salesforce user's password via the sObject User Password resource: the current password becomes invalid and the user receives an email with a password reset link. Returns an empty 204 response on success. Required: version, sobject, sobject_id.
create_a_salesforce_composite_v_query_version
Execute a series of Salesforce REST API subrequests in a single POST call to the composite resource; later subrequests can reference earlier results via @{referenceId.field}. Returns one result per subrequest with referenceId, httpStatusCode, body, and httpHeaders. Required: version and a compositeRequest array of subrequests (each with url, method, referenceId, and an optional body).
get_single_salesforce_app_menu_by_id
Get the App Menu items in the Salesforce Lightning app dropdown menu for a given menu type. Returns: id, attributes.g. AppSwitcher). Required: version, menu_type. Available in REST API version 29.0 and later.
list_all_salesforce_app_menus
List the App Menu types in the Salesforce app dropdown menu. Returns: id, attributes. Required: version. Available in REST API version 29.0 and later.
salesforce_appointment_candidates_list_appointment_candidates
List appointment candidates (service resources) in Salesforce based on a work type group or work type and service territories. Returns a list of matching service resources. Required: version (the REST API version path parameter).
salesforce_appointment_slots_list_appointment_slots
Get available appointment time slots in Salesforce Scheduler, matched to resources based on the given work type group or work type and service territories. Returns appointment slot records including id and Scheduler-defined slot attributes. Required: version.
create_a_salesforce_consent
Write a consent value for one consent action (e.g. email) across all Salesforce records that share the given record Ids or email addresses (Contact, Lead, User, Individual, Person Account). Sends PATCH /consent/action/{action}?ids=...&status=... Returns per-id results. Required: version, action, ids, status.
get_single_salesforce_consent_by_id
Get a customer's consent preferences compiled across multiple Salesforce records so the most restrictive requests are respected. Returns a dynamic payload whose fields are consent-type-specific. Required: version. Available in API version 44.0 and later; Data Cloud parameters require version 50.0 and later.
get_single_salesforce_embedded_service_config_by_id
Get the values for an Embedded Service deployment configuration in Salesforce, including branding colors, font, and site URL. Returns: id, attributes. Required: version, developer_name. Available in REST API version 45.0 and later.
get_single_salesforce_event_schema_by_id
Get the Apache Avro schema definition for a Salesforce platform event by event name. Returns: name, namespace, type, fields, uuid. Required: version, event_name. Available in REST API version 40.0 and later.
salesforce_invocable_actions_list_custom
List all custom invocable actions in Salesforce, each with basic information about the action type. Returns the collection of actions; per-action fields are not enumerated in the source docs. Required: version. Available in REST API version 32.0 and later.
salesforce_invocable_actions_list_standard
List the standard invocable actions provided by Salesforce, each with basic information about the action type. Returns the collection of actions; per-action fields are not enumerated in the source docs. Required: version. Available in REST API version 32.0 and later.
salesforce_list_views_describe
Get detailed information about a specific list view in Salesforce, including its columns and the underlying SOQL query. Returns the list view's id. Requires version, sobject, and list_view_id. Available in REST API version 32.0 and later.
get_single_salesforce_list_view_by_id
Get basic information for a specific list view in Salesforce. Returns: id, label, developerName, soqlCompatible, url, describeUrl, resultsUrl. Requires version, sobject, and id. Available in REST API version 32.0 and later.
list_all_salesforce_list_views
List the list views defined for an sObject in Salesforce. Returns: id, label, developerName, soqlCompatible, url, describeUrl, resultsUrl. Requires version and sobject. Available in REST API version 32.0 and later.
salesforce_list_views_list_recent
List recently used list views for a given sObject type in Salesforce. Returns each list view's id, label, developerName, soqlCompatible, and url fields. Required: version, sobject. Available in REST API v32.0+.
salesforce_list_views_list_results
Executes the SOQL query behind a Salesforce list view and returns its data with presentation info. Returns: columns, developerName, done, id, label, records, size. Required: version, sobject, list_view_id. Available in API version 32.0 and later; up to 2000 records per page (default 25).
create_a_salesforce_portability_request
Compile data for a portability request in Salesforce, gathering a customer's PII across the objects and fields defined in your Privacy Center portability policy. Returns: id, status. Requires version. Available in REST API version 50.0 and later.
get_single_salesforce_portability_request_by_id
Get the status of a data portability request in Salesforce by id, tracking the compilation of a customer's PII across records. Returns: status. Requires id and version. Available in REST API version 50.0 and later.
salesforce_product_schedules_bulk_delete
Delete all installments in a revenue or quantity schedule for an opportunity product in Salesforce; deleting also fires delete triggers. Returns an empty 204 response on success. Requires version, sobject, and sobject_id.
create_a_salesforce_product_schedule
Create or re-establish a product schedule with multiple installments for an opportunity product in Salesforce. Returns the schedule records with their id and attributes. Requires version, sobject, and sobject_id. In API version 46.0 and later, established and re-established schedules support custom fields, validation rules, and Apex triggers.
list_all_salesforce_product_schedules
Get revenue and quantity schedules for an opportunity product in Salesforce. Returns each schedule record with its id and attributes. Requires version, sobject, and sobject_id. Available in REST API version 43.0 and later.
list_all_salesforce_recent_items
List the most recently viewed records in Salesforce. Returns an array of recently viewed records, each with its id and record-specific attributes. Required: version. Caps at 200 records (the max entries in RecentlyViewed) when limit is not specified.
list_all_salesforce_relevant_items
List the current user's most relevant items in Salesforce — up to 50 recently viewed or updated records per object in the user's global search scope plus MRU objects, capped at 2,000 records. Returns per-object entries with apiName, label, key, qualifiedApiName, recordIds, and lastUpdatedId. Required: version. sObject names passed in sobjects are case-sensitive.
list_all_salesforce_scheduling
List the available Salesforce Scheduler REST resources in Salesforce. Returns the resource discovery map of Scheduler resource names to their relative URIs (keys vary by API version). Requires version (v45.0+).
list_all_salesforce_search_layouts
List Salesforce search result layouts for the objects named in q. For each object, returns the fields displayed as columns on the search results page. Returns: field, format, label, name. Required: q, version. Supports bulk fetch for up to 100 objects per query.
list_all_salesforce_search_suggestions
Search Salesforce records suggested by autocomplete and instant results, returning records whose names match the search string (API v32.0+). Returns: autoSuggestResults, hasMoreResults, meta. Required: version, q, sobject. Defaults to 5 records when limit is omitted.
salesforce_search_suggestions_list_query_suggestions
List Salesforce Knowledge suggested search queries other users have performed, matched by query-string prefix (API v30.0+). Returns: autoSuggestResults, hasMoreResults.g. "apple banana"), hasMoreResults (true when only a subset of available suggestions was returned). Required: version, q, language. Salesforce Knowledge must be enabled; query strings over 250 characters return an error.
salesforce_search_suggestions_list_title_matches
List Salesforce Knowledge article titles matching the user's search query, a shortcut to likely relevant articles before the user performs a search (API v30.0+). Returns: autoSuggestResults, hasMoreResults. Required: version, q, language, publishStatus. Salesforce Knowledge must be enabled.
list_all_salesforce_support
Get the Support Knowledge root resource in Salesforce. Returns the relative URLs of the dataCategoryGroups and knowledgeArticles sub-resources visible to the current user. Required: version (REST API version, 38.0 or later).
list_all_salesforce_support_articles
List a page of online Salesforce Knowledge articles visible to the current user, for a given language and category, via search or query. Returns article records with their id and content-type-specific article fields (attributes). Required: version. Available in REST API version 38.0 and later.
list_all_salesforce_support_categories
List Knowledge data category groups in Salesforce that are visible to the current user. Returns each group record with its id and the group's org-defined category fields (attributes). Required: version (REST API version 38.0 or later).
create_a_salesforce_survey_translation
Add or update translated values of one or more Salesforce Survey fields, in one or more languages (POST /localizedvalue/records/upsert). Send a body array of {developerName, language, value}. Returns the saved translations. Required: version, body. Requires the Translation Workbench language to be active.
salesforce_survey_translations_get_values
Get the translated values of one or more Salesforce Survey fields in one or more languages (POST /localizedvalue/records/get). Send a body array of {developerName, language}. Returns each translation with value, createdBy, createdDate and isOutOfDate. Required: version, body.
salesforce_survey_translations_bulk_delete
Delete the translated values of one or more Salesforce Survey fields in one or more languages (POST /localizedvalue/records/delete). Send a body array of {developerName, language}. Required: version, body.
list_all_salesforce_tabs
List all tabs — including Lightning page tabs — available to the current user in Salesforce, even tabs hidden via the All Tabs (+) customization feature. Returns tab items with id and content-type-specific attributes. Required: version (REST API v31.0 or later).
get_single_salesforce_theme_by_id
Get the icons and colors used by Salesforce themes for objects in your organization that use icons and colors in the Salesforce UI. Returns the themeItems array; each theme item carries name, colors (color, context, theme), and icons (contentType, url, width, height, theme). Requires version. Returns 304 Not Modified with no body when metadata is unchanged since If-Modified-Since.
list_all_salesforce_custom_object_definitions
List custom objects in Salesforce by querying the EntityDefinition table via the Tooling API SOQL endpoint. Returns: attributes, QualifiedApiName, Label, PluralLabel, IsQueryable, IsSearchable, IsCustomSetting, KeyPrefix. Required: q.
Why Truto
Why use Truto’s MCP server for Salesforce
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 850+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
For your product
Ship Salesforce tools in your product
Give the AI in your product access to each customer’s own Salesforce account, with one MCP server per connected account.
Rather talk it through? Book a demo
For your own team
Use Salesforce in ChatGPT or Claude yourself
Connect your company’s Salesforce once, then ask in the AI you already use, with exactly your own access.
From the team behind Truto · 14-day free trial
Unified APIs
Unified APIs for Salesforce
Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.
Unified CRM API
Accounts
The accounts represent a company in a CRM.
Associations
Contacts
The contacts represent an existing point of contact at a company in a CRM.
Engagement Types
The engagement types represent an interaction activity in a CRM.
Engagements
The engagements represent an interaction noted in a CRM.
Fields
The fields of entities in a CRM.
Leads
The leads represent a potential customer in a CRM.
Notes
The notes represent a note on another object in a CRM.
Opportunities
The opportunities represent an opportunity in a CRM.
Stages
The stages represent a stage of an opportunity in a CRM.
Tasks
The tasks represent a task in a CRM.
Users
The users represent a user in a CRM.
Unified User Directory API
Activities
Activities are the actions performed by users in the source application.
Licenses
Licenses represent concepts like user seats in apps that support them
Me
Organizations
Organizations are the top level entity in the source application. Users are associated with an organization.
Roles
The Role object represents a role of a User.
Users
The User object represents a User.
Utilization
Utilization object represents utilization reports.
Unified Ticketing API
Attachments
Attachments are the files associated with a ticket or a comment.
Comments
Comments represent the communication happening on a Ticket, both between a User and a Contact and the internal things like notes, private comments, etc. A Ticket can have one or more Comments.
Contacts
Contact represent the external people you are in contact with. These could be customers, leads, etc. Contacts can be associated with an Account if the underlying product supports it.
Fields
Fields represent the attributes defined for various entities in the underlying product. Depending on the underlying product, custom attributes can be defined by a User on various entities like Ticket, Contact, etc. is_user_defined attribute within Field can be used to differentiate between custom and system defined Fields.
Ticket Status
Ticket Status represents the completion level of the Ticket. Some products provide customizing the Ticket Status.
Tickets
Core resource which represents some work that needs to be carried out. Tickets are usually mapped to issues, tasks, work items, etc. depending on the underlying product.
Users
Users represent the people using the underlying ticketing system. They are usually called agents, team members, admins, etc.
Unified Search API
Search
Search endpoint for all the apps.
How It Works
From zero to integrated
Go live with Salesforce in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Salesforce account
Use Truto’s frontend SDK to connect your customer’s Salesforce account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Salesforce
Truto’s Proxy API is a 1-to-1 mapping of the Salesforce API. You call us, we call Salesforce, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Salesforce’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Salesforce on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
What authentication method does Truto use for Salesforce?
Truto handles Salesforce's OAuth 2.0 flow end-to-end, including token refresh. Your end users authenticate through a managed consent screen — you don't need to build or maintain any auth logic yourself.
How does Truto handle Salesforce's API rate limits?
Truto manages pagination and respects Salesforce's API rate limits automatically. It handles retries and backoff so your integration doesn't hit throttling errors, even when syncing large volumes of records across heavily-used Salesforce orgs.
Can I read and write to custom fields on Salesforce objects?
Yes. The Unified CRM API's Fields resource lets you discover all standard and custom fields on objects like Account, Contact, Lead, and Opportunity — including their data types. You can then read from and write to those fields, which is essential since nearly every Salesforce instance is heavily customized.
Which Truto Unified APIs support Salesforce?
Salesforce is supported across the Unified CRM API (Accounts, Contacts, Leads, Opportunities, Stages, Engagements, Tasks, Notes, Users, Fields, Associations, Engagement Types), the Unified User Directory API, the Unified Ticketing API, and the Unified Search API.
Can I search for existing records before creating new ones to avoid duplicates?
Yes. The Unified Search API's Search resource lets you query Salesforce for existing Contacts, Leads, or Accounts by email, name, or other identifiers before creating new records — critical for maintaining data quality in your users' CRM.
Does Truto support associating records — for example, linking an Engagement to an Opportunity?
Yes. The Associations resource in the Unified CRM API lets you create and read relationships between objects, such as linking a Note to a specific Opportunity or associating a Contact with an Account, mirroring Salesforce's native relationship model.
From the Blog
Salesforce integration guides
Deep dives, architecture guides, and practical tutorials for building Salesforce integrations.
Salesforce
Get Salesforce integrated into your app
Our team understands what it takes to make a Salesforce integration successful. A short, crisp 30 minute call with folks who understand the problem.