Skip to main content

Salesforce

The Salesforce connection authorizes FunnelStory to read your CRM data using OAuth. Use it to back data models (with SOQL in the model builder), to support CRM sync where your workspace writes selected fields back to Salesforce, and anywhere else the product surfaces Salesforce as a source.

What FunnelStory uses it for

  • Data models — Query Accounts, Opportunities, custom objects, and more using SOQL blocks or combined setups your workspace supports.
  • CRM sync — Optional outbound updates to Salesforce when configured separately.
  • Enrichment — Salesforce can participate in enrichment-style flows where your workspace enables it.

Before you connect

  • Use a dedicated Salesforce integration user. See Required permissions below for the specific System Permissions the integration user's Permission Set must include.
  • Know your Salesforce login URL (production, sandbox, or custom domain).

Add the connection in FunnelStory

  1. Open Configuration → ConnectionsAdd connection, then choose Salesforce.

  2. Complete the fields in the connection form:

Salesforce OAuth or environment step

FieldDescription
Connection nameHow this org appears in FunnelStory (for example Salesforce Production).
  1. Click Connect or Authorize to start OAuth.

  2. Approve the Salesforce consent screen and return to FunnelStory when prompted.

Salesforce connection connected

After you connect

  • For models, write SOQL using the block format in Writing queries.
  • Use Refresh on the connection or wait for scheduled syncs, per your workspace settings.

Required permissions

Create (or update) a Permission Set assigned to the integration user and enable the following under System Permissions:

PermissionWhy it's needed
API EnabledRequired for any programmatic access to Salesforce data.
View All UsersAllows FunnelStory to read User records across the org. Without this, standard fields like UserRoleId are hidden entirely — Salesforce returns "No such column" rather than an access error, which makes the cause hard to diagnose.
View Roles and Role HierarchyRequired for UserRoleId and related role fields to appear on the User object in SOQL queries.
View Setup and ConfigurationAllows FunnelStory to introspect org metadata (object descriptions, field lists) used when building data models.

Field-level security does not control UserRoleId or other standard User fields — these System Permissions do. If a SOQL query against User returns "No such column" for a standard field, check these four permissions first.

Object access

The integration user also needs Read access on every Salesforce object FunnelStory queries. Grant this through the user's Profile or a Permission Set under Object Settings:

ObjectTypical use
AccountCore account data for models and CRM sync.
OpportunityDeal data, stages, and revenue metrics.
CaseSupport ticket data and case metrics.
ContactContact-level data linked to accounts.
UserOwner lookups, role hierarchy, and user assignment data.
UserRoleRole names referenced via UserRole.Name in SOQL joins.

Grant Read on any custom objects or fields your data models reference.

CRM sync creates FunnelStory-owned custom objects in your Salesforce org. The integration user needs Create, Edit, and Read on those custom objects. After the first sync run, verify they appear in Setup → Object Manager and confirm the permission set grants access.

Flow functions (such as salesforce.create_record used in AI agent flows) write to standard and custom objects — for example creating Tasks, Notes, or updating Account fields. Grant Create and Edit on every object a flow function targets. Without these, flow runs will fail with a permission error at the point of the write.