Connecting Integrations
This guide walks you through connecting your first external data source to Apex. The process is the same for all OAuth-based connectors — the only difference is which platform's consent screen you'll see.
Before You Start
Make sure you have:
- Admin or manager access to the platform you want to connect (Google Ads, HubSpot, etc.)
- An Apex account with a project set up
Step-by-Step
Go to the Sensors page
In the dashboard sidebar, click Sensors. You'll see cards for each available connector, organized by category: Ads, CRM, Payments, and Analytics.
Find your connector and click Connect
Each card shows the connector name, a brief description, and its current status. Cards that aren't connected show a Connect button.
Authorize on the platform
You'll be redirected to the platform's consent screen (Google, LinkedIn, Meta, HubSpot, or Stripe). Sign in with an account that has the necessary permissions and authorize Apex to read your data.
For Microsoft Clarity, you'll paste an API key instead of going through OAuth.
Select an account (if applicable)
Most platforms support multiple accounts (ad accounts, properties, portals). After authorizing, Apex lists all accounts you have access to. Select the one you want to sync.
Verify the connection
After setup, the connector card shows a green Connected badge. Apex runs an initial validation to confirm it can reach the platform's API with your credentials.
Trigger the first sync
Click Sync Now on the connector card to pull data immediately. You can also wait for the automatic sync schedule to run.
What Happens During a Sync
When a sync runs, Apex:
- Checks if the access token is still valid (refreshes it if needed)
- Calls the platform's API to fetch data for the configured date range
- Normalizes the data into Apex's unified format
- Stores the results and updates the "Last synced" timestamp on the card
The entire process typically takes a few seconds. You can monitor sync status and history on each connector card.
Info
Apex handles token refresh automatically. If your access token expires, the framework uses the stored refresh token to get a new one before syncing. You don't need to re-authorize unless the refresh token itself is revoked.
Verifying Your Data
After the first sync:
- Go to the Dashboard — channel performance data should appear within a minute
- Check the connector card's Activity Log for sync results (rows imported, duration, any errors)
- If you connected an ad platform, verify that spend and click data match what you see in the platform's own reporting
Warning
Small discrepancies between Apex and the platform's native reporting are normal. They can be caused by timezone differences, attribution model differences, or data processing delays on the platform side.
Disconnecting a Connector
To disconnect:
- Find the connector card on the Sensors page
- Click the settings icon (gear) on the card
- Click Disconnect
- Confirm the disconnection
Disconnecting revokes the OAuth token and removes stored credentials. Historical sync data is preserved.
Troubleshooting
| Issue | Cause | Fix |
|---|---|---|
| Redirect fails after authorization | Callback URL not registered | Ensure your Apex instance URL is in the platform's allowed redirect URIs |
| "Invalid grant" after connecting | Authorization code expired | The code has a short lifetime (~10 min). Try connecting again. |
| Sync shows 0 rows imported | No data in the selected date range | Expand the sync date range or verify data exists in the platform |
| Card stuck on "Syncing..." | Sync timeout or API rate limit | Wait a few minutes and click Sync Now again |
| "Token refresh failed" | Refresh token revoked or expired | Disconnect and reconnect the integration |
Recommended Connection Order
For the most complete growth picture, connect in this order:
- Tracking snippet — captures visitors and conversions on your site
- Ad platforms (Google Ads, Meta Ads, LinkedIn Ads) — brings in spend and campaign data
- CRM (HubSpot) — connects leads to deals and pipeline stages
- Payments (Stripe) — ties everything to actual revenue
- Analytics (Google Analytics, Clarity) — adds traffic context and behavior data
Each additional connector enriches Apex's attribution model and makes experiment analysis more valuable.
Next Steps
- Browse individual connector guides: Google Ads, Meta Ads, LinkedIn Ads, HubSpot, Stripe, Google Analytics, Microsoft Clarity
- Set up budget allocation once your ad platforms are connected
- View the dashboard to see your connected data