Dashboard

Database
bi_scraper@localhost
Mindbody Credentials
Configured
ClassPass Credentials
Configured
Mindbody Reports
2
ClassPass Reports
0

API Endpoints

Method Endpoint Description
GET /api/attendance-report?location_id=1&start=2026-06-01&end=2026-06-30 Get Mindbody attendance report (cached or live)
POST /api/attendance-report/refresh Force refresh Mindbody report — body: {"location_id":1,"start":"2026-06-01","end":"2026-06-30"}
GET /api/attendance-report/aggregate?start=2026-06-01&end=2026-06-30 Aggregate all locations for date range
GET /api/classpass-report?start=2026-05-01&end=2026-05-31 Get ClassPass report (cached or live)
POST /api/classpass-report/refresh Force refresh ClassPass report — body: {"start":"2026-05-01","end":"2026-05-31"}
GET /api/health Health check
GET /api/config View configuration (non-sensitive)
GET /api/scrape-log Recent scrape operations
POST /api/database/clear Clear all stored data (use with caution)

Recent Mindbody Reports

Location Start End Scraped At Stale?
Belsize Park (1) 2026-06-01 2026-06-30 2026-07-09 04:53:37 No
Belsize Park (1) 2025-06-01 2025-06-30 2026-07-09 04:48:47 No

Recent ClassPass Reports

No ClassPass reports stored yet. Use the ClassPass page to fetch data.

Recent Scrape Log

Time Source Location Date Range Status Error
2026-07-09 05:07:42 classpass 2025-06-01 → 2025-06-30 error ClassPass login failed — still on login page
2026-07-09 05:06:33 classpass 2025-06-01 → 2025-06-30 error ClassPass login failed — still on login page
2026-07-09 05:05:21 classpass 2025-06-01 → 2025-06-30 error ClassPass login failed — still on login page
2026-07-09 05:04:16 classpass 2025-06-01 → 2025-06-30 error ClassPass login failed — still on login page
2026-07-09 05:02:36 classpass 2025-06-01 → 2025-06-30 error cannot import name 'stealth_sync' from 'playwright_stealth' (/home/ubuntu/.local/lib/python3.12/site-packages/playwright_stealth/__init__.py)
2026-07-09 05:01:44 classpass 2025-06-01 → 2025-06-30 error No login form found on ClassPass login page. URL: https://studios.classpass.com/login
2026-07-09 04:53:37 mindbody 1 2026-06-01 → 2026-06-30 success
2026-07-09 04:52:35 mindbody 1 2026-06-01 → 2026-06-30 success
2026-07-09 04:52:28 mindbody 1 2026-06-01 → 2026-06-30 success
2026-07-09 04:52:18 mindbody 1 2026-06-01 → 2026-06-30 success
2026-07-09 04:48:47 mindbody 1 2025-06-01 → 2025-06-30 success
2026-07-09 04:47:49 mindbody 1 2025-06-01 → 2025-06-30 success
2026-07-09 04:47:02 mindbody 1 2025-06-01 → 2025-06-30 error Frame.wait_for_selector() got an unexpected keyword argument 'poll_interval'
2026-07-09 04:46:12 mindbody 1 2025-06-01 → 2025-06-30 error Report form not found inside portal iframe
2026-07-09 04:44:59 mindbody 1 2025-06-01 → 2025-06-30 error Report form not found inside portal iframe
2026-07-09 04:43:50 mindbody 1 2025-06-01 → 2025-06-30 error Report form not found inside portal iframe
2026-07-09 04:42:44 mindbody 1 2025-06-01 → 2025-06-30 error Report iframe (portal) not found on AttendanceReport page
2026-07-09 04:41:37 mindbody 1 2025-06-01 → 2025-06-30 error Report form not found inside portal iframe
2026-07-09 04:40:08 mindbody 1 2025-06-01 → 2025-06-30 error No report form found. URL: https://clients.mindbodyonline.com/app/business/AttendanceReport
2026-07-09 04:38:06 mindbody 1 2025-06-01 → 2025-06-30 error No report form found. URL: https://clients.mindbodyonline.com/app/business/AttendanceReport

Danger Zone

Clear all stored scraper data. This cannot be undone.