Connections
System → Integrations (/integrations) has two tabs. Both store their
credentials in the same per-user integrations table, and PULSE seals access
and refresh tokens before writing them to the database.
The Accounts tab covers four platforms and uses
IntegrationService.ConfigureIntegration.
| Platform | What you paste |
|---|---|
| An access token, and optionally an account ID | |
| An access token, and optionally an account ID | |
| Google Analytics | The full JSON key of a Google Cloud service account with access to the GA4 property, and the numeric Property ID (GA4 Admin → Property Settings). Both are required. |
| Google Ads | The JSON key of a service account with domain-wide delegation (scope adwords), the Ads Customer ID, a Developer Token, an optional Login Customer ID (manager account), and the Subject email the service account impersonates. All but the login customer ID are required. |
Test checks the credentials (TestConnection) and records the result as the
integration’s status. For Google Analytics and Google Ads, PULSE runs a real API
check with its own client. For LinkedIn and Instagram it calls the platform’s
profile endpoint with your token.
Disconnect removes the stored credentials (DisconnectIntegration).
What each connection unlocks
HubSpot
- Leads → Sync Now pulls contacts. Without HubSpot you get
HubSpot isn't connected yet — configure it on the Integrations page first. - Find Leads pushes new prospects to HubSpot.
- The daily churn engine reviews synced leads.
- The WhatsApp edge allows only senders who are contacts in HubSpot. See Telephony and messaging.
Google Analytics
The Trends tab on Insights: sync, trends, and forecasts. Without it you
get Google Analytics isn't connected yet — configure it on the Integrations page first.
GitHub
- Blog publishing to your website opens a pull request, or pushes a commit,
with this token. The target repository is set by the administrator in
PULSE_SITE_REPO, not here. See Site pipeline. - Audit fixes in
prmode open a pull request against theownerandrepoyou set on this connection. Ifrepois missing you getgithub integration is missing a target owner/repo.
LinkedIn and Instagram
These store a token and can be tested. The scheduled LinkedIn publisher does not use the token you paste here: it uses an operator-supplied token. There is no working Instagram publisher yet. See which channels can publish.