| Required role: | API |
| All Verbs | /api/Query/Membership |
|---|
// @DataContract
export class QueryBase
{
// @DataMember(Order=1)
public Skip?: number;
// @DataMember(Order=2)
public Take?: number;
// @DataMember(Order=3)
public OrderBy?: string;
// @DataMember(Order=4)
public OrderByDesc?: string;
// @DataMember(Order=5)
public Include?: string;
// @DataMember(Order=6)
public Fields?: string;
// @DataMember(Order=7)
public Meta?: { [index: string]: string; };
public constructor(init?: Partial<QueryBase>) { (Object as any).assign(this, init); }
}
export class QueryDb<T> extends QueryBase
{
public constructor(init?: Partial<QueryDb<T>>) { super(init); (Object as any).assign(this, init); }
}
export class LossReasonInstance
{
public LossReasonId?: number;
public Reason?: string;
public Deleted?: boolean;
public Demo?: boolean;
public Selectable?: boolean;
public constructor(init?: Partial<LossReasonInstance>) { (Object as any).assign(this, init); }
}
export class UserInstance
{
public UserId?: number;
public UserName?: string;
public Name?: string;
public Email?: string;
public MobilePhone?: string;
public Enabled?: boolean;
public LastLogin?: string;
public Created?: string;
public Training?: boolean;
public Deleted?: boolean;
public CoursesCompleted?: number;
public DisplayHomeNotification?: boolean;
public TwoFactorEnabled?: boolean;
public EmailConfirmed?: boolean;
public MobilePhoneConfirmed?: boolean;
public Notifications?: boolean;
public ChangePassword?: string;
public Activated?: string;
public constructor(init?: Partial<UserInstance>) { (Object as any).assign(this, init); }
}
export class MemberInstance
{
public MemberId?: number;
public MemberType?: number;
public MembershipNumber?: string;
public CardNumber?: string;
public CompanyName?: string;
public Surname?: string;
public Forenames?: string;
public Title?: string;
public Gender?: number;
public DateOfBirth?: string;
public Address1?: string;
public Address2?: string;
public City?: string;
public County?: string;
public Postcode?: string;
public HomePhone?: string;
public MobilePhone?: string;
public EmailAddress?: string;
public EmailOptOut?: boolean;
public SmsOptOut?: boolean;
public PhoneOptOut?: boolean;
public LetterOptOut?: boolean;
public DirectDebitAccountHolder?: string;
public DirectDebitAccountNumber?: string;
public DirectDebitSortCode?: string;
public JoinedDate?: string;
public DirectDebitBankAddress?: string;
public FullName?: string;
public ExternalReference?: string;
public Photo?: string;
public PhotoModifiedDate?: string;
public Notes?: string;
public Deleted?: boolean;
public Demo?: boolean;
public UseExternalStatus?: boolean;
public ExternalStatus?: number;
public FreeText?: string;
public MemberKey?: string;
public Balance?: number;
public CreditLimit?: number;
public CreatedDate?: string;
public ModifiedDate?: string;
public DeletedDate?: string;
public ExternalSource?: number;
public RetentionMetric?: number;
public MonthlyAttendanceFrequency?: number;
public AssignedToUserId?: number;
public CreatedByUserId?: number;
public DeletedByUserId?: number;
public LossReason?: LossReasonInstance;
// @References("typeof(ClubManager.Api.Services.Query.LossReasonInstance)")
public LossReasonId?: number;
public WonOrLost?: number;
public WonOrLostDate?: string;
public GiftAidPermission?: boolean;
public PhotoPermission?: boolean;
public FirstAidPermission?: boolean;
public EmergencyContact?: string;
public WonOrLostByUser?: UserInstance;
// @References("typeof(ClubManager.Api.Services.Query.UserInstance)")
public WonOrLostByUserId?: number;
public AgreedToTerms?: string;
public OnlineBookingBanned?: boolean;
public Country?: string;
public FingerprintEnrolled?: string;
public LastPaymentAmount?: number;
public Pin?: string;
public ProspectingPoints?: number;
public AchievementPoints?: number;
public ParentForenames?: string;
public ParentSurname?: string;
public constructor(init?: Partial<MemberInstance>) { (Object as any).assign(this, init); }
}
export class ScheduleInstance
{
public ScheduleId?: number;
public Name?: string;
public Description?: string;
public MondayFrom?: string;
public MondayTo?: string;
public TuesdayFrom?: string;
public TuesdayTo?: string;
public WednesdayFrom?: string;
public WednesdayTo?: string;
public ThursdayFrom?: string;
public ThursdayTo?: string;
public FridayFrom?: string;
public FridayTo?: string;
public SaturdayFrom?: string;
public SaturdayTo?: string;
public SundayFrom?: string;
public SundayTo?: string;
public ScheduleType?: number;
public Deleted?: boolean;
public Demo?: boolean;
public constructor(init?: Partial<ScheduleInstance>) { (Object as any).assign(this, init); }
}
export class MembershipTypeInstance
{
public MembershipTypeId?: number;
public Name?: string;
public Description?: string;
public Definition?: string;
public Schedule?: ScheduleInstance;
// @References("typeof(ClubManager.Api.Services.Query.ScheduleInstance)")
public ScheduleId?: number;
public Deleted?: boolean;
public Demo?: boolean;
public Public?: boolean;
public SessionsRemaining?: number;
public ClassesRemaining?: number;
public SortOrder?: number;
public Special?: boolean;
public MultiSiteAccess?: boolean;
public MemberLimit?: number;
public PromotionCode?: string;
public PromotionStart?: string;
public PromotionEnd?: string;
public LicensesRemaining?: number;
public BookingAccessOnly?: boolean;
public SessionsPeriod?: number;
public SessionsFrequency?: number;
public StartsOn?: string;
public AllowSelectionAfterStartsOn?: boolean;
public constructor(init?: Partial<MembershipTypeInstance>) { (Object as any).assign(this, init); }
}
export class MembershipInstance
{
public MembershipId?: number;
public StartDate?: string;
public EndDate?: string;
public ContractEndDate?: string;
public Name?: string;
public EnrolmentFee?: number;
public InductionFee?: number;
public MembershipFee?: number;
public DirectDebitPayment?: number;
public DirectDebitDate?: string;
public Member?: MemberInstance;
// @References("typeof(ClubManager.Api.Services.Query.MemberInstance)")
public MemberId?: number;
public RefererMemberId?: number;
public PromotionId?: number;
public Payment1Fee?: number;
public Payment1Date?: string;
public Payment2Fee?: number;
public Payment2Date?: string;
public Payment1Type?: number;
public Payment1Method?: number;
public Payment2Type?: number;
public Payment2Method?: number;
public Payment3Type?: number;
public Payment3Method?: number;
public Payment3Fee?: number;
public Payment3Date?: string;
public MembershipType?: MembershipTypeInstance;
// @References("typeof(ClubManager.Api.Services.Query.MembershipTypeInstance)")
public MembershipTypeId?: number;
public ProviderId?: number;
public Definition?: string;
public HasRecurringPayments?: boolean;
public Deleted?: boolean;
public Demo?: boolean;
public MembershipKey?: string;
public SessionsRemaining?: number;
public ClassesRemaining?: number;
public Cancelled?: string;
public APICreated?: string;
public SuspensionStart?: string;
public SuspensionEnd?: string;
public IpAddress?: string;
public constructor(init?: Partial<MembershipInstance>) { (Object as any).assign(this, init); }
}
// @AutoQueryViewer(Description="", IconUrl="octicon:database", Title="Membership")
export class FindMembership extends QueryDb<MembershipInstance>
{
public constructor(init?: Partial<FindMembership>) { super(init); (Object as any).assign(this, init); }
}
// @DataContract
export class QueryResponse<T>
{
// @DataMember(Order=1)
public Offset?: number;
// @DataMember(Order=2)
public Total?: number;
// @DataMember(Order=3)
public Results?: T[];
// @DataMember(Order=4)
public Meta?: { [index: string]: string; };
// @DataMember(Order=5)
public ResponseStatus?: ResponseStatus;
public constructor(init?: Partial<QueryResponse<T>>) { (Object as any).assign(this, init); }
}
TypeScript FindMembership DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/Query/Membership HTTP/1.1
Host: api.clubmanagercentral.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<FindMembership xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ClubManager.Api.Services.Query">
<Skip xmlns="http://schemas.servicestack.net/types">0</Skip>
<Take xmlns="http://schemas.servicestack.net/types">0</Take>
<OrderBy xmlns="http://schemas.servicestack.net/types">String</OrderBy>
<OrderByDesc xmlns="http://schemas.servicestack.net/types">String</OrderByDesc>
<Include xmlns="http://schemas.servicestack.net/types">String</Include>
<Fields xmlns="http://schemas.servicestack.net/types">String</Fields>
<Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns="http://schemas.servicestack.net/types">
<d2p1:KeyValueOfstringstring>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfstringstring>
</Meta>
</FindMembership>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<QueryResponseOfMembershipInstancePEZRWkv_P xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<Offset>0</Offset>
<Total>0</Total>
<Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/ClubManager.Api.Services.Query">
<d2p1:MembershipInstance>
<d2p1:APICreated>0001-01-01T00:00:00</d2p1:APICreated>
<d2p1:Cancelled>0001-01-01T00:00:00</d2p1:Cancelled>
<d2p1:ClassesRemaining>0</d2p1:ClassesRemaining>
<d2p1:ContractEndDate>0001-01-01T00:00:00</d2p1:ContractEndDate>
<d2p1:Definition>String</d2p1:Definition>
<d2p1:Deleted>false</d2p1:Deleted>
<d2p1:Demo>false</d2p1:Demo>
<d2p1:DirectDebitDate>0001-01-01T00:00:00</d2p1:DirectDebitDate>
<d2p1:DirectDebitPayment>0</d2p1:DirectDebitPayment>
<d2p1:EndDate>0001-01-01T00:00:00</d2p1:EndDate>
<d2p1:EnrolmentFee>0</d2p1:EnrolmentFee>
<d2p1:HasRecurringPayments>false</d2p1:HasRecurringPayments>
<d2p1:InductionFee>0</d2p1:InductionFee>
<d2p1:IpAddress>String</d2p1:IpAddress>
<d2p1:Member>
<d2p1:AchievementPoints>0</d2p1:AchievementPoints>
<d2p1:Address1>String</d2p1:Address1>
<d2p1:Address2>String</d2p1:Address2>
<d2p1:AgreedToTerms>0001-01-01T00:00:00</d2p1:AgreedToTerms>
<d2p1:AssignedToUserId>0</d2p1:AssignedToUserId>
<d2p1:Balance>0</d2p1:Balance>
<d2p1:CardNumber>String</d2p1:CardNumber>
<d2p1:City>String</d2p1:City>
<d2p1:CompanyName>String</d2p1:CompanyName>
<d2p1:Country>String</d2p1:Country>
<d2p1:County>String</d2p1:County>
<d2p1:CreatedByUserId>0</d2p1:CreatedByUserId>
<d2p1:CreatedDate>0001-01-01T00:00:00</d2p1:CreatedDate>
<d2p1:CreditLimit>0</d2p1:CreditLimit>
<d2p1:DateOfBirth>0001-01-01T00:00:00</d2p1:DateOfBirth>
<d2p1:Deleted>false</d2p1:Deleted>
<d2p1:DeletedByUserId>0</d2p1:DeletedByUserId>
<d2p1:DeletedDate>0001-01-01T00:00:00</d2p1:DeletedDate>
<d2p1:Demo>false</d2p1:Demo>
<d2p1:DirectDebitAccountHolder>String</d2p1:DirectDebitAccountHolder>
<d2p1:DirectDebitAccountNumber>String</d2p1:DirectDebitAccountNumber>
<d2p1:DirectDebitBankAddress>String</d2p1:DirectDebitBankAddress>
<d2p1:DirectDebitSortCode>String</d2p1:DirectDebitSortCode>
<d2p1:EmailAddress>String</d2p1:EmailAddress>
<d2p1:EmailOptOut>false</d2p1:EmailOptOut>
<d2p1:EmergencyContact>String</d2p1:EmergencyContact>
<d2p1:ExternalReference>String</d2p1:ExternalReference>
<d2p1:ExternalSource>0</d2p1:ExternalSource>
<d2p1:ExternalStatus>0</d2p1:ExternalStatus>
<d2p1:FingerprintEnrolled>0001-01-01T00:00:00</d2p1:FingerprintEnrolled>
<d2p1:FirstAidPermission>false</d2p1:FirstAidPermission>
<d2p1:Forenames>String</d2p1:Forenames>
<d2p1:FreeText>String</d2p1:FreeText>
<d2p1:FullName>String</d2p1:FullName>
<d2p1:Gender>0</d2p1:Gender>
<d2p1:GiftAidPermission>false</d2p1:GiftAidPermission>
<d2p1:HomePhone>String</d2p1:HomePhone>
<d2p1:JoinedDate>0001-01-01T00:00:00</d2p1:JoinedDate>
<d2p1:LastPaymentAmount>0</d2p1:LastPaymentAmount>
<d2p1:LetterOptOut>false</d2p1:LetterOptOut>
<d2p1:LossReason>
<d2p1:Deleted>false</d2p1:Deleted>
<d2p1:Demo>false</d2p1:Demo>
<d2p1:LossReasonId>0</d2p1:LossReasonId>
<d2p1:Reason>String</d2p1:Reason>
<d2p1:Selectable>false</d2p1:Selectable>
</d2p1:LossReason>
<d2p1:LossReasonId>0</d2p1:LossReasonId>
<d2p1:MemberId>0</d2p1:MemberId>
<d2p1:MemberKey>00000000-0000-0000-0000-000000000000</d2p1:MemberKey>
<d2p1:MemberType>0</d2p1:MemberType>
<d2p1:MembershipNumber>String</d2p1:MembershipNumber>
<d2p1:MobilePhone>String</d2p1:MobilePhone>
<d2p1:ModifiedDate>0001-01-01T00:00:00</d2p1:ModifiedDate>
<d2p1:MonthlyAttendanceFrequency>0</d2p1:MonthlyAttendanceFrequency>
<d2p1:Notes>String</d2p1:Notes>
<d2p1:OnlineBookingBanned>false</d2p1:OnlineBookingBanned>
<d2p1:ParentForenames>String</d2p1:ParentForenames>
<d2p1:ParentSurname>String</d2p1:ParentSurname>
<d2p1:PhoneOptOut>false</d2p1:PhoneOptOut>
<d2p1:Photo>AA==</d2p1:Photo>
<d2p1:PhotoModifiedDate>0001-01-01T00:00:00</d2p1:PhotoModifiedDate>
<d2p1:PhotoPermission>false</d2p1:PhotoPermission>
<d2p1:Pin>String</d2p1:Pin>
<d2p1:Postcode>String</d2p1:Postcode>
<d2p1:ProspectingPoints>0</d2p1:ProspectingPoints>
<d2p1:RetentionMetric>0</d2p1:RetentionMetric>
<d2p1:SmsOptOut>false</d2p1:SmsOptOut>
<d2p1:Surname>String</d2p1:Surname>
<d2p1:Title>String</d2p1:Title>
<d2p1:UseExternalStatus>false</d2p1:UseExternalStatus>
<d2p1:WonOrLost>0</d2p1:WonOrLost>
<d2p1:WonOrLostByUser>
<d2p1:Activated>0001-01-01T00:00:00</d2p1:Activated>
<d2p1:ChangePassword>0001-01-01T00:00:00</d2p1:ChangePassword>
<d2p1:CoursesCompleted>0</d2p1:CoursesCompleted>
<d2p1:Created>0001-01-01T00:00:00</d2p1:Created>
<d2p1:Deleted>false</d2p1:Deleted>
<d2p1:DisplayHomeNotification>false</d2p1:DisplayHomeNotification>
<d2p1:Email>String</d2p1:Email>
<d2p1:EmailConfirmed>false</d2p1:EmailConfirmed>
<d2p1:Enabled>false</d2p1:Enabled>
<d2p1:LastLogin>0001-01-01T00:00:00</d2p1:LastLogin>
<d2p1:MobilePhone>String</d2p1:MobilePhone>
<d2p1:MobilePhoneConfirmed>false</d2p1:MobilePhoneConfirmed>
<d2p1:Name>String</d2p1:Name>
<d2p1:Notifications>false</d2p1:Notifications>
<d2p1:Training>false</d2p1:Training>
<d2p1:TwoFactorEnabled>false</d2p1:TwoFactorEnabled>
<d2p1:UserId>0</d2p1:UserId>
<d2p1:UserName>String</d2p1:UserName>
</d2p1:WonOrLostByUser>
<d2p1:WonOrLostByUserId>0</d2p1:WonOrLostByUserId>
<d2p1:WonOrLostDate>0001-01-01T00:00:00</d2p1:WonOrLostDate>
</d2p1:Member>
<d2p1:MemberId>0</d2p1:MemberId>
<d2p1:MembershipFee>0</d2p1:MembershipFee>
<d2p1:MembershipId>0</d2p1:MembershipId>
<d2p1:MembershipKey>00000000-0000-0000-0000-000000000000</d2p1:MembershipKey>
<d2p1:MembershipType>
<d2p1:AllowSelectionAfterStartsOn>false</d2p1:AllowSelectionAfterStartsOn>
<d2p1:BookingAccessOnly>false</d2p1:BookingAccessOnly>
<d2p1:ClassesRemaining>0</d2p1:ClassesRemaining>
<d2p1:Definition>String</d2p1:Definition>
<d2p1:Deleted>false</d2p1:Deleted>
<d2p1:Demo>false</d2p1:Demo>
<d2p1:Description>String</d2p1:Description>
<d2p1:LicensesRemaining>0</d2p1:LicensesRemaining>
<d2p1:MemberLimit>0</d2p1:MemberLimit>
<d2p1:MembershipTypeId>0</d2p1:MembershipTypeId>
<d2p1:MultiSiteAccess>false</d2p1:MultiSiteAccess>
<d2p1:Name>String</d2p1:Name>
<d2p1:PromotionCode>String</d2p1:PromotionCode>
<d2p1:PromotionEnd>0001-01-01T00:00:00</d2p1:PromotionEnd>
<d2p1:PromotionStart>0001-01-01T00:00:00</d2p1:PromotionStart>
<d2p1:Public>false</d2p1:Public>
<d2p1:Schedule>
<d2p1:Deleted>false</d2p1:Deleted>
<d2p1:Demo>false</d2p1:Demo>
<d2p1:Description>String</d2p1:Description>
<d2p1:FridayFrom>PT0S</d2p1:FridayFrom>
<d2p1:FridayTo>PT0S</d2p1:FridayTo>
<d2p1:MondayFrom>PT0S</d2p1:MondayFrom>
<d2p1:MondayTo>PT0S</d2p1:MondayTo>
<d2p1:Name>String</d2p1:Name>
<d2p1:SaturdayFrom>PT0S</d2p1:SaturdayFrom>
<d2p1:SaturdayTo>PT0S</d2p1:SaturdayTo>
<d2p1:ScheduleId>0</d2p1:ScheduleId>
<d2p1:ScheduleType>0</d2p1:ScheduleType>
<d2p1:SundayFrom>PT0S</d2p1:SundayFrom>
<d2p1:SundayTo>PT0S</d2p1:SundayTo>
<d2p1:ThursdayFrom>PT0S</d2p1:ThursdayFrom>
<d2p1:ThursdayTo>PT0S</d2p1:ThursdayTo>
<d2p1:TuesdayFrom>PT0S</d2p1:TuesdayFrom>
<d2p1:TuesdayTo>PT0S</d2p1:TuesdayTo>
<d2p1:WednesdayFrom>PT0S</d2p1:WednesdayFrom>
<d2p1:WednesdayTo>PT0S</d2p1:WednesdayTo>
</d2p1:Schedule>
<d2p1:ScheduleId>0</d2p1:ScheduleId>
<d2p1:SessionsFrequency>0</d2p1:SessionsFrequency>
<d2p1:SessionsPeriod>0</d2p1:SessionsPeriod>
<d2p1:SessionsRemaining>0</d2p1:SessionsRemaining>
<d2p1:SortOrder>0</d2p1:SortOrder>
<d2p1:Special>false</d2p1:Special>
<d2p1:StartsOn>0001-01-01T00:00:00</d2p1:StartsOn>
</d2p1:MembershipType>
<d2p1:MembershipTypeId>0</d2p1:MembershipTypeId>
<d2p1:Name>String</d2p1:Name>
<d2p1:Payment1Date>0001-01-01T00:00:00</d2p1:Payment1Date>
<d2p1:Payment1Fee>0</d2p1:Payment1Fee>
<d2p1:Payment1Method>0</d2p1:Payment1Method>
<d2p1:Payment1Type>0</d2p1:Payment1Type>
<d2p1:Payment2Date>0001-01-01T00:00:00</d2p1:Payment2Date>
<d2p1:Payment2Fee>0</d2p1:Payment2Fee>
<d2p1:Payment2Method>0</d2p1:Payment2Method>
<d2p1:Payment2Type>0</d2p1:Payment2Type>
<d2p1:Payment3Date>0001-01-01T00:00:00</d2p1:Payment3Date>
<d2p1:Payment3Fee>0</d2p1:Payment3Fee>
<d2p1:Payment3Method>0</d2p1:Payment3Method>
<d2p1:Payment3Type>0</d2p1:Payment3Type>
<d2p1:PromotionId>0</d2p1:PromotionId>
<d2p1:ProviderId>0</d2p1:ProviderId>
<d2p1:RefererMemberId>0</d2p1:RefererMemberId>
<d2p1:SessionsRemaining>0</d2p1:SessionsRemaining>
<d2p1:StartDate>0001-01-01T00:00:00</d2p1:StartDate>
<d2p1:SuspensionEnd>0001-01-01T00:00:00</d2p1:SuspensionEnd>
<d2p1:SuspensionStart>0001-01-01T00:00:00</d2p1:SuspensionStart>
</d2p1:MembershipInstance>
</Results>
<Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringstring>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfstringstring>
</Meta>
<ResponseStatus>
<ErrorCode>String</ErrorCode>
<Message>String</Message>
<StackTrace>String</StackTrace>
<Errors>
<ResponseError>
<ErrorCode>String</ErrorCode>
<FieldName>String</FieldName>
<Message>String</Message>
<Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</Meta>
</ResponseError>
</Errors>
<Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</Meta>
</ResponseStatus>
</QueryResponseOfMembershipInstancePEZRWkv_P>