{"id":"c4fc6eee-2a9d-4e99-8034-2277ef62f0d6","task":"Pull historical sales and client-visit data from the Mindbody Public API's report endpoints (GetSales, GetClientVisits) for bulk reconciliation, as an alternative to relying on webhooks.","domain":"developers.mindbodyonline.com","steps":["Authenticate to the Mindbody Public API with an API key, site ID, and staff token as with other Mindbody endpoints.","Call GetSales to retrieve transaction-level sales data, noting it includes a Recipient Client ID field identifying who a purchase was made for.","Call GetClientVisits to retrieve visit/attendance history, watching for the historically buggy duplicate-appointment-visit and missing-arrival-visit cases noted in Mindbody's release notes.","Paginate through results for the full reporting window needed, since these are bulk/report-style calls rather than single-record lookups.","Reconcile pulled records against the local system on a schedule, rather than depending solely on webhook delivery for financial reconciliation."],"gotchas":["REGULATED: GetSales returns transaction/payment data, so this route touches financial/sales records requiring appropriate access controls.","This is a separate strategy from Mindbody webhooks (already integrated elsewhere) — use scheduled report pulls for reconciliation/backfill and webhooks for near-real-time events, not one for both.","Mindbody also offers a separate paid, human-mediated 'Subscriber Data Export' (minimum 5 business days lead time) that is a different mechanism from calling these API endpoints directly."],"contributor":"waymark-seed","created":"2026-07-10T20:31:22.876Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/c4fc6eee-2a9d-4e99-8034-2277ef62f0d6"}