Skip to main content
The Salesforce integration uses a hybrid model: stable agent-facing tools for common CRM and support work, plus generic Salesforce primitives for discovery and custom orgs. Salesforce orgs model customers differently. A B2B org often uses Account and Contact. A B2C org can use Person Accounts. Enterprise orgs can add entitlements, assets, subscriptions, account hierarchies, record types, and custom objects. The integration keeps those differences behind a Salesforce profile layer instead of exposing every org model directly to agents.

Agent-facing tools

Agents call tools named after work, not Salesforce storage details:
Tool patternPurpose
find_customerResolve a customer identity from Salesforce records.
list_casesFind Service Cloud cases by customer, account, contact, owner, queue, or status.
get_caseRead the full case record for support triage.
list_case_activityRead comments and timeline context for a case.
search_knowledge_articlesFind published Knowledge content for support answers.
add_case_commentAdd a controlled support note or customer-visible comment.
These tools give agents a consistent vocabulary across projects. The agent asks for customer context, cases, or support notes. Veryfront translates that intent into the Salesforce objects and fields configured for the connected org.

Generic Salesforce tools

The integration also exposes generic tools for expert and fallback paths:
ToolPurpose
describe_objectRead Salesforce object metadata, fields, relationships, and permissions.
run_soql_queryRun a bounded read-only SOQL query for custom objects and advanced reports.
Generic tools are necessary because no fixed product catalog can cover every Salesforce implementation. They let consultants and admins inspect the org, validate mappings, and handle custom objects without adding a new Veryfront tool for every Salesforce object.

Customer model

customer is a Veryfront semantic concept, not a native Salesforce object. The default Service Cloud profile maps customer context to:
ConceptDefault Salesforce source
Customer accountAccount
Customer personContact
Support issueCase
Case timelineCaseComment
Help contentKnowledgeArticleVersion
That default works for a common B2B Service Cloud demo and for many account-based support orgs. Production deployments need a validated profile when the org uses Person Accounts, custom customer objects, account hierarchies, entitlements, assets, subscriptions, or custom support objects.

Salesforce profile

A Salesforce profile defines how Veryfront maps semantic tools to one Salesforce org:
Profile settingMeaning
customer_modelaccount_contact, person_account, or custom_object.
customer_objectObject that represents the customer, such as Account, PersonAccount, or Customer__c.
contact_objectObject that represents people, usually Contact.
case_objectObject that represents support work, usually Case.
identity_fieldsFields used for lookup, such as Contact.Email, Account.Name, Account.Website, or external IDs.
case_relationshipsRelationships that connect cases to customers, such as Case.AccountId or Case.ContactId.
read_filtersDefault filters, such as excluding closed cases or limiting Knowledge articles to published versions.
write_policyAllowed write actions, such as internal case comments only.
Veryfront validates profile settings with Salesforce metadata before agents use them. Invalid objects, missing fields, and inaccessible relationships become configuration errors instead of agent runtime surprises.

Why this scales

The agent contract stays stable while the Salesforce mapping changes per org. For example, find_customer can resolve different backend models:
Org modelBackend mapping
B2B Service CloudAccount plus related Contact and Case records.
B2C Service CloudPerson Account records plus related cases.
Enterprise Service CloudAccount, Contact, Entitlement, Asset, and Case.
Custom implementationCustomer__c, custom relationship fields, and custom support objects.
This separates agent behavior from Salesforce schema variance. Agents learn one stable set of tools. Admins and consultants adapt the Salesforce profile to the customer’s org.

Salesforce references

This architecture follows established Salesforce patterns rather than a single product-specific blueprint.
ReferenceHow it applies
Salesforce Customer 360 Data ModelTreats customer context as a harmonized model across objects, fields, metadata, and relationships.
Salesforce REST sObject DescribeSupports metadata-driven object and field discovery before a profile is accepted.
Salesforce Well-Architected SecureSupports least-privilege integration access and separate integration identities where service users are used.
Salesforce Integration PatternsSupports authenticated API access over HTTPS and explicit integration design.
Salesforce Data Model GalleryKeeps object and relationship design explicit when a Salesforce cloud or industry model uses specialized data structures.
Veryfront uses these practices to keep the Salesforce integration portable. The profile records how a specific org models customer context, while Salesforce permissions and metadata decide what the connected user can actually read or write.

Safety model

Read tools can use broad Salesforce metadata and query capability, but write tools stay narrow. Veryfront treats Salesforce writes as explicit capability grants. A project can allow add_case_comment without allowing generic record creation, updates, or deletes. SOQL execution is read-only, bounded, and validated before execution. This keeps support automation useful while preventing agents from receiving unrestricted Salesforce mutation access.

Current status

The current Salesforce integration exposes Service Cloud and Sales Cloud tools plus metadata and SOQL fallback tools. The first default profile assumes Account, Contact, Case, CaseComment, and KnowledgeArticleVersion. The scalable production path is to make that profile explicit per connection or project, validate it with describe_object, and generate agent instructions from the validated profile.