New features
HubSpot contact sync (CE) Connect your HubSpot portal under Settings → Integrations → HubSpot and Encore keeps contacts in step automatically. Webhooks deliver changes from HubSpot within seconds. An incremental poll then catches anything a webhook misses — every 15 minutes by default, and configurable per organization between 5 and 120 minutes. The integration is inbound only in this release — Encore reads from HubSpot but does not write contact data back. Outbound sync arrives in a later release that requires a HubSpot Business Associate Agreement. Highlights:- One-click OAuth. Approve the consent screen in HubSpot; tokens are stored in the platform’s encrypted vault and never appear in the UI, database rows, or logs.
- Default field mappings, seeded on connect. Name, email, phones, address, and
lifecyclestage→ lead source details. Add mappings from the registry of safe Encore fields; clinical and insurance fields are structurally excluded. Re-connecting never overwrites your edits. - Duplicates are prevented, not created. Every incoming HubSpot contact goes through the same matching engine that guards manual entry and CSV imports. Deterministic matches link automatically; probable matches park in the duplicate review queue under the new sync and backfill source chips for a human decision.
- Onboarding backfill wizard. Scan your entire HubSpot book in dry-run mode, see exactly what will link, what needs review, and what will be created, then commit. The run checkpoints page by page and resumes from where it stopped if interrupted.
- Sync health and dead letters. A health card on the integration page shows the last webhook and last poll timestamps, and lists events that failed repeatedly. Admins can Retry (idempotent) or Discard each dead letter.
- Re-authorization handling. If HubSpot revokes credentials (for example the app is uninstalled from the portal), sync pauses cleanly, every org admin is notified, and a Reconnect banner appears on the settings page. Nothing queued is lost.