Salesforce
Overview
Birdie’s Salesforce connector lets you import key Salesforce entities (such as cases, emails, and accounts) into Birdie so you can centralize customer support and account data alongside other feedback sources.
Requirements
Birdie can authenticate to Salesforce using one of these flows. Which one you use depends on your IT/security policies.
Client credentials flow
Refresh token flow (recommended)
Username-password flow
Each flow requires a Salesforce domain and the connected app Client ID (consumer key) and Client Secret (consumer secret). The Refresh Token and Username-Password flows additionally require user-specific values.
Relevant Salesforce documentation:
Client credentials flow: https://help.salesforce.com/s/articleView?language=en_US&id=sf.remoteaccess_oauth_client_credentials_flow.htm&type=5
Refresh token flow: https://help.salesforce.com/s/articleView?id=sf.remoteaccess_oauth_refresh_token_flow.htm&type=5
Username-password flow: https://help.salesforce.com/s/articleView?id=sf.remoteaccess_oauth_username_password_flow.htm&type=5
Minimum required values by flow:
Client credentials flow
Domain: e.g. {DOMAIN}.salesforce.com
Client ID (consumer key)
Client Secret (consumer secret)
Refresh token flow
Domain: e.g. {DOMAIN}.salesforce.com
Client ID (consumer key)
Client Secret (consumer secret)
Refresh Token
Username-password flow
Domain: e.g. {DOMAIN}.salesforce.com
Client ID (consumer key)
Client Secret (consumer secret)
User (username)
Password
We recommend following the setup steps for the Refresh Token Flow.
Setup in Salesforce
To set up your Salesforce integration, you must configure a connected app in Salesforce. For the official Salesforce docs on connected apps, see: https://help.salesforce.com/s/articleView?id=sf.connected_app_overview.htm&type=5
Create a Connected App (Admin)
Log into Salesforce as an administrator.
Open Setup (Gear icon).
In the left pane go to: Platform Tools > Apps > App Manager.
Click "New Connected App" (upper right).
On the new connected app page, fill in the required Basic Information:
Connected App Name: Birdie Integration
API Name: Birdie_Integration
Contact Email: [email protected]
Scroll to "API (Enable OAuth Settings)" and select "Enable OAuth Settings". Fill in:
Callback URL: https://login.salesforce.com/
OAuth Scopes (select):
Manage user data via APIs (api)
Manage user data via Web browsers (web)
Perform requests at any time (refresh_token, offline_access)
Uncheck "Require Proof Key for Code Exchange (PCKE) Extension for Supported Authorization Flows"
(Optional) Check "Enable Client Credentials flow" (only if you want the client credentials flow)
Click Save.
After saving you will be redirected to the View page for your connected app.
Manage Connected App Policies
From Platform Tools > Apps > App Manager find your connected app and open Dropdown > View (or use the View page after creation).
Click "Edit Policies".
Recommended configurations to review:
Permitted Users: All users may self-authorize
IP Relaxation: Relax IP restrictions (Optional — only if your org uses IP enforcement)
Refresh token policy: Refresh token is valid until revoked (Optional — avoids frequently regenerating refresh tokens)
Client Credentials Flow - Run as: Select a user that has API permissions and access to the connected app (Optional — required only for client credentials flow)
Save policy changes.
Retrieve Client ID and Client Secret
From the connected app View page click "Manage Consumer Details".
Copy the Consumer Key and Consumer Secret — these are the Client ID and Client Secret that Birdie needs.
If using the Client Credentials flow, send the Domain, Client ID, and Client Secret to the Birdie team.
Connect to Birdie
If you are using the Client Credentials flow, share the Domain, Client ID, and Client Secret securely with the Birdie team.
If you are using the Refresh Token or Username-Password flows, follow the steps below to generate and share the additional required values.
Generating a Refresh Token (recommended)
If you opted to authenticate via a refresh token, follow these steps to generate and capture the refresh token.
Build Authorization URL and Authorize
Construct the authorization URL using this template:
Example (if domain is birdie and client id is 1234):
Open the URL in your web browser and authorize the Birdie connected app.
After authorizing you'll be redirected to the Salesforce login page. The browser URL will contain the authorization code in this pattern:
Copy the {CODE} value from the URL — you'll use it in the next step.
Notes and recommendations
Use the Refresh Token flow when possible — it avoids configuring a user for Birdie and simplifies token renewal.
If you choose Client Credentials flow, ensure the selected "Run as" user has API and connected app access.
Keep Client Secret and Refresh Token secure — treat them as sensitive credentials.
If you need help, provide Birdie the Domain, Client ID, Client Secret, and (if using refresh token flow) the Refresh Token.
Data in scope
This integration can import the following data from your Salesforce account:
Case: Represents a case, which is a customer issue or problem.
CaseComment: Represents a comment that provides additional information about the associated Case.
EmailMessage: Represents an email in Salesforce.
Account: Represents an individual account, which is an organization or person involved with your business (such as customers, competitors, and partners).
Last updated