ClubManager.Api

<back to all web services

MemberService.GetMembersForAccessControlRequest

Requires Authentication
The following routes are available for this service:
POST,GET/api/Member/GetMembersForAccessControl
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using ClubManager.Interfaces.Models.Member;
using ClubManager.Interfaces.Models.Membership;
using ClubManager.Interfaces.Models.ResourceManagement;
using ClubManager.Interfaces.Models.Branch;
using ClubManager.Interfaces.Models;

namespace ClubManager.Interfaces.Models
{
    public partial class Iso3166Country
    {
        public Iso3166Country()
        {
            PhonePrefix = new string[]{};
        }

        public virtual string Name { get; set; }
        public virtual string TwoLetterCode { get; set; }
        public virtual string ThreeLetterCode { get; set; }
        public virtual int NumericCode { get; set; }
        public virtual string[] PhonePrefix { get; set; }
    }

}

namespace ClubManager.Interfaces.Models.Branch
{
    [Flags]
    public enum AppFeature
    {
        None = 0,
        JoinOnline = 1,
        TodaysClasses = 2,
        RegistrationForm = 4,
        ForthcomingBookings = 8,
        WeeklyTimetable = 16,
        SessionTimetable = 32,
        FacilityTimetable = 64,
        TasterSessions = 128,
        HowToFindUs = 256,
        AttendanceLeaderboard = 512,
        MemberMessages = 1024,
        AchievementGallery = 2048,
        FreeText = 4096,
        QRCode = 8192,
        ShareAndInviteAFriend = 16384,
        RenewalPrompt = 32768,
        CurrentCapacity = 65536,
        JoinFriend = 131072,
        MemberPoints = 262144,
        PromoMembership = 524288,
        Shop = 1048576,
        ShowFacebook = 2097152,
        ShowTwitter = 4194304,
        ShowInstagram = 8388608,
        ShowYouTube = 16777216,
        ShowTikTok = 33554432,
        ShowShopify = 67108864,
        AttendanceStreak = 134217728,
        BookingCategories = 268435456,
        ShowSessionsRemaining = 536870912,
    }

    public enum ApplicationType
    {
        Gym = 1,
        Golf = 2,
        Dance = 3,
        Soccer = 4,
        Vanilla = 5,
        Association = 6,
        MartialArts = 7,
        Gymnastics = 8,
        Swimming = 9,
        Nurseries = 10,
        Racquet = 11,
        SubscriptionBox = 12,
        Clinic = 13,
        Wellness = 14,
        HealthAndBeauty = 15,
        Climbing = 16,
        AfterSchoolClub = 17,
        PersonalTrainer = 18,
    }

    public partial class Branch
    {
        public virtual int BranchId { get; set; }
        public virtual BranchType BranchType { get; set; }
        public virtual string Name { get; set; }
        public virtual string Prefix { get; set; }
        public virtual string CompanyName { get; set; }
        public virtual string CompanyAddress { get; set; }
        public virtual string CompanyOfficialName { get; set; }
        public virtual string DirectDebitReference { get; set; }
        public virtual string FastDDReference { get; set; }
        public virtual string FastDDPlatinumRef { get; set; }
        public virtual string Style { get; set; }
        public virtual Guid PublicKey { get; set; }
        public virtual Guid PrivateKey { get; set; }
        public virtual DateTime? TrialStart { get; set; }
        public virtual DateTime? TrialEnd { get; set; }
        public virtual DateTime? PaymentStartDate { get; set; }
        public virtual bool InTrial { get; set; }
        public virtual bool UseFreeText { get; set; }
        public virtual string FreeTextTitle { get; set; }
        public virtual bool UseMembershipTypes { get; set; }
        public virtual string DDUserName { get; set; }
        public virtual string DDPassword { get; set; }
        public virtual string DDServiceUser { get; set; }
        public virtual string DfcUserName { get; set; }
        public virtual string DfcPassword { get; set; }
        public virtual string DfcClubNumber { get; set; }
        public virtual string CompanyEmail { get; set; }
        public virtual string SmsOriginator { get; set; }
        public virtual int? LanguageId { get; set; }
        public virtual decimal VatRate { get; set; }
        public virtual int SwipeAction { get; set; }
        public virtual Module Modules { get; set; }
        public virtual bool UseCreditBalance { get; set; }
        public virtual bool AllowNegativeBalance { get; set; }
        public virtual decimal DefaultCreditLimit { get; set; }
        public virtual ApplicationType ApplicationType { get; set; }
        public virtual string ExternalProviderWarning { get; set; }
        public virtual string Domain { get; set; }
        public virtual string MobileDomain { get; set; }
        public virtual int OnlineBookingTimetableLimit { get; set; }
        public virtual int OnlineBookingCancellationLimit { get; set; }
        public virtual int? OnlineBookingLimit { get; set; }
        public virtual Feature Feature { get; set; }
        public virtual string TimeZone { get; set; }
        public virtual string Culture { get; set; }
        public virtual string Country { get; set; }
        public virtual Iso3166Country Iso3166Country { get; set; }
        public virtual string CurrencyCulture { get; set; }
        public virtual bool ShowGoCardlessAd { get; set; }
        public virtual decimal GoCardlessSaving { get; set; }
        public virtual string SROAddress { get; set; }
        public virtual string MCAClubNo { get; set; }
        public virtual string MCAClubRef { get; set; }
        public virtual string TwilioNumber { get; set; }
        public virtual string Telephone { get; set; }
        public virtual bool Transferred { get; set; }
        public virtual bool OnlineBookingAllowNonActives { get; set; }
        public virtual int MemberLimit { get; set; }
        public virtual string SortCode { get; set; }
        public virtual string AccountNumber { get; set; }
        public virtual string Website { get; set; }
        public virtual bool SendSMSAppointmentRemindersDefault { get; set; }
        public virtual bool SendSMSBookingReminders { get; set; }
        public virtual bool GiftAid { get; set; }
        public virtual TimeSpan GlobalBookingStartTime { get; set; }
        public virtual TimeSpan GlobalBookingEndTime { get; set; }
        public virtual int BookingMinuteIncrements { get; set; }
        public virtual string CancelReason { get; set; }
        public virtual string CancelFurther { get; set; }
        public virtual DateTime? CancelDate { get; set; }
        public virtual decimal DirectDebitFee { get; set; }
        public virtual decimal CreditCardFee { get; set; }
        public virtual decimal SMSPriceAdjustment { get; set; }
        public virtual bool BookingsPayLinkOnTrack { get; set; }
        public virtual int AccessControlTimeLimit { get; set; }
        public virtual BranchMinimiser Minimiser { get; set; }
        public virtual bool AutoGenerateLicenses { get; set; }
        public virtual string Terms { get; set; }
        public virtual int FingerprintThreshold { get; set; }
        public virtual int FingerprintMatcherThreshold { get; set; }
        public virtual bool AutoShutoff { get; set; }
        public virtual string PrimaryColors { get; set; }
        public virtual bool HasColors { get; set; }
        public virtual string PrimaryColor { get; set; }
        public virtual string SecondaryColor { get; set; }
        public virtual string BackgroundColor { get; set; }
        public virtual string HeaderTopColor { get; set; }
        public virtual string HeaderBottomColor { get; set; }
        public virtual string SideLeftColor { get; set; }
        public virtual string SideRightColor { get; set; }
        public virtual string SideFontColor { get; set; }
        public virtual string SideFontActiveColor { get; set; }
        public virtual string ExtWebBackgroundColor { get; set; }
        public virtual string ExtWebTextColor { get; set; }
        public virtual string ExtWebTintBackColor { get; set; }
        public virtual string ExtWebHighlightBackColor { get; set; }
        public virtual string ExtWebTabBackColor { get; set; }
        public virtual string HeadingColor { get; set; }
        public virtual ReportFormat ReportFormat { get; set; }
        public virtual bool FixPayments { get; set; }
        public virtual string FixPaymentSchedle { get; set; }
        public virtual AppFeature AppFeature { get; set; }
        public virtual SignInScreenFeature SignInScreenFeature { get; set; }
        public virtual string AppOptions { get; set; }
        public virtual string CompanyDescription { get; set; }
        public virtual int? Capacity { get; set; }
        public virtual int? MonthlySalesTarget { get; set; }
        public virtual int BookingAccessTimeLimit { get; set; }
        public virtual string Facebook { get; set; }
        public virtual string Twitter { get; set; }
        public virtual string Instagram { get; set; }
        public virtual string YouTube { get; set; }
        public virtual string TikTok { get; set; }
        public virtual string Shopify { get; set; }
        public virtual int MinimumMemberAge { get; set; }
        public virtual DateTime? TermsAndConditionsVersionDate { get; set; }
        public virtual DateTime? TermsAndConditionsAcceptedDate { get; set; }
        public virtual bool TermsAndConditionsAccepted { get; set; }
        public virtual string SiteUrl { get; set; }
        public virtual bool IsUsingSmartDebit { get; set; }
        public virtual bool IsUsingDfc { get; set; }
        public virtual bool IsSouthAfrica { get; set; }
        public virtual bool SmartDebitConfigured { get; set; }
        public virtual bool DfcConfigured { get; set; }
        public virtual bool UsingPaymentMethods { get; set; }
        public virtual string SmsPrefix { get; set; }
        public virtual string Logo { get; set; }
        public virtual string LogoThumbnail { get; set; }
        public virtual string LogoHash { get; set; }
        public virtual bool SendMarketingInviteWhenMemberAdded { get; set; }
        public virtual bool SendMarketingInviteWhenMemberJoinedOnline { get; set; }
        public virtual bool MarketingComplianceManagedExternally { get; set; }
        public virtual bool OnlineBookingAllowWaitingList { get; set; }
        public virtual bool OnlineMultiSiteEnabled { get; set; }
        public virtual bool CanBookOnline { get; set; }
        public virtual int PublicMembershipTypes { get; set; }
        public virtual int TrustedBranches { get; set; }
        public virtual bool IsAddingProspects { get; set; }
        public virtual bool IsSellingMemberships { get; set; }
        public virtual bool IsCreatingTasks { get; set; }
        public virtual bool IsCreatingAppointments { get; set; }
        public virtual bool IsBookingClasses { get; set; }
        public virtual bool IsRegisteringAttendance { get; set; }
        public virtual bool IsSellingProducts { get; set; }
        public virtual bool IsSendingEmails { get; set; }
        public virtual bool IsSendingSMS { get; set; }
        public virtual bool IsUsingAutomation { get; set; }
        public virtual bool DeductSessionsOnBooking { get; set; }
        public virtual bool ShowTrustedBranchBookings { get; set; }
        public virtual int Score { get; set; }
        public virtual string ApplicationId { get; set; }
        public virtual string iOSAppLink { get; set; }
        public virtual string AndroidAppLink { get; set; }
    }

    public enum BranchMinimiser
    {
        None,
        CMGo,
        BasicPortal,
    }

    public enum BranchType
    {
        DebitFinance,
        SmartDebit,
        Standard,
        Root,
        Reseller,
        Referrer,
    }

    [Flags]
    public enum Feature
    {
        None = 0,
        Standard = 1,
        Bookings = 2,
        Rota = 4,
        GoCardless = 8,
        HomeScreen = 16,
        EPos = 32,
        Attendance = 64,
        Sales = 128,
        PaymentCollections = 256,
        MailChimp = 512,
        MultiSite = 1024,
        AccountingDashboard = 2048,
        OtherDashboards = 4096,
        Reports = 8192,
        AdvancedAccounting = 16384,
        MemberLicenseDates = 32768,
        FaceRecognition = 65536,
        MemberAccountCreation = 131072,
        Automation = 262144,
        FacebookMarketing = 524288,
        Grades = 1048576,
        ZoomIntegration = 2097152,
        SalesTargetChart = 4194304,
        CustomApp = 8388608,
        CustomAttributesOnPortal = 16777216,
        NoExport = 33554432,
        EnterpriseClubPerformanceDashboards = 67108864,
    }

    [Flags]
    public enum Module
    {
        Standard = 0,
        Bookings = 1,
    }

    public enum ReportFormat
    {
        PDF = 1,
        Word = 2,
        Excel = 3,
        PNG = 4,
        XPS = 5,
        CSV = 6,
        Html5 = 7,
    }

    [Flags]
    public enum SignInScreenFeature
    {
        None = 0,
        SignInNumPad = 1,
    }

}

namespace ClubManager.Interfaces.Models.Member
{
    public partial class AccessControlMember
    {
        public virtual int MemberId { get; set; }
        public virtual int? EnrolmentId { get; set; }
        public virtual int BranchId { get; set; }
        public virtual MembershipState MembershipState { get; set; }
        public virtual string MembershipNumber { get; set; }
        public virtual string CardNumber { get; set; }
        public virtual string Forenames { get; set; }
        public virtual string Surname { get; set; }
        public virtual bool MultiSiteAccess { get; set; }
        public virtual bool UseExternalStatus { get; set; }
        public virtual ExternalStatus ExternalStatus { get; set; }
        public virtual string MembershipTypeName { get; set; }
        public virtual DateTime? StartDate { get; set; }
        public virtual DateTime? EndDate { get; set; }
        public virtual int? ScheduleId { get; set; }
        public virtual int? SessionsRemaining { get; set; }
        public virtual DateTime? LastAttendance { get; set; }
        public virtual MemberAccess MemberAccess { get; set; }
    }

    public partial class AccessControlMembers
    {
        public AccessControlMembers()
        {
            Members = new List<AccessControlMember>{};
            Schedules = new List<Schedule>{};
        }

        public virtual List<AccessControlMember> Members { get; set; }
        public virtual List<Schedule> Schedules { get; set; }
        public virtual Branch Branch { get; set; }
    }

    public enum ExternalStatus
    {
        Off,
        Active,
        Pending,
        CancelledInsideContract,
        CancelledOutsideContract,
        WithDebtRecovery,
        Suspended,
    }

    public enum MembershipState
    {
        Prospect,
        Active,
        Expired,
        Cancelled,
        PaymentRequired,
        Suspended,
    }

}

namespace ClubManager.Interfaces.Models.Membership
{
    public enum MemberAccess
    {
        AccessAllowed = 1,
        NoAccess = 2,
        NoMultiSiteAccess = 3,
        NoSessions = 4,
        NoScheduleAccess = 5,
        NoAccessTimeLimitExceeded = 6,
        Suspended = 7,
    }

}

namespace ClubManager.Interfaces.Models.ResourceManagement
{
    public partial class Schedule
    {
        public virtual int ScheduleId { get; set; }
        public virtual string Name { get; set; }
        public virtual string Description { get; set; }
        public virtual TimeSpan? MondayFrom { get; set; }
        public virtual TimeSpan? MondayTo { get; set; }
        public virtual TimeSpan? TuesdayFrom { get; set; }
        public virtual TimeSpan? TuesdayTo { get; set; }
        public virtual TimeSpan? WednesdayFrom { get; set; }
        public virtual TimeSpan? WednesdayTo { get; set; }
        public virtual TimeSpan? ThursdayFrom { get; set; }
        public virtual TimeSpan? ThursdayTo { get; set; }
        public virtual TimeSpan? FridayFrom { get; set; }
        public virtual TimeSpan? FridayTo { get; set; }
        public virtual TimeSpan? SaturdayFrom { get; set; }
        public virtual TimeSpan? SaturdayTo { get; set; }
        public virtual TimeSpan? SundayFrom { get; set; }
        public virtual TimeSpan? SundayTo { get; set; }
        public virtual int ScheduleType { get; set; }
        public virtual int BranchId { get; set; }
        public virtual bool Deleted { get; set; }
        public virtual bool Demo { get; set; }
        public virtual bool Monday { get; set; }
        public virtual bool Tuesday { get; set; }
        public virtual bool Wednesday { get; set; }
        public virtual bool Thursday { get; set; }
        public virtual bool Friday { get; set; }
        public virtual bool Saturday { get; set; }
        public virtual bool Sunday { get; set; }
        public virtual TimeSpan MondayTotalTime { get; set; }
        public virtual TimeSpan TuesdayTotalTime { get; set; }
        public virtual TimeSpan WednesdayTotalTime { get; set; }
        public virtual TimeSpan ThursdayTotalTime { get; set; }
        public virtual TimeSpan FridayTotalTime { get; set; }
        public virtual TimeSpan SaturdayTotalTime { get; set; }
        public virtual TimeSpan SundayTotalTime { get; set; }
        public virtual TimeSpan TotalTime { get; set; }
    }

}

C# MemberService.GetMembersForAccessControlRequest DTOs

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

HTTP + JSV

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

POST /api/Member/GetMembersForAccessControl HTTP/1.1 
Host: api.clubmanagercentral.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	MemberId: 0,
	Date: 0001-01-01
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Members: 
	[
		{
			MemberId: 0,
			EnrolmentId: 0,
			BranchId: 0,
			MembershipState: Prospect,
			MembershipNumber: String,
			CardNumber: String,
			Forenames: String,
			Surname: String,
			MultiSiteAccess: False,
			UseExternalStatus: False,
			ExternalStatus: Off,
			MembershipTypeName: String,
			StartDate: 0001-01-01,
			EndDate: 0001-01-01,
			ScheduleId: 0,
			SessionsRemaining: 0,
			LastAttendance: 0001-01-01,
			MemberAccess: AccessAllowed
		}
	],
	Schedules: 
	[
		{
			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,
			BranchId: 0,
			Deleted: False,
			Demo: False,
			Monday: True,
			Tuesday: True,
			Wednesday: True,
			Thursday: True,
			Friday: True,
			Saturday: True,
			Sunday: True,
			MondayTotalTime: P1D,
			TuesdayTotalTime: P1D,
			WednesdayTotalTime: P1D,
			ThursdayTotalTime: P1D,
			FridayTotalTime: P1D,
			SaturdayTotalTime: P1D,
			SundayTotalTime: P1D,
			TotalTime: P7D
		}
	],
	Branch: 
	{
		BranchId: 0,
		BranchType: DebitFinance,
		Name: String,
		Prefix: String,
		CompanyName: String,
		CompanyAddress: String,
		CompanyOfficialName: String,
		DirectDebitReference: String,
		FastDDReference: String,
		FastDDPlatinumRef: String,
		Style: String,
		PublicKey: 00000000000000000000000000000000,
		PrivateKey: 00000000000000000000000000000000,
		TrialStart: 0001-01-01,
		TrialEnd: 0001-01-01,
		PaymentStartDate: 0001-01-01,
		InTrial: False,
		UseFreeText: False,
		FreeTextTitle: String,
		UseMembershipTypes: False,
		DDUserName: String,
		DDPassword: String,
		DDServiceUser: String,
		DfcUserName: String,
		DfcPassword: String,
		DfcClubNumber: String,
		CompanyEmail: String,
		SmsOriginator: String,
		LanguageId: 0,
		VatRate: 0,
		SwipeAction: 0,
		Modules: 0,
		UseCreditBalance: False,
		AllowNegativeBalance: False,
		DefaultCreditLimit: 0,
		ApplicationType: Gym,
		ExternalProviderWarning: String,
		Domain: String,
		MobileDomain: String,
		OnlineBookingTimetableLimit: 0,
		OnlineBookingCancellationLimit: 0,
		OnlineBookingLimit: 0,
		Feature: 0,
		TimeZone: String,
		Culture: String,
		Country: String,
		CurrencyCulture: String,
		ShowGoCardlessAd: False,
		GoCardlessSaving: 0,
		SROAddress: String,
		MCAClubNo: String,
		MCAClubRef: String,
		TwilioNumber: String,
		Telephone: String,
		Transferred: False,
		OnlineBookingAllowNonActives: False,
		MemberLimit: 0,
		SortCode: String,
		AccountNumber: String,
		Website: String,
		SendSMSAppointmentRemindersDefault: False,
		SendSMSBookingReminders: False,
		GiftAid: False,
		GlobalBookingStartTime: PT0S,
		GlobalBookingEndTime: PT0S,
		BookingMinuteIncrements: 0,
		CancelReason: String,
		CancelFurther: String,
		CancelDate: 0001-01-01,
		DirectDebitFee: 0,
		CreditCardFee: 0,
		SMSPriceAdjustment: 0,
		BookingsPayLinkOnTrack: False,
		AccessControlTimeLimit: 0,
		Minimiser: None,
		AutoGenerateLicenses: False,
		Terms: String,
		FingerprintThreshold: 0,
		FingerprintMatcherThreshold: 0,
		AutoShutoff: False,
		PrimaryColors: String,
		HasColors: False,
		PrimaryColor: String,
		SecondaryColor: #FF0C67,
		BackgroundColor: #ffffff,
		HeaderTopColor: #d4fd04,
		HeaderBottomColor: #d4fd04,
		SideLeftColor: #F0F0F0,
		SideRightColor: #F0F0F0,
		SideFontColor: #555555,
		SideFontActiveColor: #808080,
		ExtWebBackgroundColor: #FFFFFF,
		ExtWebTextColor: #404040,
		ExtWebTintBackColor: #B9DE00,
		ExtWebHighlightBackColor: #FF0C67,
		ExtWebTabBackColor: #e8e8e8,
		HeadingColor: #000000,
		ReportFormat: PDF,
		FixPayments: False,
		FixPaymentSchedle: String,
		AppFeature: 0,
		SignInScreenFeature: 0,
		AppOptions: String,
		CompanyDescription: String,
		Capacity: 0,
		MonthlySalesTarget: 0,
		BookingAccessTimeLimit: 0,
		Facebook: String,
		Twitter: String,
		Instagram: String,
		YouTube: String,
		TikTok: String,
		Shopify: String,
		MinimumMemberAge: 0,
		TermsAndConditionsVersionDate: 0001-01-01,
		TermsAndConditionsAcceptedDate: 0001-01-01,
		TermsAndConditionsAccepted: False,
		SiteUrl: "https://string",
		IsUsingSmartDebit: False,
		IsUsingDfc: True,
		IsSouthAfrica: False,
		SmartDebitConfigured: True,
		DfcConfigured: True,
		UsingPaymentMethods: False,
		SmsPrefix: String,
		Logo: "https:///Template.mvc/GetImage?id=UgByAHUAeQBNAHMAZABmADQASQBMAFEAZwBIAGMAcgArADAAQgBoADEAQQA9AD0A",
		LogoThumbnail: "https:///Template.mvc/GetThumbnail?id=UgByAHUAeQBNAHMAZABmADQASQBMAFEAZwBIAGMAcgArADAAQgBoADEAQQA9AD0A",
		LogoHash: String,
		SendMarketingInviteWhenMemberAdded: False,
		SendMarketingInviteWhenMemberJoinedOnline: False,
		MarketingComplianceManagedExternally: False,
		OnlineBookingAllowWaitingList: False,
		OnlineMultiSiteEnabled: False,
		CanBookOnline: False,
		PublicMembershipTypes: 0,
		TrustedBranches: 0,
		IsAddingProspects: False,
		IsSellingMemberships: False,
		IsCreatingTasks: False,
		IsCreatingAppointments: False,
		IsBookingClasses: False,
		IsRegisteringAttendance: False,
		IsSellingProducts: False,
		IsSendingEmails: False,
		IsSendingSMS: False,
		IsUsingAutomation: False,
		DeductSessionsOnBooking: False,
		ShowTrustedBranchBookings: False,
		Score: 0,
		ApplicationId: com.clubmanagercentral.clublink,
		iOSAppLink: String,
		AndroidAppLink: String
	}
}