Skip to content

Member Detail

Address pydantic-model

Bases: AddressMixin, OtfItemBase

A member's physical address.

Show JSON schema:
{
  "description": "A member's physical address.",
  "properties": {
    "line1": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Line1"
    },
    "line2": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Line2"
    },
    "city": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "City"
    },
    "postal_code": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Postal Code"
    },
    "state": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "State"
    },
    "country": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Country"
    },
    "physicalRegion": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Physicalregion"
    },
    "physicalCountryId": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Physicalcountryid"
    },
    "memberAddressUUId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Memberaddressuuid"
    },
    "type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Address type (e.g. home, work).",
      "title": "Type"
    }
  },
  "title": "Address",
  "type": "object"
}

Fields:

  • address_line1 (str | None)
  • address_line2 (str | None)
  • city (str | None)
  • postal_code (str | None)
  • state (str | None)
  • country (str | None)
  • region (str | None)
  • country_id (int | None)
  • member_address_uuid (str | None)
  • type (str | None)

type pydantic-field

type = None

Address type (e.g. home, work).

MemberProfile pydantic-model

Bases: OtfItemBase

Heart rate and measurement preferences for a member.

Show JSON schema:
{
  "description": "Heart rate and measurement preferences for a member.",
  "properties": {
    "unitOfMeasure": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Preferred unit of measure (e.g. Imperial, Metric).",
      "title": "Unitofmeasure"
    },
    "maxHrType": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Method used to determine max heart rate.",
      "title": "Maxhrtype"
    },
    "manualMaxHr": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Manually entered max heart rate.",
      "title": "Manualmaxhr"
    },
    "formulaMaxHr": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Formula-calculated max heart rate.",
      "title": "Formulamaxhr"
    },
    "automatedHr": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Automatically detected heart rate.",
      "title": "Automatedhr"
    },
    "memberProfileUUId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Memberprofileuuid"
    },
    "memberOptinFlowTypeId": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Memberoptinflowtypeid"
    }
  },
  "title": "MemberProfile",
  "type": "object"
}

Fields:

unit_of_measure pydantic-field

unit_of_measure = None

Preferred unit of measure (e.g. Imperial, Metric).

max_hr_type pydantic-field

max_hr_type = None

Method used to determine max heart rate.

manual_max_hr pydantic-field

manual_max_hr = None

Manually entered max heart rate.

formula_max_hr pydantic-field

formula_max_hr = None

Formula-calculated max heart rate.

automated_hr pydantic-field

automated_hr = None

Automatically detected heart rate.

MemberClassSummary pydantic-model

Bases: OtfItemBase

Aggregate statistics about a member's class attendance history.

Show JSON schema:
{
  "description": "Aggregate statistics about a member's class attendance history.",
  "properties": {
    "totalClassesBooked": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Total number of classes booked.",
      "title": "Totalclassesbooked"
    },
    "totalClassesAttended": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Total number of classes attended.",
      "title": "Totalclassesattended"
    },
    "totalIntro": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Total number of intro classes taken.",
      "title": "Totalintro"
    },
    "totalOTLiveClassesBooked": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Total OT Live classes booked.",
      "title": "Totalotliveclassesbooked"
    },
    "totalOTLiveClassesAttended": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Total OT Live classes attended.",
      "title": "Totalotliveclassesattended"
    },
    "totalClassesUsedHRM": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Total classes where a heart rate monitor was used.",
      "title": "Totalclassesusedhrm"
    },
    "totalStudiosVisited": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Number of unique studios visited.",
      "title": "Totalstudiosvisited"
    },
    "firstVisitDate": {
      "anyOf": [
        {
          "format": "date",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Date of the member's first studio visit.",
      "title": "Firstvisitdate"
    },
    "lastClassVisitedDate": {
      "anyOf": [
        {
          "format": "date",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Date of the member's most recent class visit.",
      "title": "Lastclassvisiteddate"
    },
    "lastClassBookedDate": {
      "anyOf": [
        {
          "format": "date",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Date of the member's most recent booking.",
      "title": "Lastclassbookeddate"
    },
    "lastClassStudioVisited": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Lastclassstudiovisited"
    }
  },
  "title": "MemberClassSummary",
  "type": "object"
}

Fields:

total_classes_booked pydantic-field

total_classes_booked = None

Total number of classes booked.

total_classes_attended pydantic-field

total_classes_attended = None

Total number of classes attended.

total_intro_classes pydantic-field

total_intro_classes = None

Total number of intro classes taken.

total_ot_live_classes_booked pydantic-field

total_ot_live_classes_booked = None

Total OT Live classes booked.

total_ot_live_classes_attended pydantic-field

total_ot_live_classes_attended = None

Total OT Live classes attended.

total_classes_used_hrm pydantic-field

total_classes_used_hrm = None

Total classes where a heart rate monitor was used.

total_studios_visited pydantic-field

total_studios_visited = None

Number of unique studios visited.

first_visit_date pydantic-field

first_visit_date = None

Date of the member's first studio visit.

last_class_visited_date pydantic-field

last_class_visited_date = None

Date of the member's most recent class visit.

last_class_booked_date pydantic-field

last_class_booked_date = None

Date of the member's most recent booking.

MemberDetail pydantic-model

Bases: ApiMixin, OtfItemBase

Detailed information about an OrangeTheory member, including profile, address, and class summary.

Show JSON schema:
{
  "$defs": {
    "Address": {
      "description": "A member's physical address.",
      "properties": {
        "line1": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Line1"
        },
        "line2": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Line2"
        },
        "city": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "City"
        },
        "postal_code": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Postal Code"
        },
        "state": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "State"
        },
        "country": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Country"
        },
        "physicalRegion": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Physicalregion"
        },
        "physicalCountryId": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Physicalcountryid"
        },
        "memberAddressUUId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Memberaddressuuid"
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Address type (e.g. home, work).",
          "title": "Type"
        }
      },
      "title": "Address",
      "type": "object"
    },
    "MemberClassSummary": {
      "description": "Aggregate statistics about a member's class attendance history.",
      "properties": {
        "totalClassesBooked": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Total number of classes booked.",
          "title": "Totalclassesbooked"
        },
        "totalClassesAttended": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Total number of classes attended.",
          "title": "Totalclassesattended"
        },
        "totalIntro": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Total number of intro classes taken.",
          "title": "Totalintro"
        },
        "totalOTLiveClassesBooked": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Total OT Live classes booked.",
          "title": "Totalotliveclassesbooked"
        },
        "totalOTLiveClassesAttended": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Total OT Live classes attended.",
          "title": "Totalotliveclassesattended"
        },
        "totalClassesUsedHRM": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Total classes where a heart rate monitor was used.",
          "title": "Totalclassesusedhrm"
        },
        "totalStudiosVisited": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Number of unique studios visited.",
          "title": "Totalstudiosvisited"
        },
        "firstVisitDate": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Date of the member's first studio visit.",
          "title": "Firstvisitdate"
        },
        "lastClassVisitedDate": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Date of the member's most recent class visit.",
          "title": "Lastclassvisiteddate"
        },
        "lastClassBookedDate": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Date of the member's most recent booking.",
          "title": "Lastclassbookeddate"
        },
        "lastClassStudioVisited": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Lastclassstudiovisited"
        }
      },
      "title": "MemberClassSummary",
      "type": "object"
    },
    "MemberProfile": {
      "description": "Heart rate and measurement preferences for a member.",
      "properties": {
        "unitOfMeasure": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Preferred unit of measure (e.g. Imperial, Metric).",
          "title": "Unitofmeasure"
        },
        "maxHrType": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Method used to determine max heart rate.",
          "title": "Maxhrtype"
        },
        "manualMaxHr": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Manually entered max heart rate.",
          "title": "Manualmaxhr"
        },
        "formulaMaxHr": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Formula-calculated max heart rate.",
          "title": "Formulamaxhr"
        },
        "automatedHr": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Automatically detected heart rate.",
          "title": "Automatedhr"
        },
        "memberProfileUUId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Memberprofileuuid"
        },
        "memberOptinFlowTypeId": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Memberoptinflowtypeid"
        }
      },
      "title": "MemberProfile",
      "type": "object"
    },
    "StudioDetail": {
      "description": "Detailed information about an OrangeTheory studio.",
      "properties": {
        "studioUUId": {
          "description": "The OTF studio UUID",
          "title": "Studiouuid",
          "type": "string"
        },
        "contactEmail": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Studio contact email address.",
          "title": "Contactemail"
        },
        "distance": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Distance from latitude and longitude provided to `search_studios_by_geo` method,              NULL if that method was not used",
          "title": "Distance"
        },
        "studioLocation": {
          "allOf": [
            {
              "$ref": "#/$defs/StudioLocation"
            }
          ],
          "description": "Physical location details."
        },
        "studioName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Name of the studio.",
          "title": "Studioname"
        },
        "studioStatus": {
          "anyOf": [
            {
              "$ref": "#/$defs/StudioStatus"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Active, Temporarily Closed, Coming Soon"
        },
        "timeZone": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "IANA time zone of the studio.",
          "title": "Timezone"
        },
        "acceptsAch": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Acceptsach"
        },
        "acceptsAmericanExpress": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Acceptsamericanexpress"
        },
        "acceptsDiscover": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Acceptsdiscover"
        },
        "acceptsVisaMasterCard": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Acceptsvisamastercard"
        },
        "allowsCrWaitlist": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Allowscrwaitlist"
        },
        "allowsDashboardAccess": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Allowsdashboardaccess"
        },
        "is_crm": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Is Crm"
        },
        "isIntegrated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Always 'True'",
          "title": "Isintegrated"
        },
        "isMobile": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Ismobile"
        },
        "isOtbeat": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Isotbeat"
        },
        "is_web": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Is Web"
        },
        "smsPackageEnabled": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Smspackageenabled"
        },
        "studioId": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Not used by API",
          "title": "Studioid"
        },
        "mboStudioId": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "MindBody attr",
          "title": "Mbostudioid"
        },
        "openDate": {
          "anyOf": [
            {
              "format": "date-time",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Opendate"
        },
        "pricingLevel": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Pro, Legacy, Accelerate, or empty",
          "title": "Pricinglevel"
        },
        "reOpenDate": {
          "anyOf": [
            {
              "format": "date-time",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Reopendate"
        },
        "studioNumber": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Studionumber"
        },
        "studioPhysicalLocationId": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Studiophysicallocationid"
        },
        "studioToken": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Studiotoken"
        },
        "studioTypeId": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Studiotypeid"
        }
      },
      "required": [
        "studioUUId"
      ],
      "title": "StudioDetail",
      "type": "object"
    },
    "StudioLocation": {
      "description": "Physical location details for an OrangeTheory studio.",
      "properties": {
        "line1": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Line1"
        },
        "line2": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Line2"
        },
        "city": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "City"
        },
        "postal_code": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Postal Code"
        },
        "state": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "State"
        },
        "country": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Country"
        },
        "physicalRegion": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Physicalregion"
        },
        "physicalCountryId": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Physicalcountryid"
        },
        "phone": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Studio phone number.",
          "title": "Phone"
        },
        "latitude": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Geographic latitude.",
          "title": "Latitude"
        },
        "longitude": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Geographic longitude.",
          "title": "Longitude"
        }
      },
      "title": "StudioLocation",
      "type": "object"
    },
    "StudioStatus": {
      "description": "Operational status of an OrangeTheory studio.",
      "enum": [
        "OTHER",
        "Active",
        "Inactive",
        "Coming Soon",
        "Temporarily Closed",
        "Permanently Closed",
        "Unknown"
      ],
      "title": "StudioStatus",
      "type": "string"
    }
  },
  "description": "Detailed information about an OrangeTheory member, including profile, address, and class summary.",
  "properties": {
    "memberUUId": {
      "description": "Unique identifier for the member.",
      "title": "Memberuuid",
      "type": "string"
    },
    "cognitoId": {
      "description": "Cognito user ID, not necessary for end users. Also on OtfUser object.",
      "title": "Cognitoid",
      "type": "string"
    },
    "home_studio": {
      "allOf": [
        {
          "$ref": "#/$defs/StudioDetail"
        }
      ],
      "description": "The member's home studio."
    },
    "memberProfile": {
      "allOf": [
        {
          "$ref": "#/$defs/MemberProfile"
        }
      ],
      "description": "Heart rate and measurement preferences."
    },
    "memberClassSummary": {
      "anyOf": [
        {
          "$ref": "#/$defs/MemberClassSummary"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Aggregate class attendance statistics."
    },
    "addresses": {
      "anyOf": [
        {
          "items": {
            "$ref": "#/$defs/Address"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "description": "List of member addresses.",
      "title": "Addresses"
    },
    "userName": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The value that is displayed on tread/rower tablets and OTBeat screens",
      "title": "Username"
    },
    "firstName": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's first name.",
      "title": "Firstname"
    },
    "lastName": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's last name.",
      "title": "Lastname"
    },
    "email": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's email address.",
      "title": "Email"
    },
    "phoneNumber": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's phone number.",
      "title": "Phonenumber"
    },
    "birthDay": {
      "anyOf": [
        {
          "format": "date",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's date of birth.",
      "title": "Birthday"
    },
    "gender": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's gender.",
      "title": "Gender"
    },
    "locale": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's locale setting.",
      "title": "Locale"
    },
    "weight": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's weight.",
      "title": "Weight"
    },
    "weightMeasure": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Unit of measure for weight.",
      "title": "Weightmeasure"
    },
    "height": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The member's height.",
      "title": "Height"
    },
    "heightMeasure": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Unit of measure for height.",
      "title": "Heightmeasure"
    },
    "mboId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "MindBody attr",
      "title": "Mboid"
    },
    "mboStatus": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "MindBody attr",
      "title": "Mbostatus"
    },
    "mboStudioId": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "MindBody attr",
      "title": "Mbostudioid"
    },
    "mboUniqueId": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "MindBody attr",
      "title": "Mbouniqueid"
    },
    "createdBy": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Createdby"
    },
    "homeStudioId": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Not used by API",
      "title": "Homestudioid"
    },
    "memberId": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Not used by API",
      "title": "Memberid"
    },
    "otfAcsId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Otfacsid"
    },
    "updatedBy": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Updatedby"
    },
    "createdDate": {
      "anyOf": [
        {
          "format": "date-time",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Createddate"
    },
    "updatedDate": {
      "anyOf": [
        {
          "format": "date-time",
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Updateddate"
    },
    "addressLine1": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Addressline1"
    },
    "addressLine2": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Addressline2"
    },
    "alternateEmails": {
      "default": null,
      "title": "Alternateemails",
      "type": "null"
    },
    "ccLast4": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Cclast4"
    },
    "ccType": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Cctype"
    },
    "city": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "City"
    },
    "homePhone": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Homephone"
    },
    "introNeccessary": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Introneccessary"
    },
    "isDeleted": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Isdeleted"
    },
    "isMemberVerified": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Ismemberverified"
    },
    "leadProspect": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Leadprospect"
    },
    "maxHr": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Also found in member_profile",
      "title": "Maxhr"
    },
    "onlineSignup": {
      "default": null,
      "title": "Onlinesignup",
      "type": "null"
    },
    "phoneType": {
      "default": null,
      "title": "Phonetype",
      "type": "null"
    },
    "postalCode": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Postalcode"
    },
    "state": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "State"
    },
    "workPhone": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Workphone"
    },
    "yearImported": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Yearimported"
    }
  },
  "required": [
    "memberUUId",
    "cognitoId",
    "home_studio",
    "memberProfile"
  ],
  "title": "MemberDetail",
  "type": "object"
}

Fields:

Validators:

member_uuid pydantic-field

member_uuid

Unique identifier for the member.

cognito_id pydantic-field

cognito_id

Cognito user ID, not necessary for end users. Also on OtfUser object.

home_studio pydantic-field

home_studio

The member's home studio.

profile pydantic-field

profile

Heart rate and measurement preferences.

class_summary pydantic-field

class_summary = None

Aggregate class attendance statistics.

addresses pydantic-field

addresses

List of member addresses.

studio_display_name pydantic-field

studio_display_name = None

The value that is displayed on tread/rower tablets and OTBeat screens

first_name pydantic-field

first_name = None

The member's first name.

last_name pydantic-field

last_name = None

The member's last name.

email pydantic-field

email = None

The member's email address.

phone_number pydantic-field

phone_number = None

The member's phone number.

birth_day pydantic-field

birth_day = None

The member's date of birth.

gender pydantic-field

gender = None

The member's gender.

locale pydantic-field

locale = None

The member's locale setting.

weight pydantic-field

weight = None

The member's weight.

weight_units pydantic-field

weight_units = None

Unit of measure for weight.

height pydantic-field

height = None

The member's height.

height_units pydantic-field

height_units = None

Unit of measure for height.

mbo_id pydantic-field

mbo_id = None

MindBody attr

mbo_status pydantic-field

mbo_status = None

MindBody attr

mbo_studio_id pydantic-field

mbo_studio_id = None

MindBody attr

mbo_unique_id pydantic-field

mbo_unique_id = None

MindBody attr

home_studio_id pydantic-field

home_studio_id = None

Not used by API

member_id pydantic-field

member_id = None

Not used by API

max_hr pydantic-field

max_hr = None

Also found in member_profile

validate_birth_day pydantic-validator

validate_birth_day(value, **_kwargs)

Convert birth_day to a date object if it is in the format of YYYY-MM-DD.

update_name

update_name(first_name=None, last_name=None)

Update the name of the member.

Parameters:

Name Type Description Default
first_name str | None

The new first name of the member.

None
last_name str | None

The new last name of the member.

None