POST,GET | /api/Member/GetMembersForAccessControl |
---|
namespace ClubManager.Interfaces.Models
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
type MembershipState =
| Prospect = 0
| Active = 1
| Expired = 2
| Cancelled = 3
| PaymentRequired = 4
| Suspended = 5
type ExternalStatus =
| Off = 0
| Active = 1
| Pending = 2
| CancelledInsideContract = 3
| CancelledOutsideContract = 4
| WithDebtRecovery = 5
| Suspended = 6
type MemberAccess =
| AccessAllowed = 1
| NoAccess = 2
| NoMultiSiteAccess = 3
| NoSessions = 4
| NoScheduleAccess = 5
| NoAccessTimeLimitExceeded = 6
| Suspended = 7
[<AllowNullLiteral>]
type AccessControlMember() =
member val MemberId:Int32 = new Int32() with get,set
member val EnrolmentId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val BranchId:Int32 = new Int32() with get,set
member val MembershipState:MembershipState = new MembershipState() with get,set
member val MembershipNumber:String = null with get,set
member val CardNumber:String = null with get,set
member val Forenames:String = null with get,set
member val Surname:String = null with get,set
member val MultiSiteAccess:Boolean = new Boolean() with get,set
member val UseExternalStatus:Boolean = new Boolean() with get,set
member val ExternalStatus:ExternalStatus = new ExternalStatus() with get,set
member val MembershipTypeName:String = null with get,set
member val StartDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val EndDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ScheduleId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val SessionsRemaining:Nullable<Int32> = new Nullable<Int32>() with get,set
member val LastAttendance:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val MemberAccess:MemberAccess = new MemberAccess() with get,set
[<AllowNullLiteral>]
type Schedule() =
member val ScheduleId:Int32 = new Int32() with get,set
member val Name:String = null with get,set
member val Description:String = null with get,set
member val MondayFrom:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val MondayTo:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val TuesdayFrom:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val TuesdayTo:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val WednesdayFrom:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val WednesdayTo:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val ThursdayFrom:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val ThursdayTo:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val FridayFrom:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val FridayTo:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val SaturdayFrom:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val SaturdayTo:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val SundayFrom:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val SundayTo:Nullable<TimeSpan> = new Nullable<TimeSpan>() with get,set
member val ScheduleType:Int32 = new Int32() with get,set
member val BranchId:Int32 = new Int32() with get,set
member val Deleted:Boolean = new Boolean() with get,set
member val Demo:Boolean = new Boolean() with get,set
member val Monday:Boolean = new Boolean() with get,set
member val Tuesday:Boolean = new Boolean() with get,set
member val Wednesday:Boolean = new Boolean() with get,set
member val Thursday:Boolean = new Boolean() with get,set
member val Friday:Boolean = new Boolean() with get,set
member val Saturday:Boolean = new Boolean() with get,set
member val Sunday:Boolean = new Boolean() with get,set
member val MondayTotalTime:TimeSpan = new TimeSpan() with get,set
member val TuesdayTotalTime:TimeSpan = new TimeSpan() with get,set
member val WednesdayTotalTime:TimeSpan = new TimeSpan() with get,set
member val ThursdayTotalTime:TimeSpan = new TimeSpan() with get,set
member val FridayTotalTime:TimeSpan = new TimeSpan() with get,set
member val SaturdayTotalTime:TimeSpan = new TimeSpan() with get,set
member val SundayTotalTime:TimeSpan = new TimeSpan() with get,set
member val TotalTime:TimeSpan = new TimeSpan() with get,set
type BranchType =
| DebitFinance = 0
| SmartDebit = 1
| Standard = 2
| Root = 3
| Reseller = 4
| Referrer = 5
[<Flags>]
type Module =
| Standard = 0
| Bookings = 1
type 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
[<Flags>]
type 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
[<AllowNullLiteral>]
type Iso3166Country() =
member val Name:String = null with get,set
member val TwoLetterCode:String = null with get,set
member val ThreeLetterCode:String = null with get,set
member val NumericCode:Int32 = new Int32() with get,set
member val PhonePrefix:String[] = [||] with get,set
type BranchMinimiser =
| None = 0
| CMGo = 1
| BasicPortal = 2
type ReportFormat =
| PDF = 1
| Word = 2
| Excel = 3
| PNG = 4
| XPS = 5
| CSV = 6
| Html5 = 7
[<Flags>]
type 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
[<Flags>]
type SignInScreenFeature =
| None = 0
| SignInNumPad = 1
[<AllowNullLiteral>]
type Branch() =
member val BranchId:Int32 = new Int32() with get,set
member val BranchType:BranchType = new BranchType() with get,set
member val Name:String = null with get,set
member val Prefix:String = null with get,set
member val CompanyName:String = null with get,set
member val CompanyAddress:String = null with get,set
member val CompanyOfficialName:String = null with get,set
member val DirectDebitReference:String = null with get,set
member val FastDDReference:String = null with get,set
member val FastDDPlatinumRef:String = null with get,set
member val Style:String = null with get,set
member val PublicKey:Guid = new Guid() with get,set
member val PrivateKey:Guid = new Guid() with get,set
member val TrialStart:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val TrialEnd:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val PaymentStartDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val InTrial:Boolean = new Boolean() with get,set
member val UseFreeText:Boolean = new Boolean() with get,set
member val FreeTextTitle:String = null with get,set
member val UseMembershipTypes:Boolean = new Boolean() with get,set
member val DDUserName:String = null with get,set
member val DDPassword:String = null with get,set
member val DDServiceUser:String = null with get,set
member val DfcUserName:String = null with get,set
member val DfcPassword:String = null with get,set
member val DfcClubNumber:String = null with get,set
member val CompanyEmail:String = null with get,set
member val SmsOriginator:String = null with get,set
member val LanguageId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val VatRate:Decimal = new Decimal() with get,set
member val SwipeAction:Int32 = new Int32() with get,set
member val Modules:Module = new Module() with get,set
member val UseCreditBalance:Boolean = new Boolean() with get,set
member val AllowNegativeBalance:Boolean = new Boolean() with get,set
member val DefaultCreditLimit:Decimal = new Decimal() with get,set
member val ApplicationType:ApplicationType = new ApplicationType() with get,set
member val ExternalProviderWarning:String = null with get,set
member val Domain:String = null with get,set
member val MobileDomain:String = null with get,set
member val OnlineBookingTimetableLimit:Int32 = new Int32() with get,set
member val OnlineBookingCancellationLimit:Int32 = new Int32() with get,set
member val OnlineBookingLimit:Nullable<Int32> = new Nullable<Int32>() with get,set
member val Feature:Feature = new Feature() with get,set
member val TimeZone:String = null with get,set
member val Culture:String = null with get,set
member val Country:String = null with get,set
member val Iso3166Country:Iso3166Country = null with get,set
member val CurrencyCulture:String = null with get,set
member val ShowGoCardlessAd:Boolean = new Boolean() with get,set
member val GoCardlessSaving:Decimal = new Decimal() with get,set
member val SROAddress:String = null with get,set
member val MCAClubNo:String = null with get,set
member val MCAClubRef:String = null with get,set
member val TwilioNumber:String = null with get,set
member val Telephone:String = null with get,set
member val Transferred:Boolean = new Boolean() with get,set
member val OnlineBookingAllowNonActives:Boolean = new Boolean() with get,set
member val MemberLimit:Int32 = new Int32() with get,set
member val SortCode:String = null with get,set
member val AccountNumber:String = null with get,set
member val Website:String = null with get,set
member val SendSMSAppointmentRemindersDefault:Boolean = new Boolean() with get,set
member val SendSMSBookingReminders:Boolean = new Boolean() with get,set
member val GiftAid:Boolean = new Boolean() with get,set
member val GlobalBookingStartTime:TimeSpan = new TimeSpan() with get,set
member val GlobalBookingEndTime:TimeSpan = new TimeSpan() with get,set
member val BookingMinuteIncrements:Int32 = new Int32() with get,set
member val CancelReason:String = null with get,set
member val CancelFurther:String = null with get,set
member val CancelDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val DirectDebitFee:Decimal = new Decimal() with get,set
member val CreditCardFee:Decimal = new Decimal() with get,set
member val SMSPriceAdjustment:Decimal = new Decimal() with get,set
member val BookingsPayLinkOnTrack:Boolean = new Boolean() with get,set
member val AccessControlTimeLimit:Int32 = new Int32() with get,set
member val Minimiser:BranchMinimiser = new BranchMinimiser() with get,set
member val AutoGenerateLicenses:Boolean = new Boolean() with get,set
member val Terms:String = null with get,set
member val FingerprintThreshold:Int32 = new Int32() with get,set
member val FingerprintMatcherThreshold:Int32 = new Int32() with get,set
member val AutoShutoff:Boolean = new Boolean() with get,set
member val PrimaryColors:String = null with get,set
member val HasColors:Boolean = new Boolean() with get,set
member val PrimaryColor:String = null with get,set
member val SecondaryColor:String = null with get,set
member val BackgroundColor:String = null with get,set
member val HeaderTopColor:String = null with get,set
member val HeaderBottomColor:String = null with get,set
member val SideLeftColor:String = null with get,set
member val SideRightColor:String = null with get,set
member val SideFontColor:String = null with get,set
member val SideFontActiveColor:String = null with get,set
member val ExtWebBackgroundColor:String = null with get,set
member val ExtWebTextColor:String = null with get,set
member val ExtWebTintBackColor:String = null with get,set
member val ExtWebHighlightBackColor:String = null with get,set
member val ExtWebTabBackColor:String = null with get,set
member val HeadingColor:String = null with get,set
member val ReportFormat:ReportFormat = new ReportFormat() with get,set
member val FixPayments:Boolean = new Boolean() with get,set
member val FixPaymentSchedle:String = null with get,set
member val AppFeature:AppFeature = new AppFeature() with get,set
member val SignInScreenFeature:SignInScreenFeature = new SignInScreenFeature() with get,set
member val AppOptions:String = null with get,set
member val CompanyDescription:String = null with get,set
member val Capacity:Nullable<Int32> = new Nullable<Int32>() with get,set
member val MonthlySalesTarget:Nullable<Int32> = new Nullable<Int32>() with get,set
member val BookingAccessTimeLimit:Int32 = new Int32() with get,set
member val Facebook:String = null with get,set
member val Twitter:String = null with get,set
member val Instagram:String = null with get,set
member val YouTube:String = null with get,set
member val TikTok:String = null with get,set
member val Shopify:String = null with get,set
member val MinimumMemberAge:Int32 = new Int32() with get,set
member val TermsAndConditionsVersionDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val TermsAndConditionsAcceptedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val TermsAndConditionsAccepted:Boolean = new Boolean() with get,set
member val SiteUrl:String = null with get,set
member val IsUsingSmartDebit:Boolean = new Boolean() with get,set
member val IsUsingDfc:Boolean = new Boolean() with get,set
member val IsSouthAfrica:Boolean = new Boolean() with get,set
member val SmartDebitConfigured:Boolean = new Boolean() with get,set
member val DfcConfigured:Boolean = new Boolean() with get,set
member val UsingPaymentMethods:Boolean = new Boolean() with get,set
member val SmsPrefix:String = null with get,set
member val Logo:String = null with get,set
member val LogoThumbnail:String = null with get,set
member val LogoHash:String = null with get,set
member val SendMarketingInviteWhenMemberAdded:Boolean = new Boolean() with get,set
member val SendMarketingInviteWhenMemberJoinedOnline:Boolean = new Boolean() with get,set
member val MarketingComplianceManagedExternally:Boolean = new Boolean() with get,set
member val OnlineBookingAllowWaitingList:Boolean = new Boolean() with get,set
member val OnlineMultiSiteEnabled:Boolean = new Boolean() with get,set
member val CanBookOnline:Boolean = new Boolean() with get,set
member val PublicMembershipTypes:Int32 = new Int32() with get,set
member val TrustedBranches:Int32 = new Int32() with get,set
member val IsAddingProspects:Boolean = new Boolean() with get,set
member val IsSellingMemberships:Boolean = new Boolean() with get,set
member val IsCreatingTasks:Boolean = new Boolean() with get,set
member val IsCreatingAppointments:Boolean = new Boolean() with get,set
member val IsBookingClasses:Boolean = new Boolean() with get,set
member val IsRegisteringAttendance:Boolean = new Boolean() with get,set
member val IsSellingProducts:Boolean = new Boolean() with get,set
member val IsSendingEmails:Boolean = new Boolean() with get,set
member val IsSendingSMS:Boolean = new Boolean() with get,set
member val IsUsingAutomation:Boolean = new Boolean() with get,set
member val DeductSessionsOnBooking:Boolean = new Boolean() with get,set
member val ShowTrustedBranchBookings:Boolean = new Boolean() with get,set
member val Score:Int32 = new Int32() with get,set
member val ApplicationId:String = null with get,set
member val iOSAppLink:String = null with get,set
member val AndroidAppLink:String = null with get,set
[<AllowNullLiteral>]
type AccessControlMembers() =
member val Members:ResizeArray<AccessControlMember> = new ResizeArray<AccessControlMember>() with get,set
member val Schedules:ResizeArray<Schedule> = new ResizeArray<Schedule>() with get,set
member val Branch:Branch = null with get,set
F# MemberService.GetMembersForAccessControlRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=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 } }