Skip to content
APIANT
API ReferenceAPI Appsv2

Data Reference: Properties and Events

Every profile property and event CRMConnect writes into Klaviyo.

Everything CRMConnect writes into Klaviyo is listed on this page. Properties live on the client's Klaviyo profile and always reflect the current state; events are the timestamped history and never change once written. Mindbody-sourced items are prefixed MB so they are easy to find in segment builders and template editors.

How updates reach Klaviyo

Every property and event on this page updates on one of three rhythms:

  • Instant. Mindbody notifies the integration the moment something changes, and the update lands on the Klaviyo profile within seconds to about a minute. Client details, appointments, classes, sales, memberships, and contracts all move at this speed.
  • Every 15 minutes. A safety-net sweep reconciles appointment data, so even if a notification is ever missed, the profile catches up within a quarter hour.
  • Nightly. Visit-derived properties (last visit date, last location visited, the accumulating list of locations visited) are computed from yesterday's check-ins and refresh once per night. A daily sales sweep also reconciles purchase data; because every event carries a unique identifier, this pass can never create duplicates.

For the full timing story, see Sync timing and reliability.

Profile properties

Klaviyo native fields

These are written to Klaviyo's own standard fields, so everything in Klaviyo that reads them (previews, personalization tags, birthday flows) just works.

PropertyTypeWhat it holdsUpdatesUse it for
EmailTextThe profile identifier; clients are matched between systems by email addressInstantThe key that ties Mindbody and Klaviyo together
First NameTextThe client's first name from MindbodyInstantPersonalization ("Hi {{ first_name }}")
Last NameTextThe client's last name from MindbodyInstantPersonalization and front-desk context
Phone NumberText (E.164)The client's phone number, formatted for SMSInstantSMS sending, once the client has consented in Klaviyo
BirthdayDateThe client's Mindbody birth date, written to Klaviyo's standard Birthday fieldInstantKlaviyo's built-in birthday flows

Contact basics

PropertyTypeWhat it holdsUpdatesUse it for
MB Client IDTextThe client's Mindbody identifierInstantCross-referencing a profile with Mindbody
MB Unique client IDTextMindbody's globally unique client identifierInstantReliable matching across sites
MB GenderTextAs recorded in MindbodyInstantAudience refinement where relevant
MB Date of birthDateBirth date (also mirrored to Klaviyo's Birthday field)InstantAge-based segments
MB Profile creation dateDateWhen the client was created in MindbodyInstantNew-client welcome audiences, cohort reporting
MB StatusTextThe client's Mindbody status (Member, Non-Member, and any custom statuses you use)InstantMember vs. non-member messaging
MB InactiveBooleanWhether the client is marked inactive in MindbodyInstantExcluding inactive clients from campaigns
MB Liability releasedBooleanWhether the liability waiver is signedInstantThe Waiver Not Signed segment, compliance chasing
MB Account balanceNumberThe client's current account balanceInstantBalance-due reminders

Communication preference mirrors

Mindbody's six communication preferences are mirrored onto the profile for reference and segmentation. They never change anyone's Klaviyo subscription status; Klaviyo consent stays entirely under Klaviyo's control. See Consent, subscriptions, and privacy.

PropertyTypeWhat it holdsUpdatesUse it for
MB Send account emailsBooleanMindbody preference for account emailsInstantReference when auditing preferences
MB Send promotional emailsBooleanMindbody preference for promotional emailsInstantThe Promo Opt-In segment
MB Send schedule emailsBooleanMindbody preference for schedule emailsInstantReference for schedule-related sends
MB Send account textsBooleanMindbody preference for account textsInstantReference when planning SMS
MB Send promotional textsBooleanMindbody preference for promotional textsInstantReference when planning SMS
MB Send schedule textsBooleanMindbody preference for schedule textsInstantReference for schedule-related SMS

Locations

Location properties carry your studios' actual names (from the managed location naming table), not internal numbers. See Locations and multi-site brands.

PropertyTypeWhat it holdsUpdatesUse it for
MB Home locationTextThe client's home studio, by nameInstantPer-location campaigns and sender identity
MB Locations visitedListEvery studio the client has ever checked in at, as an accumulating trailNightlyCross-location behavior, "has visited X" audiences
MB Last location visitedTextThe studio of the most recent visitNightlyLocation-specific win-back messaging
MB Last visit dateDateWhen that most recent visit happenedNightlyLapsed segments (no visit in 30, 60, 90 days)
MB Last purchase locationTextThe studio (or online store) of the most recent purchaseInstant on saleAttributing purchase behavior to a location

Upcoming appointment

The entire block recomputes instantly on every booking change: the client books, cancels, or reschedules anywhere in your business, and the profile reflects the new next appointment within about a minute. A 15-minute sweep backstops it.

PropertyTypeWhat it holdsUpdatesUse it for
MB Upcoming appt datetimeDateWhen the next appointment isInstantSorting, countdown logic in flows
MB Upcoming appt dayTextHuman-friendly day, e.g. "Monday, July 13"InstantReminder email copy
MB Upcoming appt timeTextHuman-friendly time, e.g. "06:00 am"InstantReminder email copy
MB Upcoming appt nameTextThe service bookedInstantService-specific prep content
MB Upcoming appt staffTextWho the appointment is withInstant"See you with {{ staff }}" personalization
MB Upcoming appt locationTextWhich studioInstantDirections, parking, location-specific notes
MB Upcoming appt siteTextWhich Mindbody site (for multi-site brands)InstantMulti-brand routing
MB Upcoming appt IDTextMindbody's booking id; "None" when nothing is bookedInstantNo Upcoming Appointment audiences (rebooking pushes)
MB Upcoming appt categoryTextThe service categoryInstantCategory-level audiences
MB Upcoming appt updated dateDateWhen this block last recomputedInstantFreshness checks in advanced segments

Appointment history

PropertyTypeWhat it holdsUpdatesUse it for
MB First appointment dateDateThe client's first-ever appointmentInstant on status changeNew-client journeys, anniversary campaigns
MB Last appointment statusTextThe most recent appointment's outcome (Confirmed, Arrived, NoShow, and so on)Instant on status changeNo-show follow-ups
MB Last appointment status nameTextWhich service that appointment wasInstant on status changeService-specific follow-up content
MB Last appointment status dateDateWhen it happenedInstant on status changeRecency-based audiences
MB Last appointment status locationTextWhere it happenedInstant on status changeLocation-specific follow-ups
MB Last appointment updated start timeDateThe start time of the most recently updated appointmentInstant on status changeAdvanced scheduling logic

Classes

PropertyTypeWhat it holdsUpdatesUse it for
MB Next class bookedTextThe next class on the schedule; "None" when nothing is bookedInstant on booking changeNo-class-booked rebooking audiences
MB Next class booked idTextMindbody's class booking idInstant on booking changeCross-referencing with Mindbody
MB Next class booked dateTextThe date of that classInstant on booking changeReminder copy
MB Next class booked timeTextThe time of that classInstant on booking changeReminder copy
MB Next class booked datetimeDateDate and time combined, as a real dateInstant on booking changeDate math in segments and flows
MB Next class booked staffTextWho teaches itInstant on booking changeInstructor personalization
MB Next class booked locationTextWhich studioInstant on booking changeLocation-specific class content
MB Next class booked siteTextWhich Mindbody siteInstant on booking changeMulti-brand routing
MB Next class updated dateDateWhen this block last updatedInstant on booking changeFreshness checks

Purchases and packs

PropertyTypeWhat it holdsUpdatesUse it for
MB Last intro offer purchasedTextThe client's most recent intro offerInstant on saleThe Intro Offer Buyers segment, conversion journeys
MB Last intro offer purchased dateDateWhen they bought itInstant on saleTiming the intro-to-member conversion push

Per-pack properties. For each pack or series a client buys, the integration writes a dedicated set of three properties named after the pack itself:

Property patternTypeWhat it holdsUpdatesUse it for
MB [Pack name] countNumberTotal sessions in the packInstant on saleKnowing what was purchased
MB [Pack name] remainingNumberSessions leftInstantRunning-low campaigns ("only 2 classes left")
MB [Pack name] exp dateDateWhen the pack expiresInstantExpiring-soon campaigns

For example, a client who buys the Two Week Intro Offer gets "MB Two Week Intro Offer count", "MB Two Week Intro Offer remaining", and "MB Two Week Intro Offer exp date" on their profile.

Contracts

PropertyTypeWhat it holdsUpdatesUse it for
ContractTextThe current contract's nameInstantContract-holder audiences
MB Contract statusTextThe contract's current statusInstantActive vs. suspended vs. terminated messaging
MB Contract end dateDateWhen the contract endsInstantThe Contract Renewal Window segment

Events

Events power flow triggers and revenue attribution. Each carries its details as event properties, and every event is written with a stable unique identifier, so retries and reconciliation sweeps can never double your revenue or fire a flow twice for the same moment.

EventFires whenKey propertiesTypical flow
Placed OrderA sale completes in Mindbody (within about a minute)Total value, line items, location, sitePost-purchase thank-you; this is what Klaviyo revenue reporting and attribution read
Ordered ProductOnce per line item of every saleProductName, price, quantity, locationService-specific audiences and post-purchase content per item
MB Appointment BookedAn appointment is createdSite, Location, Staff, Staff ID, Appointment ID, Start, End, Duration minutesBooking confirmations, pre-visit prep
MB Appointment CancelledAn appointment is cancelledSame property family as BookedCancellation rescue ("rebook your spot")
MB Appointment Confirmed and related status eventsThe appointment's status changes (confirmed, arrived, no-show outcomes); the profile's last-appointment block updates at the same timeSame property family, plus the statusNo-show follow-ups, arrival-based journeys
MB Class BookedA class spot is bookedClass, staff, location, schedule detailsClass confirmations and first-class welcome
Class completion and cancellation eventsAttendance is recorded or a class booking is cancelledClass, location, timing detailsPost-class feedback, cancellation rescue
MB Membership ActivatedA membership startsMembership details, locationNew-member onboarding series
MB Membership CancelledA membership endsMembership details, locationWin-back and exit-survey flows
MB Contract CreatedA contract is signedContract name, status, datesNew-contract welcome and expectation setting
Contract status eventsA contract changes statusContract name, new statusSuspension and reactivation messaging
MB Contract CancelledA contract is cancelledContract name, datesCancellation save and win-back flows

One practical note: an event type appears in your Klaviyo metrics list the first time it fires in your account, so a brand-new account shows the list growing over its first days of activity. If you do not see an event yet, it simply has not happened yet.

Resources

Last updated July 13, 2026