ClubManager.Api

<back to all web services

FindBookingMembershipType

Requires Authentication
Required role:API
The following routes are available for this service:
All Verbs/api/Query/BookingMembershipType
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

// @DataContract
abstract class QueryBase
{
    // @DataMember(Order=1)
    int? Skip;

    // @DataMember(Order=2)
    int? Take;

    // @DataMember(Order=3)
    String? OrderBy;

    // @DataMember(Order=4)
    String? OrderByDesc;

    // @DataMember(Order=5)
    String? Include;

    // @DataMember(Order=6)
    String? Fields;

    // @DataMember(Order=7)
    Map<String,String?>? Meta;

    QueryBase({this.Skip,this.Take,this.OrderBy,this.OrderByDesc,this.Include,this.Fields,this.Meta});
    QueryBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Skip = json['Skip'];
        Take = json['Take'];
        OrderBy = json['OrderBy'];
        OrderByDesc = json['OrderByDesc'];
        Include = json['Include'];
        Fields = json['Fields'];
        Meta = JsonConverters.toStringMap(json['Meta']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Skip': Skip,
        'Take': Take,
        'OrderBy': OrderBy,
        'OrderByDesc': OrderByDesc,
        'Include': Include,
        'Fields': Fields,
        'Meta': Meta
    };

    getTypeName() => "QueryBase";
    TypeContext? context = _ctx;
}

abstract class QueryDb<T> extends QueryBase
{
    QueryDb();
    QueryDb.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "QueryDb<$T>";
    TypeContext? context = _ctx;
}

class ProductInstance implements IConvertible
{
    int? ProductId;
    String? Group;
    String? Name;
    String? Description;
    double? Price;
    double? VAT;
    double? TotalPrice;
    int? ProductType;
    bool? Deleted;
    bool? Demo;
    int? UsageCount;
    int? StockLevel;
    int? ReorderFlag;
    bool? VisibleOnline;

    ProductInstance({this.ProductId,this.Group,this.Name,this.Description,this.Price,this.VAT,this.TotalPrice,this.ProductType,this.Deleted,this.Demo,this.UsageCount,this.StockLevel,this.ReorderFlag,this.VisibleOnline});
    ProductInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ProductId = json['ProductId'];
        Group = json['Group'];
        Name = json['Name'];
        Description = json['Description'];
        Price = JsonConverters.toDouble(json['Price']);
        VAT = JsonConverters.toDouble(json['VAT']);
        TotalPrice = JsonConverters.toDouble(json['TotalPrice']);
        ProductType = json['ProductType'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        UsageCount = json['UsageCount'];
        StockLevel = json['StockLevel'];
        ReorderFlag = json['ReorderFlag'];
        VisibleOnline = json['VisibleOnline'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ProductId': ProductId,
        'Group': Group,
        'Name': Name,
        'Description': Description,
        'Price': Price,
        'VAT': VAT,
        'TotalPrice': TotalPrice,
        'ProductType': ProductType,
        'Deleted': Deleted,
        'Demo': Demo,
        'UsageCount': UsageCount,
        'StockLevel': StockLevel,
        'ReorderFlag': ReorderFlag,
        'VisibleOnline': VisibleOnline
    };

    getTypeName() => "ProductInstance";
    TypeContext? context = _ctx;
}

class ScheduleInstance implements IConvertible
{
    int? ScheduleId;
    String? Name;
    String? Description;
    Duration? MondayFrom;
    Duration? MondayTo;
    Duration? TuesdayFrom;
    Duration? TuesdayTo;
    Duration? WednesdayFrom;
    Duration? WednesdayTo;
    Duration? ThursdayFrom;
    Duration? ThursdayTo;
    Duration? FridayFrom;
    Duration? FridayTo;
    Duration? SaturdayFrom;
    Duration? SaturdayTo;
    Duration? SundayFrom;
    Duration? SundayTo;
    int? ScheduleType;
    bool? Deleted;
    bool? Demo;

    ScheduleInstance({this.ScheduleId,this.Name,this.Description,this.MondayFrom,this.MondayTo,this.TuesdayFrom,this.TuesdayTo,this.WednesdayFrom,this.WednesdayTo,this.ThursdayFrom,this.ThursdayTo,this.FridayFrom,this.FridayTo,this.SaturdayFrom,this.SaturdayTo,this.SundayFrom,this.SundayTo,this.ScheduleType,this.Deleted,this.Demo});
    ScheduleInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ScheduleId = json['ScheduleId'];
        Name = json['Name'];
        Description = json['Description'];
        MondayFrom = JsonConverters.fromJson(json['MondayFrom'],'Duration',context!);
        MondayTo = JsonConverters.fromJson(json['MondayTo'],'Duration',context!);
        TuesdayFrom = JsonConverters.fromJson(json['TuesdayFrom'],'Duration',context!);
        TuesdayTo = JsonConverters.fromJson(json['TuesdayTo'],'Duration',context!);
        WednesdayFrom = JsonConverters.fromJson(json['WednesdayFrom'],'Duration',context!);
        WednesdayTo = JsonConverters.fromJson(json['WednesdayTo'],'Duration',context!);
        ThursdayFrom = JsonConverters.fromJson(json['ThursdayFrom'],'Duration',context!);
        ThursdayTo = JsonConverters.fromJson(json['ThursdayTo'],'Duration',context!);
        FridayFrom = JsonConverters.fromJson(json['FridayFrom'],'Duration',context!);
        FridayTo = JsonConverters.fromJson(json['FridayTo'],'Duration',context!);
        SaturdayFrom = JsonConverters.fromJson(json['SaturdayFrom'],'Duration',context!);
        SaturdayTo = JsonConverters.fromJson(json['SaturdayTo'],'Duration',context!);
        SundayFrom = JsonConverters.fromJson(json['SundayFrom'],'Duration',context!);
        SundayTo = JsonConverters.fromJson(json['SundayTo'],'Duration',context!);
        ScheduleType = json['ScheduleType'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ScheduleId': ScheduleId,
        'Name': Name,
        'Description': Description,
        'MondayFrom': JsonConverters.toJson(MondayFrom,'Duration',context!),
        'MondayTo': JsonConverters.toJson(MondayTo,'Duration',context!),
        'TuesdayFrom': JsonConverters.toJson(TuesdayFrom,'Duration',context!),
        'TuesdayTo': JsonConverters.toJson(TuesdayTo,'Duration',context!),
        'WednesdayFrom': JsonConverters.toJson(WednesdayFrom,'Duration',context!),
        'WednesdayTo': JsonConverters.toJson(WednesdayTo,'Duration',context!),
        'ThursdayFrom': JsonConverters.toJson(ThursdayFrom,'Duration',context!),
        'ThursdayTo': JsonConverters.toJson(ThursdayTo,'Duration',context!),
        'FridayFrom': JsonConverters.toJson(FridayFrom,'Duration',context!),
        'FridayTo': JsonConverters.toJson(FridayTo,'Duration',context!),
        'SaturdayFrom': JsonConverters.toJson(SaturdayFrom,'Duration',context!),
        'SaturdayTo': JsonConverters.toJson(SaturdayTo,'Duration',context!),
        'SundayFrom': JsonConverters.toJson(SundayFrom,'Duration',context!),
        'SundayTo': JsonConverters.toJson(SundayTo,'Duration',context!),
        'ScheduleType': ScheduleType,
        'Deleted': Deleted,
        'Demo': Demo
    };

    getTypeName() => "ScheduleInstance";
    TypeContext? context = _ctx;
}

class FacilityInstance implements IConvertible
{
    int? FacilityId;
    String? Name;
    String? Description;
    ScheduleInstance? Schedule;
    // @References(typeof(ScheduleInstance))
    int? ScheduleId;

    String? Colour;
    bool? Bookable;
    bool? Deleted;
    bool? Demo;
    String? Group;

    FacilityInstance({this.FacilityId,this.Name,this.Description,this.Schedule,this.ScheduleId,this.Colour,this.Bookable,this.Deleted,this.Demo,this.Group});
    FacilityInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        FacilityId = json['FacilityId'];
        Name = json['Name'];
        Description = json['Description'];
        Schedule = JsonConverters.fromJson(json['Schedule'],'ScheduleInstance',context!);
        ScheduleId = json['ScheduleId'];
        Colour = json['Colour'];
        Bookable = json['Bookable'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        Group = json['Group'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'FacilityId': FacilityId,
        'Name': Name,
        'Description': Description,
        'Schedule': JsonConverters.toJson(Schedule,'ScheduleInstance',context!),
        'ScheduleId': ScheduleId,
        'Colour': Colour,
        'Bookable': Bookable,
        'Deleted': Deleted,
        'Demo': Demo,
        'Group': Group
    };

    getTypeName() => "FacilityInstance";
    TypeContext? context = _ctx;
}

class StaffInstance implements IConvertible
{
    int? StaffId;
    String? Name;
    ScheduleInstance? Schedule;
    // @References(typeof(ScheduleInstance))
    int? ScheduleId;

    bool? Deleted;
    bool? Demo;
    String? Group;
    String? Profile;
    bool? FirstAidTrained;
    DateTime? DBSCheck;
    DateTime? InsuranceExpires;

    StaffInstance({this.StaffId,this.Name,this.Schedule,this.ScheduleId,this.Deleted,this.Demo,this.Group,this.Profile,this.FirstAidTrained,this.DBSCheck,this.InsuranceExpires});
    StaffInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        StaffId = json['StaffId'];
        Name = json['Name'];
        Schedule = JsonConverters.fromJson(json['Schedule'],'ScheduleInstance',context!);
        ScheduleId = json['ScheduleId'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        Group = json['Group'];
        Profile = json['Profile'];
        FirstAidTrained = json['FirstAidTrained'];
        DBSCheck = JsonConverters.fromJson(json['DBSCheck'],'DateTime',context!);
        InsuranceExpires = JsonConverters.fromJson(json['InsuranceExpires'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'StaffId': StaffId,
        'Name': Name,
        'Schedule': JsonConverters.toJson(Schedule,'ScheduleInstance',context!),
        'ScheduleId': ScheduleId,
        'Deleted': Deleted,
        'Demo': Demo,
        'Group': Group,
        'Profile': Profile,
        'FirstAidTrained': FirstAidTrained,
        'DBSCheck': JsonConverters.toJson(DBSCheck,'DateTime',context!),
        'InsuranceExpires': JsonConverters.toJson(InsuranceExpires,'DateTime',context!)
    };

    getTypeName() => "StaffInstance";
    TypeContext? context = _ctx;
}

class LossReasonInstance implements IConvertible
{
    int? LossReasonId;
    String? Reason;
    bool? Deleted;
    bool? Demo;
    bool? Selectable;

    LossReasonInstance({this.LossReasonId,this.Reason,this.Deleted,this.Demo,this.Selectable});
    LossReasonInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        LossReasonId = json['LossReasonId'];
        Reason = json['Reason'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        Selectable = json['Selectable'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'LossReasonId': LossReasonId,
        'Reason': Reason,
        'Deleted': Deleted,
        'Demo': Demo,
        'Selectable': Selectable
    };

    getTypeName() => "LossReasonInstance";
    TypeContext? context = _ctx;
}

class UserInstance implements IConvertible
{
    int? UserId;
    String? UserName;
    String? Name;
    String? Email;
    String? MobilePhone;
    bool? Enabled;
    DateTime? LastLogin;
    DateTime? Created;
    bool? Training;
    bool? Deleted;
    int? CoursesCompleted;
    bool? DisplayHomeNotification;
    bool? TwoFactorEnabled;
    bool? EmailConfirmed;
    bool? MobilePhoneConfirmed;
    bool? Notifications;
    DateTime? ChangePassword;
    DateTime? Activated;

    UserInstance({this.UserId,this.UserName,this.Name,this.Email,this.MobilePhone,this.Enabled,this.LastLogin,this.Created,this.Training,this.Deleted,this.CoursesCompleted,this.DisplayHomeNotification,this.TwoFactorEnabled,this.EmailConfirmed,this.MobilePhoneConfirmed,this.Notifications,this.ChangePassword,this.Activated});
    UserInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        UserId = json['UserId'];
        UserName = json['UserName'];
        Name = json['Name'];
        Email = json['Email'];
        MobilePhone = json['MobilePhone'];
        Enabled = json['Enabled'];
        LastLogin = JsonConverters.fromJson(json['LastLogin'],'DateTime',context!);
        Created = JsonConverters.fromJson(json['Created'],'DateTime',context!);
        Training = json['Training'];
        Deleted = json['Deleted'];
        CoursesCompleted = json['CoursesCompleted'];
        DisplayHomeNotification = json['DisplayHomeNotification'];
        TwoFactorEnabled = json['TwoFactorEnabled'];
        EmailConfirmed = json['EmailConfirmed'];
        MobilePhoneConfirmed = json['MobilePhoneConfirmed'];
        Notifications = json['Notifications'];
        ChangePassword = JsonConverters.fromJson(json['ChangePassword'],'DateTime',context!);
        Activated = JsonConverters.fromJson(json['Activated'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'UserId': UserId,
        'UserName': UserName,
        'Name': Name,
        'Email': Email,
        'MobilePhone': MobilePhone,
        'Enabled': Enabled,
        'LastLogin': JsonConverters.toJson(LastLogin,'DateTime',context!),
        'Created': JsonConverters.toJson(Created,'DateTime',context!),
        'Training': Training,
        'Deleted': Deleted,
        'CoursesCompleted': CoursesCompleted,
        'DisplayHomeNotification': DisplayHomeNotification,
        'TwoFactorEnabled': TwoFactorEnabled,
        'EmailConfirmed': EmailConfirmed,
        'MobilePhoneConfirmed': MobilePhoneConfirmed,
        'Notifications': Notifications,
        'ChangePassword': JsonConverters.toJson(ChangePassword,'DateTime',context!),
        'Activated': JsonConverters.toJson(Activated,'DateTime',context!)
    };

    getTypeName() => "UserInstance";
    TypeContext? context = _ctx;
}

class MemberInstance implements IConvertible
{
    int? MemberId;
    int? MemberType;
    String? MembershipNumber;
    String? CardNumber;
    String? CompanyName;
    String? Surname;
    String? Forenames;
    String? Title;
    int? Gender;
    DateTime? DateOfBirth;
    String? Address1;
    String? Address2;
    String? City;
    String? County;
    String? Postcode;
    String? HomePhone;
    String? MobilePhone;
    String? EmailAddress;
    bool? EmailOptOut;
    bool? SmsOptOut;
    bool? PhoneOptOut;
    bool? LetterOptOut;
    String? DirectDebitAccountHolder;
    String? DirectDebitAccountNumber;
    String? DirectDebitSortCode;
    DateTime? JoinedDate;
    String? DirectDebitBankAddress;
    String? FullName;
    String? ExternalReference;
    Uint8List? Photo;
    DateTime? PhotoModifiedDate;
    String? Notes;
    bool? Deleted;
    bool? Demo;
    bool? UseExternalStatus;
    int? ExternalStatus;
    String? FreeText;
    String? MemberKey;
    double? Balance;
    double? CreditLimit;
    DateTime? CreatedDate;
    DateTime? ModifiedDate;
    DateTime? DeletedDate;
    int? ExternalSource;
    double? RetentionMetric;
    double? MonthlyAttendanceFrequency;
    int? AssignedToUserId;
    int? CreatedByUserId;
    int? DeletedByUserId;
    LossReasonInstance? LossReason;
    // @References(typeof(LossReasonInstance))
    int? LossReasonId;

    int? WonOrLost;
    DateTime? WonOrLostDate;
    bool? GiftAidPermission;
    bool? PhotoPermission;
    bool? FirstAidPermission;
    String? EmergencyContact;
    UserInstance? WonOrLostByUser;
    // @References(typeof(UserInstance))
    int? WonOrLostByUserId;

    DateTime? AgreedToTerms;
    bool? OnlineBookingBanned;
    String? Country;
    DateTime? FingerprintEnrolled;
    double? LastPaymentAmount;
    String? Pin;
    int? ProspectingPoints;
    int? AchievementPoints;
    String? ParentForenames;
    String? ParentSurname;

    MemberInstance({this.MemberId,this.MemberType,this.MembershipNumber,this.CardNumber,this.CompanyName,this.Surname,this.Forenames,this.Title,this.Gender,this.DateOfBirth,this.Address1,this.Address2,this.City,this.County,this.Postcode,this.HomePhone,this.MobilePhone,this.EmailAddress,this.EmailOptOut,this.SmsOptOut,this.PhoneOptOut,this.LetterOptOut,this.DirectDebitAccountHolder,this.DirectDebitAccountNumber,this.DirectDebitSortCode,this.JoinedDate,this.DirectDebitBankAddress,this.FullName,this.ExternalReference,this.Photo,this.PhotoModifiedDate,this.Notes,this.Deleted,this.Demo,this.UseExternalStatus,this.ExternalStatus,this.FreeText,this.MemberKey,this.Balance,this.CreditLimit,this.CreatedDate,this.ModifiedDate,this.DeletedDate,this.ExternalSource,this.RetentionMetric,this.MonthlyAttendanceFrequency,this.AssignedToUserId,this.CreatedByUserId,this.DeletedByUserId,this.LossReason,this.LossReasonId,this.WonOrLost,this.WonOrLostDate,this.GiftAidPermission,this.PhotoPermission,this.FirstAidPermission,this.EmergencyContact,this.WonOrLostByUser,this.WonOrLostByUserId,this.AgreedToTerms,this.OnlineBookingBanned,this.Country,this.FingerprintEnrolled,this.LastPaymentAmount,this.Pin,this.ProspectingPoints,this.AchievementPoints,this.ParentForenames,this.ParentSurname});
    MemberInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        MemberId = json['MemberId'];
        MemberType = json['MemberType'];
        MembershipNumber = json['MembershipNumber'];
        CardNumber = json['CardNumber'];
        CompanyName = json['CompanyName'];
        Surname = json['Surname'];
        Forenames = json['Forenames'];
        Title = json['Title'];
        Gender = json['Gender'];
        DateOfBirth = JsonConverters.fromJson(json['DateOfBirth'],'DateTime',context!);
        Address1 = json['Address1'];
        Address2 = json['Address2'];
        City = json['City'];
        County = json['County'];
        Postcode = json['Postcode'];
        HomePhone = json['HomePhone'];
        MobilePhone = json['MobilePhone'];
        EmailAddress = json['EmailAddress'];
        EmailOptOut = json['EmailOptOut'];
        SmsOptOut = json['SmsOptOut'];
        PhoneOptOut = json['PhoneOptOut'];
        LetterOptOut = json['LetterOptOut'];
        DirectDebitAccountHolder = json['DirectDebitAccountHolder'];
        DirectDebitAccountNumber = json['DirectDebitAccountNumber'];
        DirectDebitSortCode = json['DirectDebitSortCode'];
        JoinedDate = JsonConverters.fromJson(json['JoinedDate'],'DateTime',context!);
        DirectDebitBankAddress = json['DirectDebitBankAddress'];
        FullName = json['FullName'];
        ExternalReference = json['ExternalReference'];
        Photo = JsonConverters.fromJson(json['Photo'],'Uint8List',context!);
        PhotoModifiedDate = JsonConverters.fromJson(json['PhotoModifiedDate'],'DateTime',context!);
        Notes = json['Notes'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        UseExternalStatus = json['UseExternalStatus'];
        ExternalStatus = json['ExternalStatus'];
        FreeText = json['FreeText'];
        MemberKey = json['MemberKey'];
        Balance = JsonConverters.toDouble(json['Balance']);
        CreditLimit = JsonConverters.toDouble(json['CreditLimit']);
        CreatedDate = JsonConverters.fromJson(json['CreatedDate'],'DateTime',context!);
        ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!);
        DeletedDate = JsonConverters.fromJson(json['DeletedDate'],'DateTime',context!);
        ExternalSource = json['ExternalSource'];
        RetentionMetric = JsonConverters.toDouble(json['RetentionMetric']);
        MonthlyAttendanceFrequency = JsonConverters.toDouble(json['MonthlyAttendanceFrequency']);
        AssignedToUserId = json['AssignedToUserId'];
        CreatedByUserId = json['CreatedByUserId'];
        DeletedByUserId = json['DeletedByUserId'];
        LossReason = JsonConverters.fromJson(json['LossReason'],'LossReasonInstance',context!);
        LossReasonId = json['LossReasonId'];
        WonOrLost = json['WonOrLost'];
        WonOrLostDate = JsonConverters.fromJson(json['WonOrLostDate'],'DateTime',context!);
        GiftAidPermission = json['GiftAidPermission'];
        PhotoPermission = json['PhotoPermission'];
        FirstAidPermission = json['FirstAidPermission'];
        EmergencyContact = json['EmergencyContact'];
        WonOrLostByUser = JsonConverters.fromJson(json['WonOrLostByUser'],'UserInstance',context!);
        WonOrLostByUserId = json['WonOrLostByUserId'];
        AgreedToTerms = JsonConverters.fromJson(json['AgreedToTerms'],'DateTime',context!);
        OnlineBookingBanned = json['OnlineBookingBanned'];
        Country = json['Country'];
        FingerprintEnrolled = JsonConverters.fromJson(json['FingerprintEnrolled'],'DateTime',context!);
        LastPaymentAmount = JsonConverters.toDouble(json['LastPaymentAmount']);
        Pin = json['Pin'];
        ProspectingPoints = json['ProspectingPoints'];
        AchievementPoints = json['AchievementPoints'];
        ParentForenames = json['ParentForenames'];
        ParentSurname = json['ParentSurname'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'MemberId': MemberId,
        'MemberType': MemberType,
        'MembershipNumber': MembershipNumber,
        'CardNumber': CardNumber,
        'CompanyName': CompanyName,
        'Surname': Surname,
        'Forenames': Forenames,
        'Title': Title,
        'Gender': Gender,
        'DateOfBirth': JsonConverters.toJson(DateOfBirth,'DateTime',context!),
        'Address1': Address1,
        'Address2': Address2,
        'City': City,
        'County': County,
        'Postcode': Postcode,
        'HomePhone': HomePhone,
        'MobilePhone': MobilePhone,
        'EmailAddress': EmailAddress,
        'EmailOptOut': EmailOptOut,
        'SmsOptOut': SmsOptOut,
        'PhoneOptOut': PhoneOptOut,
        'LetterOptOut': LetterOptOut,
        'DirectDebitAccountHolder': DirectDebitAccountHolder,
        'DirectDebitAccountNumber': DirectDebitAccountNumber,
        'DirectDebitSortCode': DirectDebitSortCode,
        'JoinedDate': JsonConverters.toJson(JoinedDate,'DateTime',context!),
        'DirectDebitBankAddress': DirectDebitBankAddress,
        'FullName': FullName,
        'ExternalReference': ExternalReference,
        'Photo': JsonConverters.toJson(Photo,'Uint8List',context!),
        'PhotoModifiedDate': JsonConverters.toJson(PhotoModifiedDate,'DateTime',context!),
        'Notes': Notes,
        'Deleted': Deleted,
        'Demo': Demo,
        'UseExternalStatus': UseExternalStatus,
        'ExternalStatus': ExternalStatus,
        'FreeText': FreeText,
        'MemberKey': MemberKey,
        'Balance': Balance,
        'CreditLimit': CreditLimit,
        'CreatedDate': JsonConverters.toJson(CreatedDate,'DateTime',context!),
        'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!),
        'DeletedDate': JsonConverters.toJson(DeletedDate,'DateTime',context!),
        'ExternalSource': ExternalSource,
        'RetentionMetric': RetentionMetric,
        'MonthlyAttendanceFrequency': MonthlyAttendanceFrequency,
        'AssignedToUserId': AssignedToUserId,
        'CreatedByUserId': CreatedByUserId,
        'DeletedByUserId': DeletedByUserId,
        'LossReason': JsonConverters.toJson(LossReason,'LossReasonInstance',context!),
        'LossReasonId': LossReasonId,
        'WonOrLost': WonOrLost,
        'WonOrLostDate': JsonConverters.toJson(WonOrLostDate,'DateTime',context!),
        'GiftAidPermission': GiftAidPermission,
        'PhotoPermission': PhotoPermission,
        'FirstAidPermission': FirstAidPermission,
        'EmergencyContact': EmergencyContact,
        'WonOrLostByUser': JsonConverters.toJson(WonOrLostByUser,'UserInstance',context!),
        'WonOrLostByUserId': WonOrLostByUserId,
        'AgreedToTerms': JsonConverters.toJson(AgreedToTerms,'DateTime',context!),
        'OnlineBookingBanned': OnlineBookingBanned,
        'Country': Country,
        'FingerprintEnrolled': JsonConverters.toJson(FingerprintEnrolled,'DateTime',context!),
        'LastPaymentAmount': LastPaymentAmount,
        'Pin': Pin,
        'ProspectingPoints': ProspectingPoints,
        'AchievementPoints': AchievementPoints,
        'ParentForenames': ParentForenames,
        'ParentSurname': ParentSurname
    };

    getTypeName() => "MemberInstance";
    TypeContext? context = _ctx;
}

class BookingInstance implements IConvertible
{
    int? BookingId;
    String? Name;
    String? Notes;
    DateTime? StartDate;
    int? Duration;
    bool? AllDay;
    String? Recurrence;
    bool? UseRecurrence;
    int? MinAttendees;
    int? MaxAttendees;
    ProductInstance? Product;
    // @References(typeof(ProductInstance))
    int? ProductId;

    FacilityInstance? Facility;
    // @References(typeof(FacilityInstance))
    int? FacilityId;

    StaffInstance? Staff;
    // @References(typeof(StaffInstance))
    int? StaffId;

    BookingInstance? ParentBooking;
    // @References(typeof(BookingInstance))
    int? ParentBookingId;

    int? SeriesIndex;
    bool? Deleted;
    bool? Demo;
    MemberInstance? Member;
    // @References(typeof(MemberInstance))
    int? MemberId;

    DateTime? EndDate;
    bool? TasterSession;
    bool? ImmediatePayment;
    bool? GradingEvent;
    String? Url;
    bool? Visible;
    bool? Bookable;
    int? NonMemberProductId;
    int? TasterSessionProductId;
    bool? ActiveMemberCanBook;
    bool? NonMemberCanBook;
    int? OnlineBookingTimetableLimit;
    int? OnlineBookingCancellationLimit;
    int? BookingCategoryId;

    BookingInstance({this.BookingId,this.Name,this.Notes,this.StartDate,this.Duration,this.AllDay,this.Recurrence,this.UseRecurrence,this.MinAttendees,this.MaxAttendees,this.Product,this.ProductId,this.Facility,this.FacilityId,this.Staff,this.StaffId,this.ParentBooking,this.ParentBookingId,this.SeriesIndex,this.Deleted,this.Demo,this.Member,this.MemberId,this.EndDate,this.TasterSession,this.ImmediatePayment,this.GradingEvent,this.Url,this.Visible,this.Bookable,this.NonMemberProductId,this.TasterSessionProductId,this.ActiveMemberCanBook,this.NonMemberCanBook,this.OnlineBookingTimetableLimit,this.OnlineBookingCancellationLimit,this.BookingCategoryId});
    BookingInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        BookingId = json['BookingId'];
        Name = json['Name'];
        Notes = json['Notes'];
        StartDate = JsonConverters.fromJson(json['StartDate'],'DateTime',context!);
        Duration = json['Duration'];
        AllDay = json['AllDay'];
        Recurrence = json['Recurrence'];
        UseRecurrence = json['UseRecurrence'];
        MinAttendees = json['MinAttendees'];
        MaxAttendees = json['MaxAttendees'];
        Product = JsonConverters.fromJson(json['Product'],'ProductInstance',context!);
        ProductId = json['ProductId'];
        Facility = JsonConverters.fromJson(json['Facility'],'FacilityInstance',context!);
        FacilityId = json['FacilityId'];
        Staff = JsonConverters.fromJson(json['Staff'],'StaffInstance',context!);
        StaffId = json['StaffId'];
        ParentBooking = JsonConverters.fromJson(json['ParentBooking'],'BookingInstance',context!);
        ParentBookingId = json['ParentBookingId'];
        SeriesIndex = json['SeriesIndex'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        Member = JsonConverters.fromJson(json['Member'],'MemberInstance',context!);
        MemberId = json['MemberId'];
        EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!);
        TasterSession = json['TasterSession'];
        ImmediatePayment = json['ImmediatePayment'];
        GradingEvent = json['GradingEvent'];
        Url = json['Url'];
        Visible = json['Visible'];
        Bookable = json['Bookable'];
        NonMemberProductId = json['NonMemberProductId'];
        TasterSessionProductId = json['TasterSessionProductId'];
        ActiveMemberCanBook = json['ActiveMemberCanBook'];
        NonMemberCanBook = json['NonMemberCanBook'];
        OnlineBookingTimetableLimit = json['OnlineBookingTimetableLimit'];
        OnlineBookingCancellationLimit = json['OnlineBookingCancellationLimit'];
        BookingCategoryId = json['BookingCategoryId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'BookingId': BookingId,
        'Name': Name,
        'Notes': Notes,
        'StartDate': JsonConverters.toJson(StartDate,'DateTime',context!),
        'Duration': Duration,
        'AllDay': AllDay,
        'Recurrence': Recurrence,
        'UseRecurrence': UseRecurrence,
        'MinAttendees': MinAttendees,
        'MaxAttendees': MaxAttendees,
        'Product': JsonConverters.toJson(Product,'ProductInstance',context!),
        'ProductId': ProductId,
        'Facility': JsonConverters.toJson(Facility,'FacilityInstance',context!),
        'FacilityId': FacilityId,
        'Staff': JsonConverters.toJson(Staff,'StaffInstance',context!),
        'StaffId': StaffId,
        'ParentBooking': JsonConverters.toJson(ParentBooking,'BookingInstance',context!),
        'ParentBookingId': ParentBookingId,
        'SeriesIndex': SeriesIndex,
        'Deleted': Deleted,
        'Demo': Demo,
        'Member': JsonConverters.toJson(Member,'MemberInstance',context!),
        'MemberId': MemberId,
        'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!),
        'TasterSession': TasterSession,
        'ImmediatePayment': ImmediatePayment,
        'GradingEvent': GradingEvent,
        'Url': Url,
        'Visible': Visible,
        'Bookable': Bookable,
        'NonMemberProductId': NonMemberProductId,
        'TasterSessionProductId': TasterSessionProductId,
        'ActiveMemberCanBook': ActiveMemberCanBook,
        'NonMemberCanBook': NonMemberCanBook,
        'OnlineBookingTimetableLimit': OnlineBookingTimetableLimit,
        'OnlineBookingCancellationLimit': OnlineBookingCancellationLimit,
        'BookingCategoryId': BookingCategoryId
    };

    getTypeName() => "BookingInstance";
    TypeContext? context = _ctx;
}

class MembershipTypeInstance implements IConvertible
{
    int? MembershipTypeId;
    String? Name;
    String? Description;
    String? Definition;
    ScheduleInstance? Schedule;
    // @References(typeof(ScheduleInstance))
    int? ScheduleId;

    bool? Deleted;
    bool? Demo;
    bool? Public;
    int? SessionsRemaining;
    int? ClassesRemaining;
    int? SortOrder;
    bool? Special;
    bool? MultiSiteAccess;
    int? MemberLimit;
    String? PromotionCode;
    DateTime? PromotionStart;
    DateTime? PromotionEnd;
    int? LicensesRemaining;
    bool? BookingAccessOnly;
    int? SessionsPeriod;
    int? SessionsFrequency;
    DateTime? StartsOn;
    bool? AllowSelectionAfterStartsOn;

    MembershipTypeInstance({this.MembershipTypeId,this.Name,this.Description,this.Definition,this.Schedule,this.ScheduleId,this.Deleted,this.Demo,this.Public,this.SessionsRemaining,this.ClassesRemaining,this.SortOrder,this.Special,this.MultiSiteAccess,this.MemberLimit,this.PromotionCode,this.PromotionStart,this.PromotionEnd,this.LicensesRemaining,this.BookingAccessOnly,this.SessionsPeriod,this.SessionsFrequency,this.StartsOn,this.AllowSelectionAfterStartsOn});
    MembershipTypeInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        MembershipTypeId = json['MembershipTypeId'];
        Name = json['Name'];
        Description = json['Description'];
        Definition = json['Definition'];
        Schedule = JsonConverters.fromJson(json['Schedule'],'ScheduleInstance',context!);
        ScheduleId = json['ScheduleId'];
        Deleted = json['Deleted'];
        Demo = json['Demo'];
        Public = json['Public'];
        SessionsRemaining = json['SessionsRemaining'];
        ClassesRemaining = json['ClassesRemaining'];
        SortOrder = json['SortOrder'];
        Special = json['Special'];
        MultiSiteAccess = json['MultiSiteAccess'];
        MemberLimit = json['MemberLimit'];
        PromotionCode = json['PromotionCode'];
        PromotionStart = JsonConverters.fromJson(json['PromotionStart'],'DateTime',context!);
        PromotionEnd = JsonConverters.fromJson(json['PromotionEnd'],'DateTime',context!);
        LicensesRemaining = json['LicensesRemaining'];
        BookingAccessOnly = json['BookingAccessOnly'];
        SessionsPeriod = json['SessionsPeriod'];
        SessionsFrequency = json['SessionsFrequency'];
        StartsOn = JsonConverters.fromJson(json['StartsOn'],'DateTime',context!);
        AllowSelectionAfterStartsOn = json['AllowSelectionAfterStartsOn'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'MembershipTypeId': MembershipTypeId,
        'Name': Name,
        'Description': Description,
        'Definition': Definition,
        'Schedule': JsonConverters.toJson(Schedule,'ScheduleInstance',context!),
        'ScheduleId': ScheduleId,
        'Deleted': Deleted,
        'Demo': Demo,
        'Public': Public,
        'SessionsRemaining': SessionsRemaining,
        'ClassesRemaining': ClassesRemaining,
        'SortOrder': SortOrder,
        'Special': Special,
        'MultiSiteAccess': MultiSiteAccess,
        'MemberLimit': MemberLimit,
        'PromotionCode': PromotionCode,
        'PromotionStart': JsonConverters.toJson(PromotionStart,'DateTime',context!),
        'PromotionEnd': JsonConverters.toJson(PromotionEnd,'DateTime',context!),
        'LicensesRemaining': LicensesRemaining,
        'BookingAccessOnly': BookingAccessOnly,
        'SessionsPeriod': SessionsPeriod,
        'SessionsFrequency': SessionsFrequency,
        'StartsOn': JsonConverters.toJson(StartsOn,'DateTime',context!),
        'AllowSelectionAfterStartsOn': AllowSelectionAfterStartsOn
    };

    getTypeName() => "MembershipTypeInstance";
    TypeContext? context = _ctx;
}

class BookingMembershipTypeInstance implements IConvertible
{
    int? BookingMembershipTypeId;
    BookingInstance? Booking;
    // @References(typeof(BookingInstance))
    int? BookingId;

    MembershipTypeInstance? MembershipType;
    // @References(typeof(MembershipTypeInstance))
    int? MembershipTypeId;

    BookingMembershipTypeInstance({this.BookingMembershipTypeId,this.Booking,this.BookingId,this.MembershipType,this.MembershipTypeId});
    BookingMembershipTypeInstance.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        BookingMembershipTypeId = json['BookingMembershipTypeId'];
        Booking = JsonConverters.fromJson(json['Booking'],'BookingInstance',context!);
        BookingId = json['BookingId'];
        MembershipType = JsonConverters.fromJson(json['MembershipType'],'MembershipTypeInstance',context!);
        MembershipTypeId = json['MembershipTypeId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'BookingMembershipTypeId': BookingMembershipTypeId,
        'Booking': JsonConverters.toJson(Booking,'BookingInstance',context!),
        'BookingId': BookingId,
        'MembershipType': JsonConverters.toJson(MembershipType,'MembershipTypeInstance',context!),
        'MembershipTypeId': MembershipTypeId
    };

    getTypeName() => "BookingMembershipTypeInstance";
    TypeContext? context = _ctx;
}

// @AutoQueryViewer(Description="", IconUrl="octicon:database", Title="BookingMembershipType")
class FindBookingMembershipType extends QueryDb<BookingMembershipTypeInstance> implements IConvertible
{
    FindBookingMembershipType();
    FindBookingMembershipType.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "FindBookingMembershipType";
    TypeContext? context = _ctx;
}

// @DataContract
class QueryResponse<T> implements IConvertible
{
    // @DataMember(Order=1)
    int? Offset;

    // @DataMember(Order=2)
    int? Total;

    // @DataMember(Order=3)
    List<T>? Results;

    // @DataMember(Order=4)
    Map<String,String?>? Meta;

    // @DataMember(Order=5)
    ResponseStatus? ResponseStatus;

    QueryResponse({this.Offset,this.Total,this.Results,this.Meta,this.ResponseStatus});
    QueryResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Offset = json['Offset'];
        Total = json['Total'];
        Results = JsonConverters.fromJson(json['Results'],'List<${runtimeGenericTypeDefs(this,[0]).join(",")}>',context!);
        Meta = JsonConverters.toStringMap(json['Meta']);
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Offset': Offset,
        'Total': Total,
        'Results': JsonConverters.toJson(Results,'List<T>',context!),
        'Meta': Meta,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "QueryResponse<$T>";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.clubmanagercentral.com', types: <String, TypeInfo> {
    'ProductInstance': TypeInfo(TypeOf.Class, create:() => ProductInstance()),
    'ScheduleInstance': TypeInfo(TypeOf.Class, create:() => ScheduleInstance()),
    'FacilityInstance': TypeInfo(TypeOf.Class, create:() => FacilityInstance()),
    'StaffInstance': TypeInfo(TypeOf.Class, create:() => StaffInstance()),
    'LossReasonInstance': TypeInfo(TypeOf.Class, create:() => LossReasonInstance()),
    'UserInstance': TypeInfo(TypeOf.Class, create:() => UserInstance()),
    'MemberInstance': TypeInfo(TypeOf.Class, create:() => MemberInstance()),
    'Uint8List': TypeInfo(TypeOf.Class, create:() => Uint8List(0)),
    'BookingInstance': TypeInfo(TypeOf.Class, create:() => BookingInstance()),
    'MembershipTypeInstance': TypeInfo(TypeOf.Class, create:() => MembershipTypeInstance()),
    'BookingMembershipTypeInstance': TypeInfo(TypeOf.Class, create:() => BookingMembershipTypeInstance()),
    'FindBookingMembershipType': TypeInfo(TypeOf.Class, create:() => FindBookingMembershipType()),
    'List<BookingMembershipTypeInstance>': TypeInfo(TypeOf.Class, create:() => <BookingMembershipTypeInstance>[]),
});

Dart FindBookingMembershipType DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/Query/BookingMembershipType HTTP/1.1 
Host: api.clubmanagercentral.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"Skip":0,"Take":0,"OrderBy":"String","OrderByDesc":"String","Include":"String","Fields":"String","Meta":{"String":"String"}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Offset":0,"Total":0,"Results":[{"BookingMembershipTypeId":0,"Booking":{"BookingId":0,"Name":"String","Notes":"String","StartDate":"0001-01-01T00:00:00.0000000","Duration":0,"AllDay":false,"Recurrence":"String","UseRecurrence":false,"MinAttendees":0,"MaxAttendees":0,"Product":{"ProductId":0,"Group":"String","Name":"String","Description":"String","Price":0,"VAT":0,"TotalPrice":0,"ProductType":0,"Deleted":false,"Demo":false,"UsageCount":0,"StockLevel":0,"ReorderFlag":0,"VisibleOnline":false},"ProductId":0,"Facility":{"FacilityId":0,"Name":"String","Description":"String","Schedule":{"ScheduleId":0,"Name":"String","Description":"String","MondayFrom":"PT0S","MondayTo":"PT0S","TuesdayFrom":"PT0S","TuesdayTo":"PT0S","WednesdayFrom":"PT0S","WednesdayTo":"PT0S","ThursdayFrom":"PT0S","ThursdayTo":"PT0S","FridayFrom":"PT0S","FridayTo":"PT0S","SaturdayFrom":"PT0S","SaturdayTo":"PT0S","SundayFrom":"PT0S","SundayTo":"PT0S","ScheduleType":0,"Deleted":false,"Demo":false},"ScheduleId":0,"Colour":"String","Bookable":false,"Deleted":false,"Demo":false,"Group":"String"},"FacilityId":0,"Staff":{"StaffId":0,"Name":"String","Schedule":{"ScheduleId":0,"Name":"String","Description":"String","MondayFrom":"PT0S","MondayTo":"PT0S","TuesdayFrom":"PT0S","TuesdayTo":"PT0S","WednesdayFrom":"PT0S","WednesdayTo":"PT0S","ThursdayFrom":"PT0S","ThursdayTo":"PT0S","FridayFrom":"PT0S","FridayTo":"PT0S","SaturdayFrom":"PT0S","SaturdayTo":"PT0S","SundayFrom":"PT0S","SundayTo":"PT0S","ScheduleType":0,"Deleted":false,"Demo":false},"ScheduleId":0,"Deleted":false,"Demo":false,"Group":"String","Profile":"String","FirstAidTrained":false,"DBSCheck":"0001-01-01T00:00:00.0000000","InsuranceExpires":"0001-01-01T00:00:00.0000000"},"StaffId":0,"ParentBooking":{"BookingId":0,"Name":"String","Notes":"String","StartDate":"0001-01-01T00:00:00.0000000","Duration":0,"AllDay":false,"Recurrence":"String","UseRecurrence":false,"MinAttendees":0,"MaxAttendees":0,"Product":{"ProductId":0,"Group":"String","Name":"String","Description":"String","Price":0,"VAT":0,"TotalPrice":0,"ProductType":0,"Deleted":false,"Demo":false,"UsageCount":0,"StockLevel":0,"ReorderFlag":0,"VisibleOnline":false},"ProductId":0,"Facility":{"FacilityId":0,"Name":"String","Description":"String","Schedule":{"ScheduleId":0,"Name":"String","Description":"String","MondayFrom":"PT0S","MondayTo":"PT0S","TuesdayFrom":"PT0S","TuesdayTo":"PT0S","WednesdayFrom":"PT0S","WednesdayTo":"PT0S","ThursdayFrom":"PT0S","ThursdayTo":"PT0S","FridayFrom":"PT0S","FridayTo":"PT0S","SaturdayFrom":"PT0S","SaturdayTo":"PT0S","SundayFrom":"PT0S","SundayTo":"PT0S","ScheduleType":0,"Deleted":false,"Demo":false},"ScheduleId":0,"Colour":"String","Bookable":false,"Deleted":false,"Demo":false,"Group":"String"},"FacilityId":0,"Staff":{"StaffId":0,"Name":"String","Schedule":{"ScheduleId":0,"Name":"String","Description":"String","MondayFrom":"PT0S","MondayTo":"PT0S","TuesdayFrom":"PT0S","TuesdayTo":"PT0S","WednesdayFrom":"PT0S","WednesdayTo":"PT0S","ThursdayFrom":"PT0S","ThursdayTo":"PT0S","FridayFrom":"PT0S","FridayTo":"PT0S","SaturdayFrom":"PT0S","SaturdayTo":"PT0S","SundayFrom":"PT0S","SundayTo":"PT0S","ScheduleType":0,"Deleted":false,"Demo":false},"ScheduleId":0,"Deleted":false,"Demo":false,"Group":"String","Profile":"String","FirstAidTrained":false,"DBSCheck":"0001-01-01T00:00:00.0000000","InsuranceExpires":"0001-01-01T00:00:00.0000000"},"StaffId":0,"ParentBooking":{"BookingId":0,"Name":"String","Notes":"String","StartDate":"0001-01-01T00:00:00.0000000","Duration":0,"AllDay":false,"Recurrence":"String","UseRecurrence":false,"MinAttendees":0,"MaxAttendees":0,"Product":{"ProductId":0,"Group":"String","Name":"String","Description":"String","Price":0,"VAT":0,"TotalPrice":0,"ProductType":0,"Deleted":false,"Demo":false,"UsageCount":0,"StockLevel":0,"ReorderFlag":0,"VisibleOnline":false},"ProductId":0,"Facility":{"FacilityId":0,"Name":"String","Description":"String","Schedule":{"ScheduleId":0,"Name":"String","Description":"String","MondayFrom":"PT0S","MondayTo":"PT0S","TuesdayFrom":"PT0S","TuesdayTo":"PT0S","WednesdayFrom":"PT0S","WednesdayTo":"PT0S","ThursdayFrom":"PT0S","ThursdayTo":"PT0S","FridayFrom":"PT0S","FridayTo":"PT0S","SaturdayFrom":"PT0S","SaturdayTo":"PT0S","SundayFrom":"PT0S","SundayTo":"PT0S","ScheduleType":0,"Deleted":false,"Demo":false},"ScheduleId":0,"Colour":"String","Bookable":false,"Deleted":false,"Demo":false,"Group":"String"},"FacilityId":0,"Staff":{"StaffId":0,"Name":"String","Schedule":{"ScheduleId":0,"Name":"String","Description":"String","MondayFrom":"PT0S","MondayTo":"PT0S","TuesdayFrom":"PT0S","TuesdayTo":"PT0S","WednesdayFrom":"PT0S","WednesdayTo":"PT0S","ThursdayFrom":"PT0S","ThursdayTo":"PT0S","FridayFrom":"PT0S","FridayTo":"PT0S","SaturdayFrom":"PT0S","SaturdayTo":"PT0S","SundayFrom":"PT0S","SundayTo":"PT0S","ScheduleType":0,"Deleted":false,"Demo":false},"ScheduleId":0,"Deleted":false,"Demo":false,"Group":"String","Profile":"String","FirstAidTrained":false,"DBSCheck":"0001-01-01T00:00:00.0000000","InsuranceExpires":"0001-01-01T00:00:00.0000000"},"StaffId":0,"ParentBooking":null,"ParentBookingId":0,"SeriesIndex":0,"Deleted":false,"Demo":false,"Member":{"MemberId":0,"MemberType":0,"MembershipNumber":"String","CardNumber":"String","CompanyName":"String","Surname":"String","Forenames":"String","Title":"String","Gender":0,"DateOfBirth":"0001-01-01T00:00:00.0000000","Address1":"String","Address2":"String","City":"String","County":"String","Postcode":"String","HomePhone":"String","MobilePhone":"String","EmailAddress":"String","EmailOptOut":false,"SmsOptOut":false,"PhoneOptOut":false,"LetterOptOut":false,"DirectDebitAccountHolder":"String","DirectDebitAccountNumber":"String","DirectDebitSortCode":"String","JoinedDate":"0001-01-01T00:00:00.0000000","DirectDebitBankAddress":"String","FullName":"String","ExternalReference":"String","Photo":"AA==","PhotoModifiedDate":"0001-01-01T00:00:00.0000000","Notes":"String","Deleted":false,"Demo":false,"UseExternalStatus":false,"ExternalStatus":0,"FreeText":"String","MemberKey":"00000000000000000000000000000000","Balance":0,"CreditLimit":0,"CreatedDate":"0001-01-01T00:00:00.0000000","ModifiedDate":"0001-01-01T00:00:00.0000000","DeletedDate":"0001-01-01T00:00:00.0000000","ExternalSource":0,"RetentionMetric":0,"MonthlyAttendanceFrequency":0,"AssignedToUserId":0,"CreatedByUserId":0,"DeletedByUserId":0,"LossReason":{"LossReasonId":0,"Reason":"String","Deleted":false,"Demo":false,"Selectable":false},"LossReasonId":0,"WonOrLost":0,"WonOrLostDate":"0001-01-01T00:00:00.0000000","GiftAidPermission":false,"PhotoPermission":false,"FirstAidPermission":false,"EmergencyContact":"String","WonOrLostByUser":{"UserId":0,"UserName":"String","Name":"String","Email":"String","MobilePhone":"String","Enabled":false,"LastLogin":"0001-01-01T00:00:00.0000000","Created":"0001-01-01T00:00:00.0000000","Training":false,"Deleted":false,"CoursesCompleted":0,"DisplayHomeNotification":false,"TwoFactorEnabled":false,"EmailConfirmed":false,"MobilePhoneConfirmed":false,"Notifications":false,"ChangePassword":"0001-01-01T00:00:00.0000000","Activated":"0001-01-01T00:00:00.0000000"},"WonOrLostByUserId":0,"AgreedToTerms":"0001-01-01T00:00:00.0000000","OnlineBookingBanned":false,"Country":"String","FingerprintEnrolled":"0001-01-01T00:00:00.0000000","LastPaymentAmount":0,"Pin":"String","ProspectingPoints":0,"AchievementPoints":0,"ParentForenames":"String","ParentSurname":"String"},"MemberId":0,"EndDate":"0001-01-01T00:00:00.0000000","TasterSession":false,"ImmediatePayment":false,"GradingEvent":false,"Url":"String","Visible":false,"Bookable":false,"NonMemberProductId":0,"TasterSessionProductId":0,"ActiveMemberCanBook":false,"NonMemberCanBook":false,"OnlineBookingTimetableLimit":0,"OnlineBookingCancellationLimit":0,"BookingCategoryId":0},"ParentBookingId":0,"SeriesIndex":0,"Deleted":false,"Demo":false,"Member":{"MemberId":0,"MemberType":0,"MembershipNumber":"String","CardNumber":"String","CompanyName":"String","Surname":"String","Forenames":"String","Title":"String","Gender":0,"DateOfBirth":"0001-01-01T00:00:00.0000000","Address1":"String","Address2":"String","City":"String","County":"String","Postcode":"String","HomePhone":"String","MobilePhone":"String","EmailAddress":"String","EmailOptOut":false,"SmsOptOut":false,"PhoneOptOut":false,"LetterOptOut":false,"DirectDebitAccountHolder":"String","DirectDebitAccountNumber":"String","DirectDebitSortCode":"String","JoinedDate":"0001-01-01T00:00:00.0000000","DirectDebitBankAddress":"String","FullName":"String","ExternalReference":"String","Photo":"AA==","PhotoModifiedDate":"0001-01-01T00:00:00.0000000","Notes":"String","Deleted":false,"Demo":false,"UseExternalStatus":false,"ExternalStatus":0,"FreeText":"String","MemberKey":"00000000000000000000000000000000","Balance":0,"CreditLimit":0,"CreatedDate":"0001-01-01T00:00:00.0000000","ModifiedDate":"0001-01-01T00:00:00.0000000","DeletedDate":"0001-01-01T00:00:00.0000000","ExternalSource":0,"RetentionMetric":0,"MonthlyAttendanceFrequency":0,"AssignedToUserId":0,"CreatedByUserId":0,"DeletedByUserId":0,"LossReason":{"LossReasonId":0,"Reason":"String","Deleted":false,"Demo":false,"Selectable":false},"LossReasonId":0,"WonOrLost":0,"WonOrLostDate":"0001-01-01T00:00:00.0000000","GiftAidPermission":false,"PhotoPermission":false,"FirstAidPermission":false,"EmergencyContact":"String","WonOrLostByUser":{"UserId":0,"UserName":"String","Name":"String","Email":"String","MobilePhone":"String","Enabled":false,"LastLogin":"0001-01-01T00:00:00.0000000","Created":"0001-01-01T00:00:00.0000000","Training":false,"Deleted":false,"CoursesCompleted":0,"DisplayHomeNotification":false,"TwoFactorEnabled":false,"EmailConfirmed":false,"MobilePhoneConfirmed":false,"Notifications":false,"ChangePassword":"0001-01-01T00:00:00.0000000","Activated":"0001-01-01T00:00:00.0000000"},"WonOrLostByUserId":0,"AgreedToTerms":"0001-01-01T00:00:00.0000000","OnlineBookingBanned":false,"Country":"String","FingerprintEnrolled":"0001-01-01T00:00:00.0000000","LastPaymentAmount":0,"Pin":"String","ProspectingPoints":0,"AchievementPoints":0,"ParentForenames":"String","ParentSurname":"String"},"MemberId":0,"EndDate":"0001-01-01T00:00:00.0000000","TasterSession":false,"ImmediatePayment":false,"GradingEvent":false,"Url":"String","Visible":false,"Bookable":false,"NonMemberProductId":0,"TasterSessionProductId":0,"ActiveMemberCanBook":false,"NonMemberCanBook":false,"OnlineBookingTimetableLimit":0,"OnlineBookingCancellationLimit":0,"BookingCategoryId":0},"ParentBookingId":0,"SeriesIndex":0,"Deleted":false,"Demo":false,"Member":{"MemberId":0,"MemberType":0,"MembershipNumber":"String","CardNumber":"String","CompanyName":"String","Surname":"String","Forenames":"String","Title":"String","Gender":0,"DateOfBirth":"0001-01-01T00:00:00.0000000","Address1":"String","Address2":"String","City":"String","County":"String","Postcode":"String","HomePhone":"String","MobilePhone":"String","EmailAddress":"String","EmailOptOut":false,"SmsOptOut":false,"PhoneOptOut":false,"LetterOptOut":false,"DirectDebitAccountHolder":"String","DirectDebitAccountNumber":"String","DirectDebitSortCode":"String","JoinedDate":"0001-01-01T00:00:00.0000000","DirectDebitBankAddress":"String","FullName":"String","ExternalReference":"String","Photo":"AA==","PhotoModifiedDate":"0001-01-01T00:00:00.0000000","Notes":"String","Deleted":false,"Demo":false,"UseExternalStatus":false,"ExternalStatus":0,"FreeText":"String","MemberKey":"00000000000000000000000000000000","Balance":0,"CreditLimit":0,"CreatedDate":"0001-01-01T00:00:00.0000000","ModifiedDate":"0001-01-01T00:00:00.0000000","DeletedDate":"0001-01-01T00:00:00.0000000","ExternalSource":0,"RetentionMetric":0,"MonthlyAttendanceFrequency":0,"AssignedToUserId":0,"CreatedByUserId":0,"DeletedByUserId":0,"LossReason":{"LossReasonId":0,"Reason":"String","Deleted":false,"Demo":false,"Selectable":false},"LossReasonId":0,"WonOrLost":0,"WonOrLostDate":"0001-01-01T00:00:00.0000000","GiftAidPermission":false,"PhotoPermission":false,"FirstAidPermission":false,"EmergencyContact":"String","WonOrLostByUser":{"UserId":0,"UserName":"String","Name":"String","Email":"String","MobilePhone":"String","Enabled":false,"LastLogin":"0001-01-01T00:00:00.0000000","Created":"0001-01-01T00:00:00.0000000","Training":false,"Deleted":false,"CoursesCompleted":0,"DisplayHomeNotification":false,"TwoFactorEnabled":false,"EmailConfirmed":false,"MobilePhoneConfirmed":false,"Notifications":false,"ChangePassword":"0001-01-01T00:00:00.0000000","Activated":"0001-01-01T00:00:00.0000000"},"WonOrLostByUserId":0,"AgreedToTerms":"0001-01-01T00:00:00.0000000","OnlineBookingBanned":false,"Country":"String","FingerprintEnrolled":"0001-01-01T00:00:00.0000000","LastPaymentAmount":0,"Pin":"String","ProspectingPoints":0,"AchievementPoints":0,"ParentForenames":"String","ParentSurname":"String"},"MemberId":0,"EndDate":"0001-01-01T00:00:00.0000000","TasterSession":false,"ImmediatePayment":false,"GradingEvent":false,"Url":"String","Visible":false,"Bookable":false,"NonMemberProductId":0,"TasterSessionProductId":0,"ActiveMemberCanBook":false,"NonMemberCanBook":false,"OnlineBookingTimetableLimit":0,"OnlineBookingCancellationLimit":0,"BookingCategoryId":0},"BookingId":0,"MembershipType":{"MembershipTypeId":0,"Name":"String","Description":"String","Definition":"String","Schedule":{"ScheduleId":0,"Name":"String","Description":"String","MondayFrom":"PT0S","MondayTo":"PT0S","TuesdayFrom":"PT0S","TuesdayTo":"PT0S","WednesdayFrom":"PT0S","WednesdayTo":"PT0S","ThursdayFrom":"PT0S","ThursdayTo":"PT0S","FridayFrom":"PT0S","FridayTo":"PT0S","SaturdayFrom":"PT0S","SaturdayTo":"PT0S","SundayFrom":"PT0S","SundayTo":"PT0S","ScheduleType":0,"Deleted":false,"Demo":false},"ScheduleId":0,"Deleted":false,"Demo":false,"Public":false,"SessionsRemaining":0,"ClassesRemaining":0,"SortOrder":0,"Special":false,"MultiSiteAccess":false,"MemberLimit":0,"PromotionCode":"String","PromotionStart":"0001-01-01T00:00:00.0000000","PromotionEnd":"0001-01-01T00:00:00.0000000","LicensesRemaining":0,"BookingAccessOnly":false,"SessionsPeriod":0,"SessionsFrequency":0,"StartsOn":"0001-01-01T00:00:00.0000000","AllowSelectionAfterStartsOn":false},"MembershipTypeId":0}],"Meta":{"String":"String"},"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}