BokaMera.API.Host

<back to all web services

GetBookingUserQueue

Requires Authentication
The following routes are available for this service:
GET/bookinguserqueue/{Id}Get queue item by Id

export class BookingUserQueuePriceResponse
{
    public CompanyId: string;
    public Id: number;
    public BookingUserQueueId: number;
    public ServicePriceId?: number;
    public Quantity?: number;
    public Price?: number;
    public PriceText: string;

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

export class GroupBookingSettings
{
    public Active: boolean;
    public Min: number;
    public Max: number;

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

export class MultipleResourceSettings
{
    public Active: boolean;
    public Min: number;
    public Max: number;

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

export class ServiceInfoResponse
{
    public Id: number;
    public Name: string;
    public Description: string;
    public ImageUrl: string;
    public LengthInMinutes?: number;
    public MaxNumberOfSpotsPerBooking: number;
    public MinNumberOfSpotsPerBooking: number;
    public GroupBooking: GroupBookingSettings;
    public MultipleResource: MultipleResourceSettings;
    public IsGroupBooking: boolean;
    public IsPaymentEnabled: boolean;

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

export class CompanyInfoResponse
{
    public Id: string;
    public Name: string;
    public LogoType: string;
    public SitePath: string;

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

export class BookedCustomer
{
    public Id: string;
    public Firstname: string;
    public Lastname: string;
    public Email: string;
    public Phone: string;
    public FacebookUserName: string;
    public ImageUrl: string;
    public PersonalIdentityNumber: string;
    public CorporateIdentityNumber: string;
    public InvoiceAddress1: string;
    public InvoiceAddress2: string;
    public InvoiceCity: string;
    public InvoicePostalCode: string;
    public InvoiceCountryCode: string;

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

export class BookingUserQueueItemResponse
{
    public BookingUserQueueId: number;
    public CompanyId: string;
    public CustomerId: string;
    public ServiceId: number;
    public From: string;
    public To: string;
    public StatusCode: number;
    public StatusName: string;
    public SendConfirmationTime?: string;
    public Quantities: BookingUserQueuePriceResponse[] = [];
    public Service: ServiceInfoResponse;
    public Company: CompanyInfoResponse;
    public Customer: BookedCustomer;

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

// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ValidateRequest(Validator="IsAuthenticated")
export class GetBookingUserQueue
{
    /** @description Id of the booking user queue */
    // @ApiMember(Description="Id of the booking user queue", IsRequired=true, ParameterType="path")
    public Id: number;

    /** @description  */
    // @ApiMember(Description="", IsRequired=true)
    public CompanyId: string;

    /** @description  */
    // @ApiMember(Description="", IsRequired=true)
    public CustomerId: string;

    /** @description If you want to include the service information for the booking */
    // @ApiMember(DataType="boolean", Description="If you want to include the service information for the booking", ParameterType="query")
    public IncludeServiceInformation: boolean;

    /** @description If you want to include the company information for the booking */
    // @ApiMember(DataType="boolean", Description="If you want to include the company information for the booking", ParameterType="query")
    public IncludeCompanyInformation: boolean;

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

TypeScript GetBookingUserQueue 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.

GET /bookinguserqueue/{Id} HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	BookingUserQueueId: 0,
	ServiceId: 0,
	StatusCode: 0,
	StatusName: String,
	SendConfirmationTime: "0001-01-01T00:00:00",
	Quantities: 
	[
		{
			Id: 0,
			BookingUserQueueId: 0,
			ServicePriceId: 0,
			Quantity: 0,
			Price: 0,
			PriceText: String
		}
	],
	Service: 
	{
		Id: 0,
		Name: String,
		Description: String,
		LengthInMinutes: 0,
		MaxNumberOfSpotsPerBooking: 0,
		MinNumberOfSpotsPerBooking: 0,
		GroupBooking: 
		{
			Active: False,
			Min: 0,
			Max: 0
		},
		MultipleResource: 
		{
			Active: False,
			Min: 0,
			Max: 0
		},
		IsGroupBooking: False,
		IsPaymentEnabled: False
	},
	Company: 
	{
		Name: String,
		SitePath: String
	},
	Customer: 
	{
		Firstname: String,
		Lastname: String,
		Email: String,
		Phone: String,
		FacebookUserName: String,
		ImageUrl: String,
		PersonalIdentityNumber: String,
		CorporateIdentityNumber: String,
		InvoiceAddress1: String,
		InvoiceAddress2: String,
		InvoiceCity: String,
		InvoicePostalCode: String,
		InvoiceCountryCode: String
	}
}