How it Works

Everything your agency needs
to own appointment data

Built for multi-location GHL agencies. Real time sync, role based access, and a built in client portal. No automation tools. No per seat pricing. No shared OAuth.

01 / 08Security
Security

Private Integration Tokens

Each GHL location connects via its own pit- token — no shared OAuth app, no token expiry headaches, no automation middleware required.

Encrypted at rest
Tokens stored encrypted in the database, never exposed to the browser
One token per location
Full isolation between GHL sub-accounts — no cross-location access
Auto-revoke detection
401 / 403 responses automatically flag the location as key_revoked

Get Started

Live in four steps

No complex OAuth setup. No shared app credentials.
Just your locations, your tokens, your data.

1
Create your account
Sign up as an agency admin. Your workspace is isolated — no data crosses tenant boundaries.
2
Add your GHL location
Paste your pit- token from GHL Settings → Private Integrations. We validate it instantly.
3
Sync & assign access
Run a calendar sync to pull all calendars. Assign Manager and Member access per-calendar with a single toggle.
4
Watch it update live
Point your GHL webhooks at ApptFlow. Appointment changes appear in under 5 seconds — no manual refresh needed.