Set up client credentials flow
Important
Atlan currently supports Salesforce Sales Cloud and Financial Services Cloud (FSC).
Atlan supports the Salesforce OAuth 2.0 client credentials flow for server-to-server integration. This flow enables Atlan to authenticate using a dedicated integration user and an external client app in Salesforce, providing secure, non-interactive access to Salesforce metadata and data for crawling.
Prerequisites
Before you begin, make sure you have:
- Salesforce administrator access
- Network connectivity between Atlan and your Salesforce instance
Create custom profile
Create a custom profile to manage permissions for the integration user:
- From Setup, enter
profiles
in the Quick Find box and select Profiles. - Click New Profile.
- Select Standard User from the Existing Profile dropdown to clone.
- Enter a name, for example
AtlanIntegrationProfile
. - Click Save.
- On the new profile page, click Edit.
- Under Connected App Access, check the External Client App you create.
- Under Administrative Permissions, uncheck all except:
- API Enabled
- View All Data
- Under Standard Object Permissions and Custom Object Permissions, select Read and View All for all items.
- Click Save.
Create integration user
Create a dedicated Salesforce user for the external client app:
- From Setup, expand Administration → Users and click Users.
- Click New User.
- Enter required details: First Name, Last Name, Username, Email, Nickname.
- Select Salesforce for User License.
- Assign the custom profile created in the previous step.
- Click Save.
Create external client app
Set up the external client app for client credentials flow:
- From Setup, enter
external client app manager
in Quick Find and select External Client App Manager. - Click New External Client App.
- Enter:
- External Client App Name: for example,
AtlanIntegration
- Contact Email: your email
- Distribution State: Local
- External Client App Name: for example,
- Expand API (Enable OAuth Settings):
- Check Enable OAuth
- Set Callback URL:
https://localhost
(placeholder, unused) - Move the following scopes to Selected OAuth Scopes:
- Manage user data via APIs (api)
- Perform requests at any time (refresh_token, offline_access)
- Access Lightning applications (lightning)
- Under Flow Enablement, check Enable Client Credentials Flow.
- Enable:
- Require Secret for Web Server Flow
- Require Secret for Refresh Token Flow
- Optional hardening:
- Require Proof Key for Code Exchange (PKCE)
- Enable Refresh Token Rotation
- Issue JSON Web Token (JWT)-based access tokens
- Click Create.
- On the app details page, copy the Consumer Key (Client ID) and Consumer Secret from OAuth Settings.
- Store these credentials securely—they're required to configure the Atlan connection.
Configure policies
- From External Client App Manager, locate your app and click Edit.
- Open the Policies tab.
- Set Start Page to None.
- Move the integration custom profile to Selected Profiles.
- If using permission sets, move relevant sets to Selected Permission Sets.
- In OAuth Policies, set:
- Permitted Users: Admin approved users are pre-authorized
- OAuth Start URL: leave blank unless required
- In OAuth Flows and External Client App Enhancements:
- Check Enable Client Credentials Flow
- Run As (Username): enter the integration user username
- Set additional policies as required (IP Relaxation, Session Timeout, Refresh Token Policy)
- Click Save.
Troubleshooting
If you encounter issues with Client Credentials authentication, see Troubleshooting Salesforce Connectivity.
Next steps
- Crawl Salesforce to configure the connection in Atlan.