Trendsic Platform Service

<back to all web services

DispatchPickupPageRequest

The following routes are available for this service:
GET,OPTIONS/v1/dispatch/public/pickup/{SchedulerUrl}
import 'package:servicestack/servicestack.dart';

class DispatchZoneView implements IConvertible
{
    String? Zone;
    double? Base;
    double? PerBag;
    double? PremiumUpliftPct;
    int? Drivers;
    int? IdleDrivers;

    DispatchZoneView({this.Zone,this.Base,this.PerBag,this.PremiumUpliftPct,this.Drivers,this.IdleDrivers});
    DispatchZoneView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Zone = json['Zone'];
        Base = JsonConverters.toDouble(json['Base']);
        PerBag = JsonConverters.toDouble(json['PerBag']);
        PremiumUpliftPct = JsonConverters.toDouble(json['PremiumUpliftPct']);
        Drivers = json['Drivers'];
        IdleDrivers = json['IdleDrivers'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Zone': Zone,
        'Base': Base,
        'PerBag': PerBag,
        'PremiumUpliftPct': PremiumUpliftPct,
        'Drivers': Drivers,
        'IdleDrivers': IdleDrivers
    };

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

class DispatchNeedView implements IConvertible
{
    String? Id;
    String? Label;
    String? Sub;

    DispatchNeedView({this.Id,this.Label,this.Sub});
    DispatchNeedView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Label = json['Label'];
        Sub = json['Sub'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Label': Label,
        'Sub': Sub
    };

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

class DispatchPickupPageResponse implements IConvertible
{
    String? CompanyName;
    List<DispatchZoneView>? Zones = [];
    List<DispatchNeedView>? Needs = [];
    bool? CardEnabled;
    String? PublishableKey;
    ResponseStatus? ResponseStatus;

    DispatchPickupPageResponse({this.CompanyName,this.Zones,this.Needs,this.CardEnabled,this.PublishableKey,this.ResponseStatus});
    DispatchPickupPageResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CompanyName = json['CompanyName'];
        Zones = JsonConverters.fromJson(json['Zones'],'List<DispatchZoneView>',context!);
        Needs = JsonConverters.fromJson(json['Needs'],'List<DispatchNeedView>',context!);
        CardEnabled = json['CardEnabled'];
        PublishableKey = json['PublishableKey'];
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CompanyName': CompanyName,
        'Zones': JsonConverters.toJson(Zones,'List<DispatchZoneView>',context!),
        'Needs': JsonConverters.toJson(Needs,'List<DispatchNeedView>',context!),
        'CardEnabled': CardEnabled,
        'PublishableKey': PublishableKey,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

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

class DispatchPickupPageRequest implements IConvertible
{
    String? SchedulerUrl;

    DispatchPickupPageRequest({this.SchedulerUrl});
    DispatchPickupPageRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'SchedulerUrl': SchedulerUrl
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'DispatchZoneView': TypeInfo(TypeOf.Class, create:() => DispatchZoneView()),
    'DispatchNeedView': TypeInfo(TypeOf.Class, create:() => DispatchNeedView()),
    'DispatchPickupPageResponse': TypeInfo(TypeOf.Class, create:() => DispatchPickupPageResponse()),
    'List<DispatchZoneView>': TypeInfo(TypeOf.Class, create:() => <DispatchZoneView>[]),
    'List<DispatchNeedView>': TypeInfo(TypeOf.Class, create:() => <DispatchNeedView>[]),
    'DispatchPickupPageRequest': TypeInfo(TypeOf.Class, create:() => DispatchPickupPageRequest()),
});

Dart DispatchPickupPageRequest 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 /v1/dispatch/public/pickup/{SchedulerUrl} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	CompanyName: String,
	Zones: 
	[
		{
			Zone: String,
			Base: 0,
			PerBag: 0,
			PremiumUpliftPct: 0,
			Drivers: 0,
			IdleDrivers: 0
		}
	],
	Needs: 
	[
		{
			Id: String,
			Label: String,
			Sub: String
		}
	],
	CardEnabled: False,
	PublishableKey: String,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}