Overview
Upcoming Sessions
Next 30 days
Registrations (MTD)
Loading…
Revenue (MTD)
From paid sessions
Avg Fill Rate
Across all sessions
Men's Breathwork Women's Breathwork Somatic Support Full
SUN
MON
TUE
WED
THU
FRI
SAT
Today's Sessions
Loading…
Recent Registrations
Open the Registrations tab to load data here.
Events Manager
Loading events…
Registrations
Loading…
Analytics & Insights
Total Sessions
All time
Most Popular
Top Revenue Type
Avg Attendance
Of registered
Repeat Attendees
2+ sessions
Avg Fill Rate
Across sessions
Registrations by Session Type
Monthly Revenue
Fill Rate by Session Type
Sessions per Month
Attendance vs Registered (Monthly)
No-Show Rate by Session Type
Registration Timing
How many days before the session
Revenue per Session Type (Trend)
Bookings by Day of Week
Session Fill Rate Over Time
Practitioner Performance
Loading…
Email Center

✍️ This Week's Message

Next send: Monday

Add a personal note, optional title, and photo to this week's newsletter. Clears automatically after sending.

Loading…

Click or drag a photo to attach

JPEG · PNG · WEBP · GIF — max 5 MB

Attached photo
Auto
Day-of Instagram Story
Posts automatically at 8 AM each session morning.
Switch to Manual
Live
Morning Practitioner Email
Daily 8 AM with registrant list + attendance link, plus 1-hour reminder via Zapier
Live
Weekly Newsletter
Every Sunday 9 AM via Airtable automation to EFC Registrants list with upcoming sessions
Live
Registration Confirmation
Auto-sends branded confirmation on every new registration in Airtable
Live
Day-of + 1-Hour Reminder
Morning-of reminder at 9 AM plus scheduled 1-hour reminder to all registrants
Live
Post-Session Feedback
Feedback request to attendees the morning after each session ends
Not Built
Brevo List Sync
Auto-add new registrants to Brevo mailing list — not yet built
Activity Log
Open Email Center to load activity.
Instagram
Not connected
📸
Connect Your Instagram
Paste your Instagram Access Token in Settings to load your posts and stories automatically.
Step 1 — Make sure Instagram is set as a Professional (Business/Creator) account
Step 2 — Go to developers.facebook.com → My Apps → Create App
Step 3 — Add Instagram Basic Display product
Step 4 — Generate a Long-Lived Access Token
Step 5 — Paste in Settings → Instagram Access Token
Generated Images
🖼️
Connect Your R2 Image Library
Add the /images route to your Cloudflare Worker, then save your Worker URL + secret in Settings.
// Paste ABOVE the "Not found" line in your Worker: if (pathname === '/images') { if (request.method === 'OPTIONS') { return new Response(null, { headers: { 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Headers': 'x-neshamos-secret' }}); } if (request.headers.get('x-neshamos-secret') !== env.REQUEST_SECRET) return new Response('Unauthorized', { status: 401 }); const listed = await env.BUCKET.list({ prefix: 'posts/', limit: 200 }); const images = listed.objects.map(obj => ({ key: obj.key, url: env.R2_PUBLIC_URL + '/' + obj.key, uploaded: obj.uploaded, size: obj.size })); return new Response(JSON.stringify({ ok: true, images }), { headers: { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' } }); }
Practitioners
Loading…
Settings & Integrations
🔑 API Connection
🔒
efc-admin-api Worker — Connected & hardcoded
efc-admin-api.shrill-tooth-3358.workers.dev · All API keys stored as encrypted Cloudflare secrets
Live
To update the Worker URL or secret, edit the source code directly. To add or rotate Cloudflare secrets (Airtable key, Stripe key, etc.), go to dash.cloudflare.com → Workers & Pages → efc-admin-api → Settings → Variables.
👥 Team Access
Cloudflare Access — efc.neshamos.org is protected by Cloudflare Zero Trust
To add or remove team members, go to dash.cloudflare.com → Zero Trust → Access → Applications → EFC Dashboard → Edit policy and update the email whitelist.
🔗 Integration Status
Cloudflare Worker (Events) — efc-events.shrill-tooth-3358.workers.dev
Connected
Cloudflare Worker (Social) — neshamos-instagram.shrill-tooth-3358.workers.dev
Connected
Airtable — Emotional Fitness Center · appn0ed7vP6mFFM8J
Connected
Cloudflare R2 — neshamos-social · pub-c8d06bf1242e424da1936e4fc8e238e7.r2.dev
Connected
Instagram — Posts & stories feed
Paste access token above to connect
Not Connected
💳 Process Refund
This will issue a full refund via Stripe. The charge will be reversed and the customer will receive their money back within 5–10 business days.
Confirm
⚠ Cancel Session
THIS WILL: