BokaMera.API.Host

<back to all web services

GetAllBookingQueueForUser

Requires Authentication
The following routes are available for this service:
GET/bookinguserqueue/userGet all queue items for the logged in user
import Foundation
import ServiceStack

// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ValidateRequest(Validator="IsAuthenticated")
public class GetAllBookingQueueForUser : Codable
{
    /**
    * The user id for your profile. If not set it will set it automatically from your session
    */
    // @ApiMember(Description="The user id for your profile. If not set it will set it automatically from your session")
    public var userId:String?

    public var dateStart:Date?
    public var dateEnd:Date?
    /**
    * 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 var includeServiceInformation:Bool

    /**
    * 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 var includeCompanyInformation:Bool

    required public init(){}
}

public class GetAllBookingQueueForUserResponse : Codable
{
    public var bookingUserQueueResponseList:[BookingUserQueueItemResponse] = []
    public var responseStatus:ResponseStatus

    required public init(){}
}

public class BookingUserQueueItemResponse : Codable
{
    public var bookingUserQueueId:Int
    public var companyId:String
    public var customerId:String
    public var serviceId:Int
    public var from:Date
    public var to:Date
    public var statusCode:Int
    public var statusName:String
    public var sendConfirmationTime:Date?
    public var quantities:[BookingUserQueuePriceResponse] = []
    public var service:ServiceInfoResponse
    public var company:CompanyInfoResponse

    required public init(){}
}

public class BookingUserQueuePriceResponse : Codable
{
    public var companyId:String
    public var id:Int
    public var bookingUserQueueId:Int
    public var servicePriceId:Int?
    public var quantity:Int?

    required public init(){}
}

public class ServiceInfoResponse : Codable
{
    public var id:Int
    public var name:String
    public var Description:String
    public var imageUrl:Uri
    public var lengthInMinutes:Int?
    public var maxNumberOfSpotsPerBooking:Int
    public var minNumberOfSpotsPerBooking:Int
    public var groupBooking:GroupBookingSettings
    public var multipleResource:MultipleResourceSettings
    public var isGroupBooking:Bool
    public var isPaymentEnabled:Bool

    required public init(){}
}

public class GroupBookingSettings : Codable
{
    public var active:Bool
    public var min:Int
    public var max:Int

    required public init(){}
}

public class MultipleResourceSettings : Codable
{
    public var active:Bool
    public var min:Int
    public var max:Int

    required public init(){}
}

public class CompanyInfoResponse : Codable
{
    public var id:String
    public var name:String
    public var logoType:Uri
    public var category:String
    public var street1:String
    public var street2:String
    public var zipCode:String
    public var city:String
    public var countryId:String
    public var longitude:String
    public var latitude:String
    public var phone:String
    public var email:String
    public var homePage:String
    public var sitePath:String

    required public init(){}
}


Swift GetAllBookingQueueForUser 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/user HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	BookingUserQueueResponseList: 
	[
		{
			BookingUserQueueId: 0,
			ServiceId: 0,
			StatusCode: 0,
			StatusName: String,
			SendConfirmationTime: "0001-01-01T00:00:00",
			Quantities: 
			[
				{
					Id: 0,
					BookingUserQueueId: 0,
					ServicePriceId: 0,
					Quantity: 0
				}
			],
			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,
				Category: String,
				Street1: String,
				Street2: String,
				ZipCode: String,
				City: String,
				CountryId: String,
				Longitude: String,
				Latitude: String,
				Phone: String,
				Email: String,
				HomePage: String,
				SitePath: String
			}
		}
	],
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}