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
import 'package:servicestack/servicestack.dart';

class BookingUserQueuePriceResponse implements IConvertible
{
    String? CompanyId;
    int? Id;
    int? BookingUserQueueId;
    int? ServicePriceId;
    int? Quantity;
    double? Price;
    String? PriceText;

    BookingUserQueuePriceResponse({this.CompanyId,this.Id,this.BookingUserQueueId,this.ServicePriceId,this.Quantity,this.Price,this.PriceText});
    BookingUserQueuePriceResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CompanyId = json['CompanyId'];
        Id = json['Id'];
        BookingUserQueueId = json['BookingUserQueueId'];
        ServicePriceId = json['ServicePriceId'];
        Quantity = json['Quantity'];
        Price = JsonConverters.toDouble(json['Price']);
        PriceText = json['PriceText'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CompanyId': CompanyId,
        'Id': Id,
        'BookingUserQueueId': BookingUserQueueId,
        'ServicePriceId': ServicePriceId,
        'Quantity': Quantity,
        'Price': Price,
        'PriceText': PriceText
    };

    getTypeName() => "BookingUserQueuePriceResponse";
    TypeContext? context = _ctx;
}

class GroupBookingSettings implements IConvertible
{
    bool? Active;
    int? Min;
    int? Max;

    GroupBookingSettings({this.Active,this.Min,this.Max});
    GroupBookingSettings.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Active = json['Active'];
        Min = json['Min'];
        Max = json['Max'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Active': Active,
        'Min': Min,
        'Max': Max
    };

    getTypeName() => "GroupBookingSettings";
    TypeContext? context = _ctx;
}

class MultipleResourceSettings implements IConvertible
{
    bool? Active;
    int? Min;
    int? Max;

    MultipleResourceSettings({this.Active,this.Min,this.Max});
    MultipleResourceSettings.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Active = json['Active'];
        Min = json['Min'];
        Max = json['Max'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Active': Active,
        'Min': Min,
        'Max': Max
    };

    getTypeName() => "MultipleResourceSettings";
    TypeContext? context = _ctx;
}

class ServiceInfoResponse implements IConvertible
{
    int? Id;
    String? Name;
    String? Description;
    Uri? ImageUrl;
    int? LengthInMinutes;
    int? MaxNumberOfSpotsPerBooking;
    int? MinNumberOfSpotsPerBooking;
    GroupBookingSettings? GroupBooking;
    MultipleResourceSettings? MultipleResource;
    bool? IsGroupBooking;
    bool? IsPaymentEnabled;

    ServiceInfoResponse({this.Id,this.Name,this.Description,this.ImageUrl,this.LengthInMinutes,this.MaxNumberOfSpotsPerBooking,this.MinNumberOfSpotsPerBooking,this.GroupBooking,this.MultipleResource,this.IsGroupBooking,this.IsPaymentEnabled});
    ServiceInfoResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Name = json['Name'];
        Description = json['Description'];
        ImageUrl = JsonConverters.fromJson(json['ImageUrl'],'Uri',context!);
        LengthInMinutes = json['LengthInMinutes'];
        MaxNumberOfSpotsPerBooking = json['MaxNumberOfSpotsPerBooking'];
        MinNumberOfSpotsPerBooking = json['MinNumberOfSpotsPerBooking'];
        GroupBooking = JsonConverters.fromJson(json['GroupBooking'],'GroupBookingSettings',context!);
        MultipleResource = JsonConverters.fromJson(json['MultipleResource'],'MultipleResourceSettings',context!);
        IsGroupBooking = json['IsGroupBooking'];
        IsPaymentEnabled = json['IsPaymentEnabled'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Name': Name,
        'Description': Description,
        'ImageUrl': JsonConverters.toJson(ImageUrl,'Uri',context!),
        'LengthInMinutes': LengthInMinutes,
        'MaxNumberOfSpotsPerBooking': MaxNumberOfSpotsPerBooking,
        'MinNumberOfSpotsPerBooking': MinNumberOfSpotsPerBooking,
        'GroupBooking': JsonConverters.toJson(GroupBooking,'GroupBookingSettings',context!),
        'MultipleResource': JsonConverters.toJson(MultipleResource,'MultipleResourceSettings',context!),
        'IsGroupBooking': IsGroupBooking,
        'IsPaymentEnabled': IsPaymentEnabled
    };

    getTypeName() => "ServiceInfoResponse";
    TypeContext? context = _ctx;
}

class CompanyInfoResponse implements IConvertible
{
    String? Id;
    String? Name;
    Uri? LogoType;
    String? SitePath;

    CompanyInfoResponse({this.Id,this.Name,this.LogoType,this.SitePath});
    CompanyInfoResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Name = json['Name'];
        LogoType = JsonConverters.fromJson(json['LogoType'],'Uri',context!);
        SitePath = json['SitePath'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Name': Name,
        'LogoType': JsonConverters.toJson(LogoType,'Uri',context!),
        'SitePath': SitePath
    };

    getTypeName() => "CompanyInfoResponse";
    TypeContext? context = _ctx;
}

class BookedCustomer implements IConvertible
{
    String? Id;
    String? 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;

    BookedCustomer({this.Id,this.Firstname,this.Lastname,this.Email,this.Phone,this.FacebookUserName,this.ImageUrl,this.PersonalIdentityNumber,this.CorporateIdentityNumber,this.InvoiceAddress1,this.InvoiceAddress2,this.InvoiceCity,this.InvoicePostalCode,this.InvoiceCountryCode});
    BookedCustomer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Firstname = json['Firstname'];
        Lastname = json['Lastname'];
        Email = json['Email'];
        Phone = json['Phone'];
        FacebookUserName = json['FacebookUserName'];
        ImageUrl = json['ImageUrl'];
        PersonalIdentityNumber = json['PersonalIdentityNumber'];
        CorporateIdentityNumber = json['CorporateIdentityNumber'];
        InvoiceAddress1 = json['InvoiceAddress1'];
        InvoiceAddress2 = json['InvoiceAddress2'];
        InvoiceCity = json['InvoiceCity'];
        InvoicePostalCode = json['InvoicePostalCode'];
        InvoiceCountryCode = json['InvoiceCountryCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Firstname': Firstname,
        'Lastname': Lastname,
        'Email': Email,
        'Phone': Phone,
        'FacebookUserName': FacebookUserName,
        'ImageUrl': ImageUrl,
        'PersonalIdentityNumber': PersonalIdentityNumber,
        'CorporateIdentityNumber': CorporateIdentityNumber,
        'InvoiceAddress1': InvoiceAddress1,
        'InvoiceAddress2': InvoiceAddress2,
        'InvoiceCity': InvoiceCity,
        'InvoicePostalCode': InvoicePostalCode,
        'InvoiceCountryCode': InvoiceCountryCode
    };

    getTypeName() => "BookedCustomer";
    TypeContext? context = _ctx;
}

class BookingUserQueueItemResponse implements IConvertible
{
    int? BookingUserQueueId;
    String? CompanyId;
    String? CustomerId;
    int? ServiceId;
    DateTime? From;
    DateTime? To;
    int? StatusCode;
    String? StatusName;
    DateTime? SendConfirmationTime;
    List<BookingUserQueuePriceResponse>? Quantities = [];
    ServiceInfoResponse? Service;
    CompanyInfoResponse? Company;
    BookedCustomer? Customer;

    BookingUserQueueItemResponse({this.BookingUserQueueId,this.CompanyId,this.CustomerId,this.ServiceId,this.From,this.To,this.StatusCode,this.StatusName,this.SendConfirmationTime,this.Quantities,this.Service,this.Company,this.Customer});
    BookingUserQueueItemResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        BookingUserQueueId = json['BookingUserQueueId'];
        CompanyId = json['CompanyId'];
        CustomerId = json['CustomerId'];
        ServiceId = json['ServiceId'];
        From = JsonConverters.fromJson(json['From'],'DateTime',context!);
        To = JsonConverters.fromJson(json['To'],'DateTime',context!);
        StatusCode = json['StatusCode'];
        StatusName = json['StatusName'];
        SendConfirmationTime = JsonConverters.fromJson(json['SendConfirmationTime'],'DateTime',context!);
        Quantities = JsonConverters.fromJson(json['Quantities'],'List<BookingUserQueuePriceResponse>',context!);
        Service = JsonConverters.fromJson(json['Service'],'ServiceInfoResponse',context!);
        Company = JsonConverters.fromJson(json['Company'],'CompanyInfoResponse',context!);
        Customer = JsonConverters.fromJson(json['Customer'],'BookedCustomer',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'BookingUserQueueId': BookingUserQueueId,
        'CompanyId': CompanyId,
        'CustomerId': CustomerId,
        'ServiceId': ServiceId,
        'From': JsonConverters.toJson(From,'DateTime',context!),
        'To': JsonConverters.toJson(To,'DateTime',context!),
        'StatusCode': StatusCode,
        'StatusName': StatusName,
        'SendConfirmationTime': JsonConverters.toJson(SendConfirmationTime,'DateTime',context!),
        'Quantities': JsonConverters.toJson(Quantities,'List<BookingUserQueuePriceResponse>',context!),
        'Service': JsonConverters.toJson(Service,'ServiceInfoResponse',context!),
        'Company': JsonConverters.toJson(Company,'CompanyInfoResponse',context!),
        'Customer': JsonConverters.toJson(Customer,'BookedCustomer',context!)
    };

    getTypeName() => "BookingUserQueueItemResponse";
    TypeContext? context = _ctx;
}

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

    /**
    * 
    */
    // @ApiMember(Description="", IsRequired=true)
    String? CompanyId;

    /**
    * 
    */
    // @ApiMember(Description="", IsRequired=true)
    String? CustomerId;

    /**
    * 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")
    bool? IncludeServiceInformation;

    /**
    * 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")
    bool? IncludeCompanyInformation;

    GetBookingUserQueue({this.Id,this.CompanyId,this.CustomerId,this.IncludeServiceInformation,this.IncludeCompanyInformation});
    GetBookingUserQueue.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        CompanyId = json['CompanyId'];
        CustomerId = json['CustomerId'];
        IncludeServiceInformation = json['IncludeServiceInformation'];
        IncludeCompanyInformation = json['IncludeCompanyInformation'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'CompanyId': CompanyId,
        'CustomerId': CustomerId,
        'IncludeServiceInformation': IncludeServiceInformation,
        'IncludeCompanyInformation': IncludeCompanyInformation
    };

    getTypeName() => "GetBookingUserQueue";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: <String, TypeInfo> {
    'BookingUserQueuePriceResponse': TypeInfo(TypeOf.Class, create:() => BookingUserQueuePriceResponse()),
    'GroupBookingSettings': TypeInfo(TypeOf.Class, create:() => GroupBookingSettings()),
    'MultipleResourceSettings': TypeInfo(TypeOf.Class, create:() => MultipleResourceSettings()),
    'ServiceInfoResponse': TypeInfo(TypeOf.Class, create:() => ServiceInfoResponse()),
    'Uri': TypeInfo(TypeOf.Class, create:() => Uri()),
    'CompanyInfoResponse': TypeInfo(TypeOf.Class, create:() => CompanyInfoResponse()),
    'BookedCustomer': TypeInfo(TypeOf.Class, create:() => BookedCustomer()),
    'BookingUserQueueItemResponse': TypeInfo(TypeOf.Class, create:() => BookingUserQueueItemResponse()),
    'List<BookingUserQueuePriceResponse>': TypeInfo(TypeOf.Class, create:() => <BookingUserQueuePriceResponse>[]),
    'GetBookingUserQueue': TypeInfo(TypeOf.Class, create:() => GetBookingUserQueue()),
});

Dart GetBookingUserQueue DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

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: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<BookingUserQueueItemResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <BookingUserQueueId>0</BookingUserQueueId>
  <Company>
    <Id>00000000-0000-0000-0000-000000000000</Id>
    <LogoType i:nil="true" />
    <Name>String</Name>
    <SitePath>String</SitePath>
  </Company>
  <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
  <Customer>
    <CorporateIdentityNumber>String</CorporateIdentityNumber>
    <Email>String</Email>
    <FacebookUserName>String</FacebookUserName>
    <Firstname>String</Firstname>
    <Id>00000000-0000-0000-0000-000000000000</Id>
    <ImageUrl>String</ImageUrl>
    <InvoiceAddress1>String</InvoiceAddress1>
    <InvoiceAddress2>String</InvoiceAddress2>
    <InvoiceCity>String</InvoiceCity>
    <InvoiceCountryCode>String</InvoiceCountryCode>
    <InvoicePostalCode>String</InvoicePostalCode>
    <Lastname>String</Lastname>
    <PersonalIdentityNumber>String</PersonalIdentityNumber>
    <Phone>String</Phone>
  </Customer>
  <CustomerId>00000000-0000-0000-0000-000000000000</CustomerId>
  <From>0001-01-01T00:00:00</From>
  <Quantities>
    <BookingUserQueuePriceResponse>
      <BookingUserQueueId>0</BookingUserQueueId>
      <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
      <Id>0</Id>
      <Price>0</Price>
      <PriceText>String</PriceText>
      <Quantity>0</Quantity>
      <ServicePriceId>0</ServicePriceId>
    </BookingUserQueuePriceResponse>
  </Quantities>
  <SendConfirmationTime>0001-01-01T00:00:00</SendConfirmationTime>
  <Service>
    <Description>String</Description>
    <GroupBooking>
      <Active>false</Active>
      <Max>0</Max>
      <Min>0</Min>
    </GroupBooking>
    <Id>0</Id>
    <ImageUrl i:nil="true" />
    <IsGroupBooking>false</IsGroupBooking>
    <IsPaymentEnabled>false</IsPaymentEnabled>
    <LengthInMinutes>0</LengthInMinutes>
    <MaxNumberOfSpotsPerBooking>0</MaxNumberOfSpotsPerBooking>
    <MinNumberOfSpotsPerBooking>0</MinNumberOfSpotsPerBooking>
    <MultipleResource>
      <Active>false</Active>
      <Max>0</Max>
      <Min>0</Min>
    </MultipleResource>
    <Name>String</Name>
  </Service>
  <ServiceId>0</ServiceId>
  <StatusCode>0</StatusCode>
  <StatusName>String</StatusName>
  <To>0001-01-01T00:00:00</To>
</BookingUserQueueItemResponse>