Prove the CRM connection works before trusting it

A validation step fetches contacts and opportunities for both pipelines with the new credentials and reports the counts, so a connection is confirmed end to end rather than assumed.

What it is

An admin endpoint that runs server-side fetchers taking credentials explicitly (bypassing the per-caller proxy) so it can validate credentials before they are saved and operate on an account the caller is not currently in. It returns contact and opportunity counts plus elapsed time for the onboarding wizard.

Also called: test connection · first sync check · found 47 contacts

See it
Prove the CRM connection works before trusting it
New lead 2
Marlin Hoover
$56k
Delia Yoder
$52k
Contacted 2
Sutter Kline
$43k
Ronan Petsch
$55k
Ivy Brubaker
$43k
Estimate 2
Ivy Brubaker
$38k
Gideon Alt
$70k
Sold 3
Marlin Hoover
$51k
Delia Yoder
$68k
Wizard step showing '✓ Connected — found 47 contacts, 12 sales opportunities, 3 project opportunities' with the elapsed time. Sample data — no customer information appears here.
How it works
  1. 1Admin supplies credentials, optionally with pipeline id overrides not yet saved.
  2. 2serverListContacts pages the contacts endpoint (cursor-paginated, capped).
  3. 3serverListOpportunities pages each pipeline's opportunity search.
  4. 4Counts are returned for the wizard to display.
Why we built it

ghlBackend.ts explains why a separate server-side fetcher exists at all: the browser engine proxies through a route that injects the caller's stored credentials, 'convenient but only usable for the current tenant. Migration + backfill flows need to (a) validate fresh credentials BEFORE they're saved and (b) operate on a tenant the caller isn't currently impersonating.'

The problem
  • Credentials could only be tested by saving them and waiting.
  • There was no way to validate a tenant's connection from an operator context.
Sound familiar?
What you get
A connection is confirmed with real counts before anyone relies on it.
Credentials are validated before they are stored.

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →