What Sofie can use
Depending on Salesforce permissions and Sofie configuration, Sofie may help with:- Listing available standard and custom Salesforce objects.
- Describing object fields, picklists, relationships, and supported actions.
- Searching Salesforce records with keyword search.
- Querying Salesforce records with read-only SOQL.
- Reading specific records by object name and record ID.
- Preparing create, update, upsert, or delete actions for review.
- Using Salesforce context in chat or workflow handoff.
Before you start
You need:- Salesforce administrator access.
- Permission to create or manage the Salesforce OAuth app.
- A Salesforce user policy for who can authorize the app.
- The Sofie domain users open in the browser.
- Access to Sofie Organization Settings > Integrations.
- The Integrations feature and Salesforce integration feature enabled in Sofie.
- A decision about production, sandbox, or My Domain login.
Callback URL
Add this callback URL to the Salesforce app:Set up the app in Salesforce
Create the Salesforce app before entering values in Sofie.Open app setup in Salesforce
Create the app
Sofie Salesforce Integration.Enter contact details
Enable OAuth API settings
Add the callback URL
https://<your-sofie-domain>/api/integrations/callback/salesforce as a callback URL.Require PKCE when available
Add OAuth scopes
api and refresh_token or offline_access.Save the app
Copy OAuth values
Configure OAuth scopes
Sofie requests these Salesforce OAuth scopes:Configure app access in Salesforce
After creating the app, review its Salesforce access policy.- Decide whether all approved users can self-authorize or whether access is limited to assigned profiles or permission sets.
- Confirm connected users have Salesforce API access.
- Confirm object permissions and field-level security for the records Sofie should use.
- Review refresh token policy so users do not need to reconnect too often.
- Review IP, session, SSO, and MFA policies that can affect OAuth sign-in.
Copy Salesforce values
After saving the app, copy these values from Salesforce.Choose the auth base URL
Use the URL that matches the Salesforce org users should connect.Add values in Sofie
In Sofie, go to Organization Settings > Integrations and open Salesforce.Enable Salesforce
Choose the OAuth app source
Enter OAuth values
Save changes
Configure a group override
Use a group override when a specific group should connect to a different Salesforce app, sandbox, production org, or My Domain than the organization default. In Sofie, open the group, configure Salesforce in the group integration settings, and enter:- Client ID.
- Client Secret if required.
- Auth Base URL when the group should use a specific Salesforce login host.
Ask users to connect Salesforce
After the admin setup is saved, users connect their own Salesforce accounts from Sofie Integrations. When a user connects:- Sofie redirects the user to the configured Salesforce auth base URL.
- Salesforce asks the user to authorize the Sofie app.
- Sofie stores the user connection and Salesforce instance details.
- Sofie can only use Salesforce records available to that connected user.
refresh_token or offline_access.
Test the connection
Connect a representative test user
List available objects
Describe an object
Account, Case, or a custom object ending in __c.Search or query known records
Read record details
Test write behavior carefully
User prompt examples
Troubleshooting
Users cannot connect Salesforce
Users cannot connect Salesforce
api and refresh scopes, and the Salesforce app policy allows the user to authorize the app.Salesforce reports an invalid callback or redirect URI
Salesforce reports an invalid callback or redirect URI
Sofie asks users to reconnect Salesforce
Sofie asks users to reconnect Salesforce
refresh_token or offline_access. Confirm the Salesforce app includes the refresh scope, then ask users to reconnect.Sofie cannot find a record
Sofie cannot find a record
A sandbox user reaches production
A sandbox user reaches production
https://test.salesforce.com or your sandbox My Domain for sandbox testing.Record updates fail
Record updates fail