Trendsic Platform Service

<back to all web services

CourierOrderReadyRequest

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/dispatch/courier/orders/{Code}/ready
import 'package:servicestack/servicestack.dart';

class CourierOrderRuleView implements IConvertible
{
    int? PingSecs;
    int? MissedWaitMin;
    double? MissedFee;
    double? CancelFee;
    bool? MissedAutoRebook;
    bool? MissedRequireContact;
    bool? MissedRequirePhoto;
    String? PayTiming;
    bool? FinalPriceAfterCount;
    String? PayPlanName;
    double? PerPickup;
    double? PerStop;
    double? PerMissed;
    double? PerCancel;
    DateTime? AcceptedUtc;
    Map<String,String?>? Proof = {};

    CourierOrderRuleView({this.PingSecs,this.MissedWaitMin,this.MissedFee,this.CancelFee,this.MissedAutoRebook,this.MissedRequireContact,this.MissedRequirePhoto,this.PayTiming,this.FinalPriceAfterCount,this.PayPlanName,this.PerPickup,this.PerStop,this.PerMissed,this.PerCancel,this.AcceptedUtc,this.Proof});
    CourierOrderRuleView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        PingSecs = json['PingSecs'];
        MissedWaitMin = json['MissedWaitMin'];
        MissedFee = JsonConverters.toDouble(json['MissedFee']);
        CancelFee = JsonConverters.toDouble(json['CancelFee']);
        MissedAutoRebook = json['MissedAutoRebook'];
        MissedRequireContact = json['MissedRequireContact'];
        MissedRequirePhoto = json['MissedRequirePhoto'];
        PayTiming = json['PayTiming'];
        FinalPriceAfterCount = json['FinalPriceAfterCount'];
        PayPlanName = json['PayPlanName'];
        PerPickup = JsonConverters.toDouble(json['PerPickup']);
        PerStop = JsonConverters.toDouble(json['PerStop']);
        PerMissed = JsonConverters.toDouble(json['PerMissed']);
        PerCancel = JsonConverters.toDouble(json['PerCancel']);
        AcceptedUtc = JsonConverters.fromJson(json['AcceptedUtc'],'DateTime',context!);
        Proof = JsonConverters.toStringMap(json['Proof']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'PingSecs': PingSecs,
        'MissedWaitMin': MissedWaitMin,
        'MissedFee': MissedFee,
        'CancelFee': CancelFee,
        'MissedAutoRebook': MissedAutoRebook,
        'MissedRequireContact': MissedRequireContact,
        'MissedRequirePhoto': MissedRequirePhoto,
        'PayTiming': PayTiming,
        'FinalPriceAfterCount': FinalPriceAfterCount,
        'PayPlanName': PayPlanName,
        'PerPickup': PerPickup,
        'PerStop': PerStop,
        'PerMissed': PerMissed,
        'PerCancel': PerCancel,
        'AcceptedUtc': JsonConverters.toJson(AcceptedUtc,'DateTime',context!),
        'Proof': Proof
    };

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

class CourierItemView implements IConvertible
{
    int? CourierItemID;
    int? DispatchOdRequestID;
    int? Seq;
    String? TagCode;
    String? Custody;
    bool? IsOpen;
    bool? IsMissing;
    String? MissingReason;
    bool? IsManual;
    bool? ReTagFlag;
    bool? Scanned;

    CourierItemView({this.CourierItemID,this.DispatchOdRequestID,this.Seq,this.TagCode,this.Custody,this.IsOpen,this.IsMissing,this.MissingReason,this.IsManual,this.ReTagFlag,this.Scanned});
    CourierItemView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CourierItemID = json['CourierItemID'];
        DispatchOdRequestID = json['DispatchOdRequestID'];
        Seq = json['Seq'];
        TagCode = json['TagCode'];
        Custody = json['Custody'];
        IsOpen = json['IsOpen'];
        IsMissing = json['IsMissing'];
        MissingReason = json['MissingReason'];
        IsManual = json['IsManual'];
        ReTagFlag = json['ReTagFlag'];
        Scanned = json['Scanned'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CourierItemID': CourierItemID,
        'DispatchOdRequestID': DispatchOdRequestID,
        'Seq': Seq,
        'TagCode': TagCode,
        'Custody': Custody,
        'IsOpen': IsOpen,
        'IsMissing': IsMissing,
        'MissingReason': MissingReason,
        'IsManual': IsManual,
        'ReTagFlag': ReTagFlag,
        'Scanned': Scanned
    };

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

class CourierScanView implements IConvertible
{
    String? TagCode;
    String? Stage;
    String? Result;
    DateTime? AtUtc;

    CourierScanView({this.TagCode,this.Stage,this.Result,this.AtUtc});
    CourierScanView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        TagCode = json['TagCode'];
        Stage = json['Stage'];
        Result = json['Result'];
        AtUtc = JsonConverters.fromJson(json['AtUtc'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'TagCode': TagCode,
        'Stage': Stage,
        'Result': Result,
        'AtUtc': JsonConverters.toJson(AtUtc,'DateTime',context!)
    };

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

class CourierProofResultView implements IConvertible
{
    String? Stage;
    String? StepKey;
    String? Value;
    DateTime? AtUtc;

    CourierProofResultView({this.Stage,this.StepKey,this.Value,this.AtUtc});
    CourierProofResultView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Stage = json['Stage'];
        StepKey = json['StepKey'];
        Value = json['Value'];
        AtUtc = JsonConverters.fromJson(json['AtUtc'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Stage': Stage,
        'StepKey': StepKey,
        'Value': Value,
        'AtUtc': JsonConverters.toJson(AtUtc,'DateTime',context!)
    };

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

class CourierEventView implements IConvertible
{
    String? Kind;
    String? Party;
    String? Body;
    DateTime? AtUtc;

    CourierEventView({this.Kind,this.Party,this.Body,this.AtUtc});
    CourierEventView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Kind = json['Kind'];
        Party = json['Party'];
        Body = json['Body'];
        AtUtc = JsonConverters.fromJson(json['AtUtc'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Kind': Kind,
        'Party': Party,
        'Body': Body,
        'AtUtc': JsonConverters.toJson(AtUtc,'DateTime',context!)
    };

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

class CourierPhotoView implements IConvertible
{
    int? PhotoId;
    String? Kind;
    String? FileName;
    String? Url;
    DateTime? TakenUtc;

    CourierPhotoView({this.PhotoId,this.Kind,this.FileName,this.Url,this.TakenUtc});
    CourierPhotoView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        PhotoId = json['PhotoId'];
        Kind = json['Kind'];
        FileName = json['FileName'];
        Url = json['Url'];
        TakenUtc = JsonConverters.fromJson(json['TakenUtc'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'PhotoId': PhotoId,
        'Kind': Kind,
        'FileName': FileName,
        'Url': Url,
        'TakenUtc': JsonConverters.toJson(TakenUtc,'DateTime',context!)
    };

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

class CourierPayLineView implements IConvertible
{
    int? DispatchLoadID;
    String? Kind;
    String? Label;
    double? Qty;
    double? Rate;
    double? Amount;

    CourierPayLineView({this.DispatchLoadID,this.Kind,this.Label,this.Qty,this.Rate,this.Amount});
    CourierPayLineView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DispatchLoadID = json['DispatchLoadID'];
        Kind = json['Kind'];
        Label = json['Label'];
        Qty = JsonConverters.toDouble(json['Qty']);
        Rate = JsonConverters.toDouble(json['Rate']);
        Amount = JsonConverters.toDouble(json['Amount']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DispatchLoadID': DispatchLoadID,
        'Kind': Kind,
        'Label': Label,
        'Qty': Qty,
        'Rate': Rate,
        'Amount': Amount
    };

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

class CourierOrderView implements IConvertible
{
    int? DispatchOdRequestID;
    String? Code;
    int? CourierProfileId;
    String? ProfileName;
    String? RouteShape;
    String? UnitOne;
    String? UnitMany;
    int? CourierFacilityId;
    String? FacilityName;
    String? ServiceLevelCode;
    String? LevelName;
    String? Source;
    String? Address;
    String? Unit;
    String? City;
    String? Zip;
    String? Zone;
    String? PickupContactName;
    String? DropoffAddress;
    String? DropoffUnit;
    String? DropoffCity;
    String? DropoffZip;
    String? DropoffContactName;
    double? Miles;
    int? Units;
    int? UnitsFound;
    String? Stage;
    String? CourierStep;
    String? StepLabel;
    String? DriverCode;
    String? DriverName;
    int? DriverContactId;
    int? CourierRunId;
    String? RunCode;
    int? StopSequence;
    int? QueueSequence;
    bool? IsAsap;
    DateTime? WindowStartUtc;
    DateTime? WindowEndUtc;
    String? WindowText;
    DateTime? DueUtc;
    String? DueText;
    DateTime? PingAfterUtc;
    DateTime? PingExpiresUtc;
    String? CandidateCode;
    String? HeldReason;
    DateTime? HeldUtc;
    String? CustomerName;
    String? CustomerPhone;
    String? Handoff;
    String? GateCode;
    String? Instructions;
    String? DamageNote;
    String? DeliveredToName;
    String? PayMode;
    double? Fare;
    double? FinalPrice;
    double? TipAmount;
    String? CancelledBy;
    String? CancelReason;
    double? CancelFeeApplied;
    double? MissedFeeApplied;
    String? CaptureMode;
    double? AuthorizedAmount;
    double? CapturedAmount;
    double? RefundedAmount;
    String? ChargeError;
    DateTime? CreatedAt;
    DateTime? ArrivedUtc;
    DateTime? PickedUpUtc;
    DateTime? IntakeUtc;
    DateTime? ReadyUtc;
    DateTime? OutForDeliveryUtc;
    DateTime? DeliveredUtc;
    DateTime? MissedUtc;
    DateTime? CancelledUtc;
    bool? IsClosed;
    int? RebookOfId;
    int? RecurrenceId;
    int? PickupLoadId;
    CourierOrderRuleView? Rule;
    List<CourierItemView>? Items = [];
    List<CourierScanView>? Scans = [];
    List<CourierProofResultView>? Proof = [];
    List<CourierEventView>? Events = [];
    List<CourierPhotoView>? Photos = [];
    List<CourierPayLineView>? PayLines = [];

    CourierOrderView({this.DispatchOdRequestID,this.Code,this.CourierProfileId,this.ProfileName,this.RouteShape,this.UnitOne,this.UnitMany,this.CourierFacilityId,this.FacilityName,this.ServiceLevelCode,this.LevelName,this.Source,this.Address,this.Unit,this.City,this.Zip,this.Zone,this.PickupContactName,this.DropoffAddress,this.DropoffUnit,this.DropoffCity,this.DropoffZip,this.DropoffContactName,this.Miles,this.Units,this.UnitsFound,this.Stage,this.CourierStep,this.StepLabel,this.DriverCode,this.DriverName,this.DriverContactId,this.CourierRunId,this.RunCode,this.StopSequence,this.QueueSequence,this.IsAsap,this.WindowStartUtc,this.WindowEndUtc,this.WindowText,this.DueUtc,this.DueText,this.PingAfterUtc,this.PingExpiresUtc,this.CandidateCode,this.HeldReason,this.HeldUtc,this.CustomerName,this.CustomerPhone,this.Handoff,this.GateCode,this.Instructions,this.DamageNote,this.DeliveredToName,this.PayMode,this.Fare,this.FinalPrice,this.TipAmount,this.CancelledBy,this.CancelReason,this.CancelFeeApplied,this.MissedFeeApplied,this.CaptureMode,this.AuthorizedAmount,this.CapturedAmount,this.RefundedAmount,this.ChargeError,this.CreatedAt,this.ArrivedUtc,this.PickedUpUtc,this.IntakeUtc,this.ReadyUtc,this.OutForDeliveryUtc,this.DeliveredUtc,this.MissedUtc,this.CancelledUtc,this.IsClosed,this.RebookOfId,this.RecurrenceId,this.PickupLoadId,this.Rule,this.Items,this.Scans,this.Proof,this.Events,this.Photos,this.PayLines});
    CourierOrderView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DispatchOdRequestID = json['DispatchOdRequestID'];
        Code = json['Code'];
        CourierProfileId = json['CourierProfileId'];
        ProfileName = json['ProfileName'];
        RouteShape = json['RouteShape'];
        UnitOne = json['UnitOne'];
        UnitMany = json['UnitMany'];
        CourierFacilityId = json['CourierFacilityId'];
        FacilityName = json['FacilityName'];
        ServiceLevelCode = json['ServiceLevelCode'];
        LevelName = json['LevelName'];
        Source = json['Source'];
        Address = json['Address'];
        Unit = json['Unit'];
        City = json['City'];
        Zip = json['Zip'];
        Zone = json['Zone'];
        PickupContactName = json['PickupContactName'];
        DropoffAddress = json['DropoffAddress'];
        DropoffUnit = json['DropoffUnit'];
        DropoffCity = json['DropoffCity'];
        DropoffZip = json['DropoffZip'];
        DropoffContactName = json['DropoffContactName'];
        Miles = JsonConverters.toDouble(json['Miles']);
        Units = json['Units'];
        UnitsFound = json['UnitsFound'];
        Stage = json['Stage'];
        CourierStep = json['CourierStep'];
        StepLabel = json['StepLabel'];
        DriverCode = json['DriverCode'];
        DriverName = json['DriverName'];
        DriverContactId = json['DriverContactId'];
        CourierRunId = json['CourierRunId'];
        RunCode = json['RunCode'];
        StopSequence = json['StopSequence'];
        QueueSequence = json['QueueSequence'];
        IsAsap = json['IsAsap'];
        WindowStartUtc = JsonConverters.fromJson(json['WindowStartUtc'],'DateTime',context!);
        WindowEndUtc = JsonConverters.fromJson(json['WindowEndUtc'],'DateTime',context!);
        WindowText = json['WindowText'];
        DueUtc = JsonConverters.fromJson(json['DueUtc'],'DateTime',context!);
        DueText = json['DueText'];
        PingAfterUtc = JsonConverters.fromJson(json['PingAfterUtc'],'DateTime',context!);
        PingExpiresUtc = JsonConverters.fromJson(json['PingExpiresUtc'],'DateTime',context!);
        CandidateCode = json['CandidateCode'];
        HeldReason = json['HeldReason'];
        HeldUtc = JsonConverters.fromJson(json['HeldUtc'],'DateTime',context!);
        CustomerName = json['CustomerName'];
        CustomerPhone = json['CustomerPhone'];
        Handoff = json['Handoff'];
        GateCode = json['GateCode'];
        Instructions = json['Instructions'];
        DamageNote = json['DamageNote'];
        DeliveredToName = json['DeliveredToName'];
        PayMode = json['PayMode'];
        Fare = JsonConverters.toDouble(json['Fare']);
        FinalPrice = JsonConverters.toDouble(json['FinalPrice']);
        TipAmount = JsonConverters.toDouble(json['TipAmount']);
        CancelledBy = json['CancelledBy'];
        CancelReason = json['CancelReason'];
        CancelFeeApplied = JsonConverters.toDouble(json['CancelFeeApplied']);
        MissedFeeApplied = JsonConverters.toDouble(json['MissedFeeApplied']);
        CaptureMode = json['CaptureMode'];
        AuthorizedAmount = JsonConverters.toDouble(json['AuthorizedAmount']);
        CapturedAmount = JsonConverters.toDouble(json['CapturedAmount']);
        RefundedAmount = JsonConverters.toDouble(json['RefundedAmount']);
        ChargeError = json['ChargeError'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        ArrivedUtc = JsonConverters.fromJson(json['ArrivedUtc'],'DateTime',context!);
        PickedUpUtc = JsonConverters.fromJson(json['PickedUpUtc'],'DateTime',context!);
        IntakeUtc = JsonConverters.fromJson(json['IntakeUtc'],'DateTime',context!);
        ReadyUtc = JsonConverters.fromJson(json['ReadyUtc'],'DateTime',context!);
        OutForDeliveryUtc = JsonConverters.fromJson(json['OutForDeliveryUtc'],'DateTime',context!);
        DeliveredUtc = JsonConverters.fromJson(json['DeliveredUtc'],'DateTime',context!);
        MissedUtc = JsonConverters.fromJson(json['MissedUtc'],'DateTime',context!);
        CancelledUtc = JsonConverters.fromJson(json['CancelledUtc'],'DateTime',context!);
        IsClosed = json['IsClosed'];
        RebookOfId = json['RebookOfId'];
        RecurrenceId = json['RecurrenceId'];
        PickupLoadId = json['PickupLoadId'];
        Rule = JsonConverters.fromJson(json['Rule'],'CourierOrderRuleView',context!);
        Items = JsonConverters.fromJson(json['Items'],'List<CourierItemView>',context!);
        Scans = JsonConverters.fromJson(json['Scans'],'List<CourierScanView>',context!);
        Proof = JsonConverters.fromJson(json['Proof'],'List<CourierProofResultView>',context!);
        Events = JsonConverters.fromJson(json['Events'],'List<CourierEventView>',context!);
        Photos = JsonConverters.fromJson(json['Photos'],'List<CourierPhotoView>',context!);
        PayLines = JsonConverters.fromJson(json['PayLines'],'List<CourierPayLineView>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DispatchOdRequestID': DispatchOdRequestID,
        'Code': Code,
        'CourierProfileId': CourierProfileId,
        'ProfileName': ProfileName,
        'RouteShape': RouteShape,
        'UnitOne': UnitOne,
        'UnitMany': UnitMany,
        'CourierFacilityId': CourierFacilityId,
        'FacilityName': FacilityName,
        'ServiceLevelCode': ServiceLevelCode,
        'LevelName': LevelName,
        'Source': Source,
        'Address': Address,
        'Unit': Unit,
        'City': City,
        'Zip': Zip,
        'Zone': Zone,
        'PickupContactName': PickupContactName,
        'DropoffAddress': DropoffAddress,
        'DropoffUnit': DropoffUnit,
        'DropoffCity': DropoffCity,
        'DropoffZip': DropoffZip,
        'DropoffContactName': DropoffContactName,
        'Miles': Miles,
        'Units': Units,
        'UnitsFound': UnitsFound,
        'Stage': Stage,
        'CourierStep': CourierStep,
        'StepLabel': StepLabel,
        'DriverCode': DriverCode,
        'DriverName': DriverName,
        'DriverContactId': DriverContactId,
        'CourierRunId': CourierRunId,
        'RunCode': RunCode,
        'StopSequence': StopSequence,
        'QueueSequence': QueueSequence,
        'IsAsap': IsAsap,
        'WindowStartUtc': JsonConverters.toJson(WindowStartUtc,'DateTime',context!),
        'WindowEndUtc': JsonConverters.toJson(WindowEndUtc,'DateTime',context!),
        'WindowText': WindowText,
        'DueUtc': JsonConverters.toJson(DueUtc,'DateTime',context!),
        'DueText': DueText,
        'PingAfterUtc': JsonConverters.toJson(PingAfterUtc,'DateTime',context!),
        'PingExpiresUtc': JsonConverters.toJson(PingExpiresUtc,'DateTime',context!),
        'CandidateCode': CandidateCode,
        'HeldReason': HeldReason,
        'HeldUtc': JsonConverters.toJson(HeldUtc,'DateTime',context!),
        'CustomerName': CustomerName,
        'CustomerPhone': CustomerPhone,
        'Handoff': Handoff,
        'GateCode': GateCode,
        'Instructions': Instructions,
        'DamageNote': DamageNote,
        'DeliveredToName': DeliveredToName,
        'PayMode': PayMode,
        'Fare': Fare,
        'FinalPrice': FinalPrice,
        'TipAmount': TipAmount,
        'CancelledBy': CancelledBy,
        'CancelReason': CancelReason,
        'CancelFeeApplied': CancelFeeApplied,
        'MissedFeeApplied': MissedFeeApplied,
        'CaptureMode': CaptureMode,
        'AuthorizedAmount': AuthorizedAmount,
        'CapturedAmount': CapturedAmount,
        'RefundedAmount': RefundedAmount,
        'ChargeError': ChargeError,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'ArrivedUtc': JsonConverters.toJson(ArrivedUtc,'DateTime',context!),
        'PickedUpUtc': JsonConverters.toJson(PickedUpUtc,'DateTime',context!),
        'IntakeUtc': JsonConverters.toJson(IntakeUtc,'DateTime',context!),
        'ReadyUtc': JsonConverters.toJson(ReadyUtc,'DateTime',context!),
        'OutForDeliveryUtc': JsonConverters.toJson(OutForDeliveryUtc,'DateTime',context!),
        'DeliveredUtc': JsonConverters.toJson(DeliveredUtc,'DateTime',context!),
        'MissedUtc': JsonConverters.toJson(MissedUtc,'DateTime',context!),
        'CancelledUtc': JsonConverters.toJson(CancelledUtc,'DateTime',context!),
        'IsClosed': IsClosed,
        'RebookOfId': RebookOfId,
        'RecurrenceId': RecurrenceId,
        'PickupLoadId': PickupLoadId,
        'Rule': JsonConverters.toJson(Rule,'CourierOrderRuleView',context!),
        'Items': JsonConverters.toJson(Items,'List<CourierItemView>',context!),
        'Scans': JsonConverters.toJson(Scans,'List<CourierScanView>',context!),
        'Proof': JsonConverters.toJson(Proof,'List<CourierProofResultView>',context!),
        'Events': JsonConverters.toJson(Events,'List<CourierEventView>',context!),
        'Photos': JsonConverters.toJson(Photos,'List<CourierPhotoView>',context!),
        'PayLines': JsonConverters.toJson(PayLines,'List<CourierPayLineView>',context!)
    };

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

class CourierOrderResponse implements IConvertible
{
    List<CourierOrderView>? Orders = [];
    CourierOrderView? Order;
    String? Message;
    ResponseStatus? ResponseStatus;

    CourierOrderResponse({this.Orders,this.Order,this.Message,this.ResponseStatus});
    CourierOrderResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Orders = JsonConverters.fromJson(json['Orders'],'List<CourierOrderView>',context!);
        Order = JsonConverters.fromJson(json['Order'],'CourierOrderView',context!);
        Message = json['Message'];
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Orders': JsonConverters.toJson(Orders,'List<CourierOrderView>',context!),
        'Order': JsonConverters.toJson(Order,'CourierOrderView',context!),
        'Message': Message,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

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

class CourierOrderReadyRequest implements IConvertible
{
    String? Code;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'CourierOrderRuleView': TypeInfo(TypeOf.Class, create:() => CourierOrderRuleView()),
    'CourierItemView': TypeInfo(TypeOf.Class, create:() => CourierItemView()),
    'CourierScanView': TypeInfo(TypeOf.Class, create:() => CourierScanView()),
    'CourierProofResultView': TypeInfo(TypeOf.Class, create:() => CourierProofResultView()),
    'CourierEventView': TypeInfo(TypeOf.Class, create:() => CourierEventView()),
    'CourierPhotoView': TypeInfo(TypeOf.Class, create:() => CourierPhotoView()),
    'CourierPayLineView': TypeInfo(TypeOf.Class, create:() => CourierPayLineView()),
    'CourierOrderView': TypeInfo(TypeOf.Class, create:() => CourierOrderView()),
    'List<CourierItemView>': TypeInfo(TypeOf.Class, create:() => <CourierItemView>[]),
    'List<CourierScanView>': TypeInfo(TypeOf.Class, create:() => <CourierScanView>[]),
    'List<CourierProofResultView>': TypeInfo(TypeOf.Class, create:() => <CourierProofResultView>[]),
    'List<CourierEventView>': TypeInfo(TypeOf.Class, create:() => <CourierEventView>[]),
    'List<CourierPhotoView>': TypeInfo(TypeOf.Class, create:() => <CourierPhotoView>[]),
    'List<CourierPayLineView>': TypeInfo(TypeOf.Class, create:() => <CourierPayLineView>[]),
    'CourierOrderResponse': TypeInfo(TypeOf.Class, create:() => CourierOrderResponse()),
    'List<CourierOrderView>': TypeInfo(TypeOf.Class, create:() => <CourierOrderView>[]),
    'CourierOrderReadyRequest': TypeInfo(TypeOf.Class, create:() => CourierOrderReadyRequest()),
});

Dart CourierOrderReadyRequest 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 /v1/dispatch/courier/orders/{Code}/ready HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CourierOrderReadyRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <Code>String</Code>
</CourierOrderReadyRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CourierOrderResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <Message>String</Message>
  <Order>
    <Address>String</Address>
    <ArrivedUtc>0001-01-01T00:00:00</ArrivedUtc>
    <AuthorizedAmount>0</AuthorizedAmount>
    <CancelFeeApplied>0</CancelFeeApplied>
    <CancelReason>String</CancelReason>
    <CancelledBy>String</CancelledBy>
    <CancelledUtc>0001-01-01T00:00:00</CancelledUtc>
    <CandidateCode>String</CandidateCode>
    <CaptureMode>String</CaptureMode>
    <CapturedAmount>0</CapturedAmount>
    <ChargeError>String</ChargeError>
    <City>String</City>
    <Code>String</Code>
    <CourierFacilityId>0</CourierFacilityId>
    <CourierProfileId>0</CourierProfileId>
    <CourierRunId>0</CourierRunId>
    <CourierStep>String</CourierStep>
    <CreatedAt>0001-01-01T00:00:00</CreatedAt>
    <CustomerName>String</CustomerName>
    <CustomerPhone>String</CustomerPhone>
    <DamageNote>String</DamageNote>
    <DeliveredToName>String</DeliveredToName>
    <DeliveredUtc>0001-01-01T00:00:00</DeliveredUtc>
    <DispatchOdRequestID>0</DispatchOdRequestID>
    <DriverCode>String</DriverCode>
    <DriverContactId>0</DriverContactId>
    <DriverName>String</DriverName>
    <DropoffAddress>String</DropoffAddress>
    <DropoffCity>String</DropoffCity>
    <DropoffContactName>String</DropoffContactName>
    <DropoffUnit>String</DropoffUnit>
    <DropoffZip>String</DropoffZip>
    <DueText>String</DueText>
    <DueUtc>0001-01-01T00:00:00</DueUtc>
    <Events>
      <CourierEventView>
        <AtUtc>0001-01-01T00:00:00</AtUtc>
        <Body>String</Body>
        <Kind>String</Kind>
        <Party>String</Party>
      </CourierEventView>
    </Events>
    <FacilityName>String</FacilityName>
    <Fare>0</Fare>
    <FinalPrice>0</FinalPrice>
    <GateCode>String</GateCode>
    <Handoff>String</Handoff>
    <HeldReason>String</HeldReason>
    <HeldUtc>0001-01-01T00:00:00</HeldUtc>
    <Instructions>String</Instructions>
    <IntakeUtc>0001-01-01T00:00:00</IntakeUtc>
    <IsAsap>false</IsAsap>
    <IsClosed>false</IsClosed>
    <Items>
      <CourierItemView>
        <CourierItemID>0</CourierItemID>
        <Custody>String</Custody>
        <DispatchOdRequestID>0</DispatchOdRequestID>
        <IsManual>false</IsManual>
        <IsMissing>false</IsMissing>
        <IsOpen>false</IsOpen>
        <MissingReason>String</MissingReason>
        <ReTagFlag>false</ReTagFlag>
        <Scanned>false</Scanned>
        <Seq>0</Seq>
        <TagCode>String</TagCode>
      </CourierItemView>
    </Items>
    <LevelName>String</LevelName>
    <Miles>0</Miles>
    <MissedFeeApplied>0</MissedFeeApplied>
    <MissedUtc>0001-01-01T00:00:00</MissedUtc>
    <OutForDeliveryUtc>0001-01-01T00:00:00</OutForDeliveryUtc>
    <PayLines>
      <CourierPayLineView>
        <Amount>0</Amount>
        <DispatchLoadID>0</DispatchLoadID>
        <Kind>String</Kind>
        <Label>String</Label>
        <Qty>0</Qty>
        <Rate>0</Rate>
      </CourierPayLineView>
    </PayLines>
    <PayMode>String</PayMode>
    <Photos>
      <CourierPhotoView>
        <FileName>String</FileName>
        <Kind>String</Kind>
        <PhotoId>0</PhotoId>
        <TakenUtc>0001-01-01T00:00:00</TakenUtc>
        <Url>String</Url>
      </CourierPhotoView>
    </Photos>
    <PickedUpUtc>0001-01-01T00:00:00</PickedUpUtc>
    <PickupContactName>String</PickupContactName>
    <PickupLoadId>0</PickupLoadId>
    <PingAfterUtc>0001-01-01T00:00:00</PingAfterUtc>
    <PingExpiresUtc>0001-01-01T00:00:00</PingExpiresUtc>
    <ProfileName>String</ProfileName>
    <Proof>
      <CourierProofResultView>
        <AtUtc>0001-01-01T00:00:00</AtUtc>
        <Stage>String</Stage>
        <StepKey>String</StepKey>
        <Value>String</Value>
      </CourierProofResultView>
    </Proof>
    <QueueSequence>0</QueueSequence>
    <ReadyUtc>0001-01-01T00:00:00</ReadyUtc>
    <RebookOfId>0</RebookOfId>
    <RecurrenceId>0</RecurrenceId>
    <RefundedAmount>0</RefundedAmount>
    <RouteShape>String</RouteShape>
    <Rule>
      <AcceptedUtc>0001-01-01T00:00:00</AcceptedUtc>
      <CancelFee>0</CancelFee>
      <FinalPriceAfterCount>false</FinalPriceAfterCount>
      <MissedAutoRebook>false</MissedAutoRebook>
      <MissedFee>0</MissedFee>
      <MissedRequireContact>false</MissedRequireContact>
      <MissedRequirePhoto>false</MissedRequirePhoto>
      <MissedWaitMin>0</MissedWaitMin>
      <PayPlanName>String</PayPlanName>
      <PayTiming>String</PayTiming>
      <PerCancel>0</PerCancel>
      <PerMissed>0</PerMissed>
      <PerPickup>0</PerPickup>
      <PerStop>0</PerStop>
      <PingSecs>0</PingSecs>
      <Proof xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringstring>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>String</d4p1:Value>
        </d4p1:KeyValueOfstringstring>
      </Proof>
    </Rule>
    <RunCode>String</RunCode>
    <Scans>
      <CourierScanView>
        <AtUtc>0001-01-01T00:00:00</AtUtc>
        <Result>String</Result>
        <Stage>String</Stage>
        <TagCode>String</TagCode>
      </CourierScanView>
    </Scans>
    <ServiceLevelCode>String</ServiceLevelCode>
    <Source>String</Source>
    <Stage>String</Stage>
    <StepLabel>String</StepLabel>
    <StopSequence>0</StopSequence>
    <TipAmount>0</TipAmount>
    <Unit>String</Unit>
    <UnitMany>String</UnitMany>
    <UnitOne>String</UnitOne>
    <Units>0</Units>
    <UnitsFound>0</UnitsFound>
    <WindowEndUtc>0001-01-01T00:00:00</WindowEndUtc>
    <WindowStartUtc>0001-01-01T00:00:00</WindowStartUtc>
    <WindowText>String</WindowText>
    <Zip>String</Zip>
    <Zone>String</Zone>
  </Order>
  <Orders>
    <CourierOrderView>
      <Address>String</Address>
      <ArrivedUtc>0001-01-01T00:00:00</ArrivedUtc>
      <AuthorizedAmount>0</AuthorizedAmount>
      <CancelFeeApplied>0</CancelFeeApplied>
      <CancelReason>String</CancelReason>
      <CancelledBy>String</CancelledBy>
      <CancelledUtc>0001-01-01T00:00:00</CancelledUtc>
      <CandidateCode>String</CandidateCode>
      <CaptureMode>String</CaptureMode>
      <CapturedAmount>0</CapturedAmount>
      <ChargeError>String</ChargeError>
      <City>String</City>
      <Code>String</Code>
      <CourierFacilityId>0</CourierFacilityId>
      <CourierProfileId>0</CourierProfileId>
      <CourierRunId>0</CourierRunId>
      <CourierStep>String</CourierStep>
      <CreatedAt>0001-01-01T00:00:00</CreatedAt>
      <CustomerName>String</CustomerName>
      <CustomerPhone>String</CustomerPhone>
      <DamageNote>String</DamageNote>
      <DeliveredToName>String</DeliveredToName>
      <DeliveredUtc>0001-01-01T00:00:00</DeliveredUtc>
      <DispatchOdRequestID>0</DispatchOdRequestID>
      <DriverCode>String</DriverCode>
      <DriverContactId>0</DriverContactId>
      <DriverName>String</DriverName>
      <DropoffAddress>String</DropoffAddress>
      <DropoffCity>String</DropoffCity>
      <DropoffContactName>String</DropoffContactName>
      <DropoffUnit>String</DropoffUnit>
      <DropoffZip>String</DropoffZip>
      <DueText>String</DueText>
      <DueUtc>0001-01-01T00:00:00</DueUtc>
      <Events>
        <CourierEventView>
          <AtUtc>0001-01-01T00:00:00</AtUtc>
          <Body>String</Body>
          <Kind>String</Kind>
          <Party>String</Party>
        </CourierEventView>
      </Events>
      <FacilityName>String</FacilityName>
      <Fare>0</Fare>
      <FinalPrice>0</FinalPrice>
      <GateCode>String</GateCode>
      <Handoff>String</Handoff>
      <HeldReason>String</HeldReason>
      <HeldUtc>0001-01-01T00:00:00</HeldUtc>
      <Instructions>String</Instructions>
      <IntakeUtc>0001-01-01T00:00:00</IntakeUtc>
      <IsAsap>false</IsAsap>
      <IsClosed>false</IsClosed>
      <Items>
        <CourierItemView>
          <CourierItemID>0</CourierItemID>
          <Custody>String</Custody>
          <DispatchOdRequestID>0</DispatchOdRequestID>
          <IsManual>false</IsManual>
          <IsMissing>false</IsMissing>
          <IsOpen>false</IsOpen>
          <MissingReason>String</MissingReason>
          <ReTagFlag>false</ReTagFlag>
          <Scanned>false</Scanned>
          <Seq>0</Seq>
          <TagCode>String</TagCode>
        </CourierItemView>
      </Items>
      <LevelName>String</LevelName>
      <Miles>0</Miles>
      <MissedFeeApplied>0</MissedFeeApplied>
      <MissedUtc>0001-01-01T00:00:00</MissedUtc>
      <OutForDeliveryUtc>0001-01-01T00:00:00</OutForDeliveryUtc>
      <PayLines>
        <CourierPayLineView>
          <Amount>0</Amount>
          <DispatchLoadID>0</DispatchLoadID>
          <Kind>String</Kind>
          <Label>String</Label>
          <Qty>0</Qty>
          <Rate>0</Rate>
        </CourierPayLineView>
      </PayLines>
      <PayMode>String</PayMode>
      <Photos>
        <CourierPhotoView>
          <FileName>String</FileName>
          <Kind>String</Kind>
          <PhotoId>0</PhotoId>
          <TakenUtc>0001-01-01T00:00:00</TakenUtc>
          <Url>String</Url>
        </CourierPhotoView>
      </Photos>
      <PickedUpUtc>0001-01-01T00:00:00</PickedUpUtc>
      <PickupContactName>String</PickupContactName>
      <PickupLoadId>0</PickupLoadId>
      <PingAfterUtc>0001-01-01T00:00:00</PingAfterUtc>
      <PingExpiresUtc>0001-01-01T00:00:00</PingExpiresUtc>
      <ProfileName>String</ProfileName>
      <Proof>
        <CourierProofResultView>
          <AtUtc>0001-01-01T00:00:00</AtUtc>
          <Stage>String</Stage>
          <StepKey>String</StepKey>
          <Value>String</Value>
        </CourierProofResultView>
      </Proof>
      <QueueSequence>0</QueueSequence>
      <ReadyUtc>0001-01-01T00:00:00</ReadyUtc>
      <RebookOfId>0</RebookOfId>
      <RecurrenceId>0</RecurrenceId>
      <RefundedAmount>0</RefundedAmount>
      <RouteShape>String</RouteShape>
      <Rule>
        <AcceptedUtc>0001-01-01T00:00:00</AcceptedUtc>
        <CancelFee>0</CancelFee>
        <FinalPriceAfterCount>false</FinalPriceAfterCount>
        <MissedAutoRebook>false</MissedAutoRebook>
        <MissedFee>0</MissedFee>
        <MissedRequireContact>false</MissedRequireContact>
        <MissedRequirePhoto>false</MissedRequirePhoto>
        <MissedWaitMin>0</MissedWaitMin>
        <PayPlanName>String</PayPlanName>
        <PayTiming>String</PayTiming>
        <PerCancel>0</PerCancel>
        <PerMissed>0</PerMissed>
        <PerPickup>0</PerPickup>
        <PerStop>0</PerStop>
        <PingSecs>0</PingSecs>
        <Proof xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </Proof>
      </Rule>
      <RunCode>String</RunCode>
      <Scans>
        <CourierScanView>
          <AtUtc>0001-01-01T00:00:00</AtUtc>
          <Result>String</Result>
          <Stage>String</Stage>
          <TagCode>String</TagCode>
        </CourierScanView>
      </Scans>
      <ServiceLevelCode>String</ServiceLevelCode>
      <Source>String</Source>
      <Stage>String</Stage>
      <StepLabel>String</StepLabel>
      <StopSequence>0</StopSequence>
      <TipAmount>0</TipAmount>
      <Unit>String</Unit>
      <UnitMany>String</UnitMany>
      <UnitOne>String</UnitOne>
      <Units>0</Units>
      <UnitsFound>0</UnitsFound>
      <WindowEndUtc>0001-01-01T00:00:00</WindowEndUtc>
      <WindowStartUtc>0001-01-01T00:00:00</WindowStartUtc>
      <WindowText>String</WindowText>
      <Zip>String</Zip>
      <Zone>String</Zone>
    </CourierOrderView>
  </Orders>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
</CourierOrderResponse>