Architecture Gap Identified

The current specs assume the Distribution Engine can publish to Instagram/Facebook/GBP per practice, but none of these are documented:

These wireframes explore 5 approaches to solving this gap.

Variation 1 of 5

Network Directory

Table-first view for HQ Operations — see all 260+ practices, their connection status across every channel, at a glance. Filter by brand, region, or connection health. Click any practice to drill into its setup.

Social Connections Network View
Export CSV + Connect Practice
264
Total Practices
218
Fully Connected
31
Partial
8
Expired Tokens
7
Not Connected
Brand: All ▾ Region: All ▾ Show Issues Only Showing 264 of 264 practices
Practice Brand / Region 📷 IG 📘 FB 📍 GBP 📧 Weave 📺 TV Status
Bright Smiles Tulsa
ID: SGA-047 · Joined Mar 2025
SGA Legacy
South Central
📷
📘
📍
📧
📺
All Connected
Gen4 Midtown OKC
ID: G4-012 · Joined Jan 2026
Gen4
Oklahoma
📷
📘
📍
📧
📺
GBP Expired
MODIS Downtown Dallas
ID: MOD-003 · Joined Nov 2025
MODIS
Texas
📷
📘
📍
📧
📺
All Connected
SGA Legacy #89 — Broken Arrow
ID: SGA-089 · Joined Jun 2025
SGA Legacy
Oklahoma
📷
📘
📍
📧
📺
2 Expired
Bright Smiles Norman
ID: SGA-052 · Joined Apr 2025
SGA Legacy
Oklahoma
📷
📘
📍
📧
📺
Not Setup
Showing 5 of 264 practices · Load more ↓

Best for: HQ Operations managing the network at scale. Immediately see which practices need attention. The "Show Issues Only" filter is critical — at 260+ practices, you only want to see the broken ones. Click any row to drill into Variation 4 (practice detail).

· · · · ·
Variation 2 of 5

Practice Setup Wizard

Step-by-step onboarding flow for connecting a single practice's social accounts. Could be used by HQ Ops during enrollment or sent as an invite link to the practice manager. Each channel walks through OAuth → verify → configure posting preferences.

Setup Wizard
Bright Smiles Tulsa
SGA Legacy · SGA-047
Practice Profile
Name, brand, region
Instagram
@brightsmilestulsa
Facebook Page
Bright Smiles Tulsa
4
Google Business
Connect GBP listing
5
Weave
Email + TV slides
6
Posting Preferences
Defaults, schedule
7
Review & Confirm
Final check

Connect Google Business Profile

Link this practice's Google Business listing so approved content can be published as GBP posts and photos. You'll need admin access to the Google Business Profile for this location.

Already Connected
📷 @brightsmilestulsa
📘 Bright Smiles Tulsa
📍
Google Business Profile
Connect your Google Business listing to publish posts, photos, and updates directly from the Content Engine.
Sign in with Google →
After connecting, you'll:
1. Select the correct location from your Google account (if multiple)
2. Verify the listing name and address match this practice
3. Choose which content types to auto-publish (posts, photos, or both)
4. Set a preferred posting schedule (or use network default)
Don't have GBP admin access? You can skip this step and send an invite link to the practice manager. They can connect their Google account from their own device.
📧 Send Invite Link Skip for Now →
← Back: Facebook Next: Weave →

Best for: Initial practice onboarding. The wizard reduces cognitive load — one channel at a time. The "Send Invite Link" option is key for GBP where the practice manager likely owns the Google account, not HQ. This could be embedded in the enrollment pipeline (NI-7) as step 8 of 12.

· · · · ·
Variation 3 of 5

Connection Health Dashboard

Monitoring-first view — designed for the ops person whose job is "make sure nothing is broken." Channel-level health scores, expiring tokens, failed posts, and a heatmap of the entire network's connection status.

Connection Health Network Status
Last 30 Days Export Report Fix All Issues →
📷
Instagram
241 connected
4 expired
19 not setup
91% healthy
📘
Facebook
248 connected
3 expired
13 not setup
94% healthy
📍
Google Biz
232 connected
8 expired
24 not setup
88% healthy
📧
Weave Email
209 connected
1 error
54 not setup
79% healthy
📺
TV Slides
186 connected
78 not setup
70% healthy
🖨️
Print / Gelato
264 available
(network-wide, no per-practice auth)
100%
Issues Requiring Action 16 total
⚠️
Token Expired — SGA Legacy #89 Broken Arrow
Instagram + Facebook tokens expired 3 days ago. 4 scheduled posts are queued and blocked.
3 days
Re-auth →
⚠️
GBP Listing Mismatch — Gen4 Midtown OKC
Google Business name changed from "Gen4 Dental" to "Gen4 Family Dentistry." Verify this is intentional.
1 day
Review →
🔔
Token Expiring Soon — 12 practices
Instagram tokens for 12 practices expire within 14 days. Send bulk re-auth request?
14 days
Bulk Re-auth
📋
+ 13 more issues (7 not-setup warnings, 4 token expirations, 2 API errors)
View All →
Network Connection Heatmap Each cell = 1 practice. Color = connection health.
All connected Partial Issues Not setup
047
048
049
050
051
052
053
054
055
056
057
058
059
060
061
062
063
064
065
066
067
068
069
070
071
072
073
074
075
076
077
078
Showing 32 of 264 practices · Click any cell to view practice detail

Best for: The ops person responsible for "everything stays connected." The heatmap gives instant visual status at scale. The issues panel is actionable — "Bulk Re-auth" for expiring tokens is critical at 260+ practices. Proactive token expiry warnings (14-day heads up) prevent distribution failures.

· · · · ·
Variation 4 of 5

Single Practice Detail

Deep dive into one practice's connections — see every connected channel, posting preferences, token health, and recent distribution activity. This is where you land when you click a practice from the Network Directory (Var 1) or Health Dashboard (Var 3).

🦷
Bright Smiles Tulsa
SGA Legacy SGA-047 South Central Region 5/5 Connected
Edit Practice → Run Setup Wizard
Connected Channels + Add Channel
📷
Instagram
@brightsmilestulsa · 2,847 followers
Token expires: Aug 14, 2026 130 days
Manage
📘
Facebook Page
Bright Smiles Tulsa · 4,122 likes
Token expires: Aug 14, 2026 130 days
Manage
📍
Google Business Profile
Bright Smiles Dental — Tulsa
4.8★ (312 reviews) · Verified owner
Manage
📧
Weave — Email Campaigns
Connected via Weave API
3,200 active patient contacts
Manage
📺
Weave — TV Slides
Welcome space display connected
2 screens active · Auto-rotation ON
Manage
Posting Preferences Edit
Auto-publish approved content
Require practice approval before publish
Post to Instagram
Post to Facebook
Post to Google Business
Max posts per day 3
Preferred posting times 9am, 12pm, 5pm
Recent Distribution Last 7 days
Team Photo → IG, FB, GBP
Today, 2:30 PM · 142 IG likes, 38 FB reactions
Provider Portrait → IG, FB
Yesterday, 9:00 AM · 89 IG likes, 22 FB reactions
Office Tour Clip → IG Reel, FB
Apr 3 · 1,204 IG views, 67 FB views
TV Slides Updated → Weave TV
Apr 2 · 5 new slides deployed

Best for: Drilling into one practice's complete social setup. This is the "manage" view — edit connections, update preferences, see what's been published. The token expiry countdown is critical — shows exactly when each connection needs re-auth, letting ops be proactive rather than reactive.

· · · · ·
Variation 5 of 5

Bulk Onboarding Flow

SGA acquires practices in batches. This flow handles connecting 10, 20, or 50 practices at once — send invite links, track who's connected, follow up on stragglers. The "enrollment blitz" view for when a new batch of practices joins the network.

Bulk Onboarding Batch: Q2 2026 Acquisitions
Save Draft Cancel
Select Practices
Verify Info
3
Send Invites
4
Track Connections
5
Confirm & Activate

Send Connection Invites

Choose how practice managers will connect their social accounts. Each practice manager receives a unique link to authorize their Instagram, Facebook, and Google Business accounts.

📧
Email Invite
Send a branded email with a secure link. Practice manager clicks, logs into each platform, and authorizes. Average completion: 72% within 48h.
📱
SMS Invite
Send a text with a short link. Higher open rate (98%) but some managers prefer email for "official" requests. Average completion: 68% within 24h.
Practice
Manager Email
📷
📘
📍
📧
Invite Status
New Smile Dental
Arlington, TX · SGA Legacy
lisa@newsmile.com
Ready to Send
Premier Family Dental
Plano, TX · Gen4
mgr@premierfamily.com
Ready to Send
Gentle Care Dental
Frisco, TX · MODIS
admin@gentlecare.com
Ready to Send
+ 9 more practices in this batch
Email Preview
From: SGA Dental Partners <platform@sgadental.com>
Subject: Connect Your Social Accounts — 5 min setup
Hi [Manager Name],

Welcome to the SGA Content Engine! To start receiving professionally designed social posts for [Practice Name], we need to connect your social media accounts.

Connect Your Accounts →
This takes about 5 minutes. You'll log into Instagram, Facebook, and Google to grant posting permission. Your login credentials are never stored — we use secure OAuth tokens that you can revoke at any time.

— SGA Content Team
Edit Template Preview as Manager

Best for: Batch acquisitions. SGA acquires practices in groups, not one at a time. This flow handles the reality of "12 new practices just joined, get them all connected." Step 4 (Track Connections) would show real-time status as managers complete their OAuth flows — with automatic reminders for stragglers after 48h. The email preview ensures brand consistency in the invite itself.

How These Fit Together

These 5 views compose into a complete Practice Social Connections system:

Onboarding (new practices): Var 5 (Bulk) → Var 2 (Wizard per practice) → lands in Var 4 (Detail)
Daily monitoring: Var 3 (Health Dashboard) → click issue → Var 4 (Practice Detail) → re-auth
Network management: Var 1 (Directory) → filter/sort → Var 4 (Detail) for any practice

Data model implication: needs a new `shared.practice_social_connections` table with columns for practice_id, channel, account_id, account_name, token_ref (AWS Secrets Manager ARN), token_expires_at, connection_status, connected_by, connected_at. The Distribution Engine routes content by joining this table with `practice_id` from the approved asset.