Subaccount: Posture Vision (Fort Myers, FL)
Location ID: wvQwMzyXRjFdLc5UInJZ
Workflows URL: https://app.gohighlevel.com/v2/location/wvQwMzyXRjFdLc5UInJZ/automation/workflows
Build time: ~30 min for all 3 workflows
Date: May 18, 2026
PV - Foundation Cohort Outreach — 5-touch insider campaign May 24–Jun 8 (300 patients)PV - Slot Decision Webhook — round-trip to lead-seg-worker for calendar uncertaintyPV - Foundation Cohort Conversion Hook — Stripe → tag + counter increment + PushoverPlus 2 optional support builds: 4. PV AI Conversational Agent — paste system prompt 5. Custom fields setup — counters + flags Workflows 1 + 3 need
Do them in this order — 4 prerequisites first, then workflows that depend on them.
Settings → Custom Fields → Add Field
| Field name | Type | Used by |
|---|---|---|
foundation_cohort_count |
Numeric | Workflow 3 increments on each conversion |
foundation_cohort_locked |
Single checkbox | Workflow 3 flips to TRUE on conversion |
foundation_cohort_lapsed |
Single checkbox | Workflow 1 flips to TRUE on June 8 if not converted |
foundation-cohort-2026 (manually applied to 300 patients before May 24)foundation-cohort-converted (applied by Workflow 3 on Stripe webhook)foundation-cohort-lapsed (applied by Workflow 1 on June 8)Contacts → All Contacts → filter to your patient list (probably by source = "Patient" or by date range matching when they were in your clinic). Select all → Bulk Actions → Add Tag → foundation-cohort-2026.
⚠️ Critical: do this before May 24 10:00 AM ET. The tag is the trigger.
PV - Foundation Cohort OutreachPV - Foundation Cohort Outreachfoundation-cohort-2026Action 1 — Wait until May 24, 10:00 AM ET
Action 2 — Email (Touch 1)
Something I've been building for youTwo years of work — and you're the first to see it.Dr. Brian HutchesonFOUNDATION_COHORT_SEQUENCE.md Touch 1 (copy/paste the body block, replace [First Name] with {{contact.first_name}})Action 3 — Wait 2 hours
Action 4 — If/Else: Email opened?
Email Activity > Action 2 > Opened > NoAction 5 (NO branch only) — Send SMS
Hey {{contact.first_name}} — Brian here. Just sent you something I wanted you to see before anyone else. Check your email when you have a sec. — BHAction 6 — Wait until May 27, 9:00 AM ET
Action 7 — Email (Touch 2)
Here's what I mean — 90 seconds of meFilmed it this morning. Wanted you to see it in my actual office.[Embedded video] is — use whatever you uploaded to YouTube/Vimeo unlisted)Action 8 — Wait until May 29, 8:00 AM ET
Action 9 — Email (Touch 3, the offer)
30 spots, $9.99/mo for life, here's whyIt's not a marketing tactic. It's something I owe you.[click here] link should be https://posture.vision/foundation?ref={{contact.id}} so we can attribute conversions back to this emailAction 10 — Wait 9 hours
Action 11 — If/Else: Email opened AND tag foundation-cohort-converted not added?
Action 12 (YES branch only) — SMS
Hey {{contact.first_name}} — Brian. Did you get the Foundation Cohort email? 30 spots, $9.99/mo locked for life. Wanted to make sure it landed. — BHAction 13 — Wait until June 1, 7:00 AM ET
Action 14 — Email (Touch 4, launch day)
Launch day. And — thank you.Twelve of you have already locked in. Here's where we're at.[X] of 30 count — use the custom field {{custom_values.foundation_cohort_count}}; the workflow's manual is fine for week one since the count starts at 0 and the email cadence is fixed)Action 15 — Wait until June 4, 10:00 AM ET
Action 16 — If/Else: tag foundation-cohort-converted NOT added AND foundation_cohort_count < 30?
Action 17 (YES branch only) — Email (Touch 5, closing)
Closing the Foundation Cohort windowAction 18 — Wait until June 8, 11:59 PM ET
Action 19 — If/Else: tag foundation-cohort-converted NOT added?
Action 20 (YES branch only) — Apply tag foundation-cohort-lapsed
Action 21 — Remove tag foundation-cohort-2026
Action 22 — End workflow
PV - Slot Decision WebhookThis one rides on top of GHL's AI Agent. The agent classifies inbound conversations; when it detects "patient is asking for a specific time slot and we need Brian's call," it fires this workflow.
PV - Slot Decision Webhookbooking-slot-uncertainAction 1 — Webhook POST to lead-seg-worker
https://lead-seg-worker.fly.dev/agent/slot-request{
"contactId": "{{contact.id}}",
"contactName": "{{contact.first_name}} {{contact.last_name}}",
"contactEmail": "{{contact.email}}",
"requestedSlot": "{{ai_agent.extracted.requested_slot_iso}}",
"agentNote": "{{ai_agent.summary}}",
"subaccount": "PV",
"callbackURL": "https://services.leadconnectorhq.com/hooks/{{workflow.callback_url}}"
}
Action 2 — Wait for callback
Action 3 — If/Else on decision
decision fieldapprove: book the slot in GHL calendar + send patient "confirmed" SMSdecline: send patient "Brian's not available then — here's the link to pick another time"suggest-alt: send patient "Brian's offering [{{webhook.altSlot}}] instead — confirm?"PV - Foundation Cohort Conversion HookFires when a Foundation Cohort patient completes Stripe checkout.
foundation_cohort_999_monthlyAlternative: if you trigger from Stripe webhook directly, set the webhook URL to your worker, have the worker POST a GHL inbound webhook with the contact info.
Action 1 — Apply tag foundation-cohort-converted
Action 2 — Update custom field foundation_cohort_locked = TRUE
Action 3 — Update custom field foundation_cohort_count (increment by 1)
Action 4 — Webhook POST to Pushover (notify Brian)
https://api.pushover.net/1/messages.json{
"token": "{{Pushover app token from your env}}",
"user": "{{Pushover user key}}",
"title": "🎉 Foundation lock-in",
"message": "{{contact.first_name}} {{contact.last_name}} just locked in. Count: {{custom_values.foundation_cohort_count}}/30."
}
⚠️ Pushover credentials shouldn't be in the workflow body — instead, hit your worker's /admin/notify-conversion endpoint and let the worker hold the secret. (We can add that endpoint in 5 min — say the word.)
Action 5 — Remove from Workflow 1
Action 6 — Add to Workflow 6 (Foundation Cohort Members)
URL: https://app.gohighlevel.com/v2/location/wvQwMzyXRjFdLc5UInJZ/conversation-ai/conversation-ai-list
Elina — PostureVision## System Prompt (paste into GHL — version for PostureVision subaccount) block from Code/lead-seg-worker/GHL_AGENT_SPEC.mdbook-slot (calls the calendar widget)send-link (sends a tracked link to the contact)escalate-to-Brian (creates a task)slot-decision-request (fires Workflow 2's webhook — this is the bridge to the slot-decision tap flow)Repeat steps for the DH subaccount (different system prompt — DH version in same spec file).
Workflow 1 not firing on May 24?
foundation-cohort-2026Touch 4 shows "X of 30" with X = 0?
{{custom_values.foundation_cohort_count}} which Workflow 3 increments.Slot-decision tap page loads but won't accept the tap?
flyctl logs -a lead-seg-worker | grep slot-decisionNOTION_SLOT_DECISIONS_DB_ID env var not set on Fly. Set it.When all of these are green:
When this list is checked off, you can sleep through May 24 launch day and the engine handles it.