ClubManager.Api

<back to all web services

ZapierBookingRequest

The following routes are available for this service:
POST/zapier/v1/booking

export class ZapierBookingResponse
{
    public MemberId?: number;
    public MemberKey?: string;
    public MemberCreated?: boolean;
    public BookingId?: number;
    public BookingCreated?: boolean;
    public BookingAttendeeId?: number;
    public Name?: string;
    public StartDate?: string;
    public EndDate?: string;
    public StaffId?: number;
    public StaffName?: string;
    public InstructorMatched?: boolean;

    public constructor(init?: Partial<ZapierBookingResponse>) { (Object as any).assign(this, init); }
}

export class ZapierBookingRequest
{
    public Title?: string;
    public Forenames?: string;
    public Surname?: string;
    public EmailAddress?: string;
    public MobilePhone?: string;
    public HomePhone?: string;
    public DateOfBirth?: string;
    public Tags?: string[];
    public OptInEmail?: boolean;
    public OptInSms?: boolean;
    public BookingTemplateId?: number;
    public Name?: string;
    public StartDate?: string;
    public Duration?: number;
    public EndDate?: string;
    public StaffId?: number;
    public StaffName?: string;
    public FacilityId?: number;
    public MaxAttendees?: number;
    public Notes?: string;
    public AddToExisting?: boolean;

    public constructor(init?: Partial<ZapierBookingRequest>) { (Object as any).assign(this, init); }
}

TypeScript ZapierBookingRequest 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 /zapier/v1/booking HTTP/1.1 
Host: api.clubmanagercentral.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Title: String,
	Forenames: String,
	Surname: String,
	EmailAddress: String,
	MobilePhone: String,
	HomePhone: String,
	DateOfBirth: 0001-01-01,
	Tags: 
	[
		String
	],
	OptInEmail: False,
	OptInSms: False,
	BookingTemplateId: 0,
	Name: String,
	StartDate: String,
	Duration: 0,
	EndDate: String,
	StaffId: 0,
	StaffName: String,
	FacilityId: 0,
	MaxAttendees: 0,
	Notes: String,
	AddToExisting: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	MemberId: 0,
	MemberKey: 00000000000000000000000000000000,
	MemberCreated: False,
	BookingId: 0,
	BookingCreated: False,
	BookingAttendeeId: 0,
	Name: String,
	StartDate: 0001-01-01,
	EndDate: 0001-01-01,
	StaffId: 0,
	StaffName: String,
	InstructorMatched: False
}