| POST,GET | /api/Member/GetMember |
|---|
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.Message;
namespace ClubManager.Interfaces.Models.Member
{
public enum ExternalStatus
{
Off,
Active,
Pending,
CancelledInsideContract,
CancelledOutsideContract,
WithDebtRecovery,
Suspended,
}
public enum Gender
{
Unknown,
Male,
Female,
Other,
PreferNotToSay,
}
public partial class Member
{
public virtual int MemberId { get; set; }
public virtual int BranchId { get; set; }
public virtual string MembershipNumber { get; set; }
public virtual DateTime? JoinedDate { get; set; }
public virtual string CardNumber { get; set; }
public virtual string CompanyName { get; set; }
public virtual Gender Gender { get; set; }
public virtual string GenderName { get; set; }
public virtual string FullName { get; set; }
public virtual string Title { get; set; }
public virtual string Forenames { get; set; }
public virtual string Surname { get; set; }
public virtual string Address1 { get; set; }
public virtual string Address2 { get; set; }
public virtual string County { get; set; }
public virtual string City { get; set; }
public virtual string HomePhone { get; set; }
public virtual string MobilePhone { get; set; }
public virtual string EmailAddress { get; set; }
public virtual string ExternalReference { get; set; }
public virtual string Country { get; set; }
public virtual bool EmailOptOut { get; set; }
public virtual bool SmsOptOut { get; set; }
public virtual bool PhoneOptOut { get; set; }
public virtual bool LetterOptOut { get; set; }
public virtual bool UseExternalStatus { get; set; }
public virtual ExternalStatus ExternalStatus { get; set; }
public virtual DateTime? DateOfBirth { get; set; }
public virtual string Postcode { get; set; }
public virtual string Notes { get; set; }
public virtual DateTime? StartDate { get; set; }
public virtual DateTime? Expires { get; set; }
public virtual int? SessionsRemaining { get; set; }
public virtual DateTime? ContractEndDate { get; set; }
public virtual int DaysRemaining { get; set; }
public virtual string MembershipType { get; set; }
public virtual DateTime? LastAttendance { get; set; }
public virtual int Attendance { get; set; }
public virtual MemberType MemberType { get; set; }
public virtual int RecurringPayments { get; set; }
public virtual int OverduePayments { get; set; }
public virtual int AttendanceThisWeek { get; set; }
public virtual decimal retentionMetric { get; set; }
public virtual decimal MonthlyAttendanceFrequency { get; set; }
public virtual decimal TotalProductSpend { get; set; }
public virtual string JournalEntry { get; set; }
public virtual decimal Balance { get; set; }
public virtual decimal CreditLimit { get; set; }
public virtual Guid guid { get; set; }
public virtual MembershipState MembershipState { get; set; }
public virtual int BookingsAttended { get; set; }
public virtual DateTime? DateOfLastBooking { get; set; }
public virtual DateTime? PhotoModifiedDate { get; set; }
public virtual DateTime? CreatedDate { get; set; }
public virtual DateTime? ModifiedDate { get; set; }
public virtual DateTime? DeletedDate { get; set; }
public virtual Guid MemberKey { get; set; }
public virtual int CreatedByUserId { get; set; }
public virtual int AssignedToUserId { get; set; }
public virtual int DeletedByUserId { get; set; }
public virtual bool GiftAidPermission { get; set; }
public virtual bool FirstAidPermission { get; set; }
public virtual bool PhotoPermission { get; set; }
public virtual string EmergencyContact { get; set; }
public virtual int? WonOrLost { get; set; }
public virtual DateTime? WonOrLostDate { get; set; }
public virtual int? WonOrLostByUserId { get; set; }
public virtual string LicenseReference { get; set; }
public virtual DateTime? LicenseStartDate { get; set; }
public virtual DateTime? LicenseRenewalDate { get; set; }
public virtual DateTime? AgreedToTerms { get; set; }
public virtual bool OnlineBookingBanned { get; set; }
public virtual int? ChildBranchId { get; set; }
public virtual string ChildBranch { get; set; }
public virtual int ProspectingPoints { get; set; }
public virtual int AchievementPoints { get; set; }
public virtual string ParentForenames { get; set; }
public virtual string ParentSurname { get; set; }
public virtual int GradingReadiness { get; set; }
public virtual string DirectDebitAccountHolder { get; set; }
public virtual string DirectDebitAccountNumber { get; set; }
public virtual string DirectDebitSortCode { get; set; }
public virtual string DirectDebitBankAddress { get; set; }
public virtual DateTime? InvitedDate { get; set; }
public virtual string Grade { get; set; }
public virtual string ColourLeft { get; set; }
public virtual string ColourRight { get; set; }
public virtual int SessionsToComplete { get; set; }
public virtual string UniqueId { get; set; }
public virtual string PreferenceLink { get; set; }
public virtual string MarketingAllLink { get; set; }
public virtual string MarketingNoneLink { get; set; }
public virtual string AppRegistrationId { get; set; }
public virtual string AppRegistrationLink { get; set; }
public virtual string AppQrImageLink { get; set; }
public virtual string CardNumberQrImageLink { get; set; }
public virtual string PhotoThumbnailLink { get; set; }
public virtual MessageTemplateContentType ContentTypesOptIn { get; set; }
public virtual MessageTemplateType TemplateTypesOptIn { get; set; }
public virtual bool CanEmail { get; set; }
public virtual bool CanDirectMail { get; set; }
public virtual bool CanSMS { get; set; }
public virtual bool CanTelephone { get; set; }
public virtual bool NoMarketingConsent { get; set; }
public virtual bool CanSendInvite { get; set; }
public virtual Guid BranchKey { get; set; }
public virtual string SageLink { get; set; }
public virtual DateTime? SageLastPaymentDate { get; set; }
public virtual DateTime? SageFirstPaymentDate { get; set; }
public virtual decimal? SageLastPaymentAmount { get; set; }
public virtual decimal? SageFirstPaymentAmount { get; set; }
public virtual decimal? SageTotalPaid { get; set; }
}
public enum MembershipState
{
Prospect,
Active,
Expired,
Cancelled,
PaymentRequired,
Suspended,
}
public enum MemberType
{
Prospect,
Active,
Cancelled,
Expired,
Suspended,
ClubCancelled,
DropOut,
}
}
namespace ClubManager.Interfaces.Models.Message
{
[Flags]
public enum MessageTemplateContentType
{
Transactional = 1,
Marketing = 2,
None = 1048576,
}
[Flags]
public enum MessageTemplateType
{
SMS = 1,
Email = 2,
Telephone = 4,
DirectMail = 8,
Notification = 16,
Page = 32,
None = 1048576,
NoConsent = 2097152,
}
}
C# MemberService.GetMemberRequest 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/GetMember HTTP/1.1
Host: api.clubmanagercentral.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
MemberId: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
MemberId: 0,
BranchId: 0,
MembershipNumber: String,
JoinedDate: 0001-01-01,
CardNumber: String,
CompanyName: String,
Gender: Unknown,
GenderName: String,
FullName: String,
Title: String,
Forenames: String,
Surname: String,
Address1: String,
Address2: String,
County: String,
City: String,
HomePhone: String,
MobilePhone: String,
EmailAddress: String,
ExternalReference: String,
Country: String,
EmailOptOut: False,
SmsOptOut: False,
PhoneOptOut: False,
LetterOptOut: False,
UseExternalStatus: False,
ExternalStatus: Off,
DateOfBirth: 0001-01-01,
Postcode: String,
Notes: String,
StartDate: 0001-01-01,
Expires: 0001-01-01,
SessionsRemaining: 0,
ContractEndDate: 0001-01-01,
DaysRemaining: 0,
MembershipType: String,
LastAttendance: 0001-01-01,
Attendance: 0,
MemberType: Prospect,
RecurringPayments: 0,
OverduePayments: 0,
AttendanceThisWeek: 0,
retentionMetric: 0,
MonthlyAttendanceFrequency: 0,
TotalProductSpend: 0,
JournalEntry: String,
Balance: 0,
CreditLimit: 0,
guid: 00000000000000000000000000000000,
MembershipState: Prospect,
BookingsAttended: 0,
DateOfLastBooking: 0001-01-01,
PhotoModifiedDate: 0001-01-01,
CreatedDate: 0001-01-01,
ModifiedDate: 0001-01-01,
DeletedDate: 0001-01-01,
MemberKey: 00000000000000000000000000000000,
CreatedByUserId: 0,
AssignedToUserId: 0,
DeletedByUserId: 0,
GiftAidPermission: False,
FirstAidPermission: False,
PhotoPermission: False,
EmergencyContact: String,
WonOrLost: 0,
WonOrLostDate: 0001-01-01,
WonOrLostByUserId: 0,
LicenseReference: String,
LicenseStartDate: 0001-01-01,
LicenseRenewalDate: 0001-01-01,
AgreedToTerms: 0001-01-01,
OnlineBookingBanned: False,
ChildBranchId: 0,
ChildBranch: String,
ProspectingPoints: 0,
AchievementPoints: 0,
ParentForenames: String,
ParentSurname: String,
GradingReadiness: 0,
DirectDebitAccountHolder: String,
DirectDebitAccountNumber: String,
DirectDebitSortCode: String,
DirectDebitBankAddress: String,
InvitedDate: 0001-01-01,
Grade: String,
ColourLeft: String,
ColourRight: String,
SessionsToComplete: 0,
UniqueId: 2p53v32iSqzE9F+blZFHYfwJp/2HyzR4ysdSkqYumK4=,
PreferenceLink: "https://secure.clubmanagercentral.com/Portal/Login/Transfer?id=2p53v32iSqzE9F%2bblZFHYfwJp%2f2HyzR4ysdSkqYumK4%3d",
MarketingAllLink: "https://secure.clubmanagercentral.com/Portal/Login/TransferOptInAll?id=2p53v32iSqzE9F%2bblZFHYfwJp%2f2HyzR4ysdSkqYumK4%3d",
MarketingNoneLink: "https://secure.clubmanagercentral.com/Portal/Login/TransferOptOutAll?id=2p53v32iSqzE9F%2bblZFHYfwJp%2f2HyzR4ysdSkqYumK4%3d",
AppRegistrationId: tdEETnrE2UDYoDHYyiFtLUFbiv0Psfko1F+WdmLSeeLOfNJrwIXoKym0RGXbqDsBIcwMpLHhEzKbJbIzcmw6pzckMg2FYdjFlmJyfSP0eLuKhy3LhaXTixbocwIalMLenpX6iD3ep8RvUH2SEPmxFw==,
AppRegistrationLink: "https://secure.clubmanagercentral.com/Register?id=tdEETnrE2UDYoDHYyiFtLUFbiv0Psfko1F+WdmLSeeLOfNJrwIXoKym0RGXbqDsBIcwMpLHhEzKbJbIzcmw6pzckMg2FYdjFlmJyfSP0eLuKhy3LhaXTixbocwIalMLenpX6iD3ep8RvUH2SEPmxFw==",
AppQrImageLink: "https://secure.clubmanagercentral.com/Member.mvc/GetQrByMemberId?id=36xZln01EfE80ZF7GFWKkg==",
CardNumberQrImageLink: "https://secure.clubmanagercentral.com/Member.mvc/GetCardNumberQRByMemberId?id=36xZln01EfE80ZF7GFWKkg==",
PhotoThumbnailLink: "https://secure.clubmanagercentral.com/Member.mvc/GetPhotoThumbnailByMemberId?id=36xZln01EfE80ZF7GFWKkg==",
ContentTypesOptIn: 1,
TemplateTypesOptIn: 1,
CanEmail: False,
CanDirectMail: False,
CanSMS: True,
CanTelephone: False,
NoMarketingConsent: False,
CanSendInvite: False,
BranchKey: 00000000000000000000000000000000,
SageLink: String,
SageLastPaymentDate: 0001-01-01,
SageFirstPaymentDate: 0001-01-01,
SageLastPaymentAmount: 0,
SageFirstPaymentAmount: 0,
SageTotalPaid: 0
}