GalaxyMobile App API

<back to all web services

PickMeUpBooking

Requires Authentication
import 'package:servicestack/servicestack.dart';

class ApiServiceRequest implements IServiceRequest, IHasApiKey, IHasDeviceInfo, IHasClientId, IConvertible
{
    /**
    * The API Key required for authentication
    */
    // @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
    String? ApiKey;

    /**
    * Latitude of the user making this request
    */
    // @ApiMember(DataType="double", Description="Latitude of the user making this request")
    double? Latitude;

    /**
    * Longitude of the user making this request
    */
    // @ApiMember(DataType="double", Description="Longitude of the user making this request")
    double? Longitude;

    ApiServiceRequest({this.ApiKey,this.Latitude,this.Longitude});
    ApiServiceRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ApiKey = json['ApiKey'];
        Latitude = JsonConverters.toDouble(json['Latitude']);
        Longitude = JsonConverters.toDouble(json['Longitude']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ApiKey': ApiKey,
        'Latitude': Latitude,
        'Longitude': Longitude
    };

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

class ApiServiceResponse implements IServiceResponse, IConvertible
{
    String? Description;
    String? Heading;
    bool? WasSuccessful;
    dynamic? ModelState;

    ApiServiceResponse({this.Description,this.Heading,this.WasSuccessful,this.ModelState});
    ApiServiceResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Description = json['Description'];
        Heading = json['Heading'];
        WasSuccessful = json['WasSuccessful'];
        ModelState = JsonConverters.fromJson(json['ModelState'],'dynamic',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Description': Description,
        'Heading': Heading,
        'WasSuccessful': WasSuccessful,
        'ModelState': JsonConverters.toJson(ModelState,'dynamic',context!)
    };

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

class PickMeUpBookingResponse extends ApiServiceResponse implements IConvertible
{
    PickMeUpBookingResponse();
    PickMeUpBookingResponse.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "PickMeUpBookingResponse";
    TypeContext? context = _ctx;
}

// @Flags()
class BookingType
{
    static const BookingType TakeMeHome = const BookingType._(1);
    static const BookingType PickMeUp = const BookingType._(2);

    final int _value;
    const BookingType._(this._value);
    int get value => _value;
    static List<BookingType> get values => const [TakeMeHome,PickMeUp];
}

class BookingLocation implements IConvertible
{
    double? Latitude;
    double? Longitude;
    String? Address;

    BookingLocation({this.Latitude,this.Longitude,this.Address});
    BookingLocation.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Latitude = JsonConverters.toDouble(json['Latitude']);
        Longitude = JsonConverters.toDouble(json['Longitude']);
        Address = json['Address'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Latitude': Latitude,
        'Longitude': Longitude,
        'Address': Address
    };

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

class PickMeUpBooking extends ApiServiceRequest implements IConvertible
{
    BookingType? BookingType;
    int? PassengerCount;
    String? BookingDate;
    String? ContactName;
    String? ContactNumber;
    BookingLocation? PickupLocation;
    BookingLocation? DropoffLocation;

    PickMeUpBooking({this.BookingType,this.PassengerCount,this.BookingDate,this.ContactName,this.ContactNumber,this.PickupLocation,this.DropoffLocation});
    PickMeUpBooking.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        BookingType = JsonConverters.fromJson(json['BookingType'],'BookingType',context!);
        PassengerCount = json['PassengerCount'];
        BookingDate = json['BookingDate'];
        ContactName = json['ContactName'];
        ContactNumber = json['ContactNumber'];
        PickupLocation = JsonConverters.fromJson(json['PickupLocation'],'BookingLocation',context!);
        DropoffLocation = JsonConverters.fromJson(json['DropoffLocation'],'BookingLocation',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'BookingType': JsonConverters.toJson(BookingType,'BookingType',context!),
        'PassengerCount': PassengerCount,
        'BookingDate': BookingDate,
        'ContactName': ContactName,
        'ContactNumber': ContactNumber,
        'PickupLocation': JsonConverters.toJson(PickupLocation,'BookingLocation',context!),
        'DropoffLocation': JsonConverters.toJson(DropoffLocation,'BookingLocation',context!)
    });

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

TypeContext _ctx = TypeContext(library: 'galaxymobile.api.dev.86degrees.com', types: <String, TypeInfo> {
    'ApiServiceRequest': TypeInfo(TypeOf.Class, create:() => ApiServiceRequest()),
    'ApiServiceResponse': TypeInfo(TypeOf.Class, create:() => ApiServiceResponse()),
    'PickMeUpBookingResponse': TypeInfo(TypeOf.Class, create:() => PickMeUpBookingResponse()),
    'BookingType': TypeInfo(TypeOf.Enum, enumValues:BookingType.values),
    'BookingLocation': TypeInfo(TypeOf.Class, create:() => BookingLocation()),
    'PickMeUpBooking': TypeInfo(TypeOf.Class, create:() => PickMeUpBooking()),
});

Dart PickMeUpBooking 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.

POST /xml/reply/PickMeUpBooking HTTP/1.1 
Host: galaxymobile.api.dev.86degrees.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<PickMeUpBooking xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel">
  <ApiKey xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel.Base">String</ApiKey>
  <Latitude xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel.Base">0</Latitude>
  <Longitude xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel.Base">0</Longitude>
  <BookingDate>String</BookingDate>
  <BookingType>TakeMeHome</BookingType>
  <ContactName>String</ContactName>
  <ContactNumber>String</ContactNumber>
  <DropoffLocation>
    <Address>String</Address>
    <Latitude>0</Latitude>
    <Longitude>0</Longitude>
  </DropoffLocation>
  <PassengerCount>0</PassengerCount>
  <PickupLocation>
    <Address>String</Address>
    <Latitude>0</Latitude>
    <Longitude>0</Longitude>
  </PickupLocation>
</PickMeUpBooking>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<PickMeUpBookingResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel">
  <Description xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">String</Description>
  <Heading xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">String</Heading>
  <ModelState xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base" />
  <WasSuccessful xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">false</WasSuccessful>
</PickMeUpBookingResponse>