| GET,OPTIONS | /v1/dispatch/courier/held-pings |
|---|
import Foundation
import ServiceStack
public class CourierHeldPingsRequest : Codable
{
required public init(){}
}
public class CourierOrderResponse : Codable
{
public var orders:[CourierOrderView] = []
public var order:CourierOrderView
public var message:String
public var responseStatus:ResponseStatus
required public init(){}
}
public class CourierOrderView : Codable
{
public var dispatchOdRequestID:Int
public var code:String
public var courierProfileId:Int
public var profileName:String
public var routeShape:String
public var unitOne:String
public var unitMany:String
public var courierFacilityId:Int?
public var facilityName:String
public var serviceLevelCode:String
public var levelName:String
public var source:String
public var address:String
public var unit:String
public var city:String
public var zip:String
public var zone:String
public var pickupContactName:String
public var dropoffAddress:String
public var dropoffUnit:String
public var dropoffCity:String
public var dropoffZip:String
public var dropoffContactName:String
public var miles:Double?
public var units:Int
public var unitsFound:Int?
public var stage:String
public var courierStep:String
public var stepLabel:String
public var driverCode:String
public var driverName:String
public var driverContactId:Int?
public var courierRunId:Int?
public var runCode:String
public var stopSequence:Int?
public var queueSequence:Int?
public var isAsap:Bool
public var windowStartUtc:Date?
public var windowEndUtc:Date?
public var windowText:String
public var dueUtc:Date?
public var dueText:String
public var pingAfterUtc:Date?
public var pingExpiresUtc:Date?
public var candidateCode:String
public var heldReason:String
public var heldUtc:Date?
public var customerName:String
public var customerPhone:String
public var handoff:String
public var gateCode:String
public var instructions:String
public var damageNote:String
public var deliveredToName:String
public var payMode:String
public var fare:Double?
public var finalPrice:Double?
public var tipAmount:Double?
public var cancelledBy:String
public var cancelReason:String
public var cancelFeeApplied:Double?
public var missedFeeApplied:Double?
public var captureMode:String
public var authorizedAmount:Double?
public var capturedAmount:Double?
public var refundedAmount:Double
public var chargeError:String
public var createdAt:Date?
public var arrivedUtc:Date?
public var pickedUpUtc:Date?
public var intakeUtc:Date?
public var readyUtc:Date?
public var outForDeliveryUtc:Date?
public var deliveredUtc:Date?
public var missedUtc:Date?
public var cancelledUtc:Date?
public var isClosed:Bool
public var rebookOfId:Int?
public var recurrenceId:Int?
public var pickupLoadId:Int?
public var rule:CourierOrderRuleView
public var items:[CourierItemView] = []
public var scans:[CourierScanView] = []
public var proof:[CourierProofResultView] = []
public var events:[CourierEventView] = []
public var photos:[CourierPhotoView] = []
public var payLines:[CourierPayLineView] = []
required public init(){}
}
public class CourierOrderRuleView : Codable
{
public var pingSecs:Int
public var missedWaitMin:Int
public var missedFee:Double
public var cancelFee:Double
public var missedAutoRebook:Bool
public var missedRequireContact:Bool
public var missedRequirePhoto:Bool
public var payTiming:String
public var finalPriceAfterCount:Bool
public var payPlanName:String
public var perPickup:Double
public var perStop:Double
public var perMissed:Double
public var perCancel:Double
public var acceptedUtc:Date?
public var proof:[String:String] = [:]
required public init(){}
}
public class CourierItemView : Codable
{
public var courierItemID:Int
public var dispatchOdRequestID:Int
public var seq:Int
public var tagCode:String
public var custody:String
public var isOpen:Bool
public var isMissing:Bool
public var missingReason:String
public var isManual:Bool
public var reTagFlag:Bool
public var scanned:Bool
required public init(){}
}
public class CourierScanView : Codable
{
public var tagCode:String
public var stage:String
public var result:String
public var atUtc:Date
required public init(){}
}
public class CourierProofResultView : Codable
{
public var stage:String
public var stepKey:String
public var value:String
public var atUtc:Date
required public init(){}
}
public class CourierEventView : Codable
{
public var kind:String
public var party:String
public var body:String
public var atUtc:Date
required public init(){}
}
public class CourierPhotoView : Codable
{
public var photoId:Int
public var kind:String
public var fileName:String
public var url:String
public var takenUtc:Date?
required public init(){}
}
public class CourierPayLineView : Codable
{
public var dispatchLoadID:Int
public var kind:String
public var label:String
public var qty:Double?
public var rate:Double?
public var amount:Double
required public init(){}
}
Swift CourierHeldPingsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/dispatch/courier/held-pings HTTP/1.1 Host: api.dev.dynamics.trendsic.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Orders:
[
{
DispatchOdRequestID: 0,
Code: String,
CourierProfileId: 0,
ProfileName: String,
RouteShape: String,
UnitOne: String,
UnitMany: String,
CourierFacilityId: 0,
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: String,
Miles: 0,
Units: 0,
UnitsFound: 0,
Stage: String,
CourierStep: String,
StepLabel: String,
DriverCode: String,
DriverName: String,
DriverContactId: 0,
CourierRunId: 0,
RunCode: String,
StopSequence: 0,
QueueSequence: 0,
IsAsap: False,
WindowStartUtc: 0001-01-01,
WindowEndUtc: 0001-01-01,
WindowText: String,
DueUtc: 0001-01-01,
DueText: String,
PingAfterUtc: 0001-01-01,
PingExpiresUtc: 0001-01-01,
CandidateCode: String,
HeldReason: String,
HeldUtc: 0001-01-01,
CustomerName: String,
CustomerPhone: String,
Handoff: String,
GateCode: String,
Instructions: String,
DamageNote: String,
DeliveredToName: String,
PayMode: String,
Fare: 0,
FinalPrice: 0,
TipAmount: 0,
CancelledBy: String,
CancelReason: String,
CancelFeeApplied: 0,
MissedFeeApplied: 0,
CaptureMode: String,
AuthorizedAmount: 0,
CapturedAmount: 0,
RefundedAmount: 0,
ChargeError: String,
CreatedAt: 0001-01-01,
ArrivedUtc: 0001-01-01,
PickedUpUtc: 0001-01-01,
IntakeUtc: 0001-01-01,
ReadyUtc: 0001-01-01,
OutForDeliveryUtc: 0001-01-01,
DeliveredUtc: 0001-01-01,
MissedUtc: 0001-01-01,
CancelledUtc: 0001-01-01,
IsClosed: False,
RebookOfId: 0,
RecurrenceId: 0,
PickupLoadId: 0,
Rule:
{
PingSecs: 0,
MissedWaitMin: 0,
MissedFee: 0,
CancelFee: 0,
MissedAutoRebook: False,
MissedRequireContact: False,
MissedRequirePhoto: False,
PayTiming: String,
FinalPriceAfterCount: False,
PayPlanName: String,
PerPickup: 0,
PerStop: 0,
PerMissed: 0,
PerCancel: 0,
AcceptedUtc: 0001-01-01,
Proof:
{
String: String
}
},
Items:
[
{
CourierItemID: 0,
DispatchOdRequestID: 0,
Seq: 0,
TagCode: String,
Custody: String,
IsOpen: False,
IsMissing: False,
MissingReason: String,
IsManual: False,
ReTagFlag: False,
Scanned: False
}
],
Scans:
[
{
TagCode: String,
Stage: String,
Result: String,
AtUtc: 0001-01-01
}
],
Proof:
[
{
Stage: String,
StepKey: String,
Value: String,
AtUtc: 0001-01-01
}
],
Events:
[
{
Kind: String,
Party: String,
Body: String,
AtUtc: 0001-01-01
}
],
Photos:
[
{
PhotoId: 0,
Kind: String,
FileName: String,
Url: String,
TakenUtc: 0001-01-01
}
],
PayLines:
[
{
DispatchLoadID: 0,
Kind: String,
Label: String,
Qty: 0,
Rate: 0,
Amount: 0
}
]
}
],
Order:
{
DispatchOdRequestID: 0,
Code: String,
CourierProfileId: 0,
ProfileName: String,
RouteShape: String,
UnitOne: String,
UnitMany: String,
CourierFacilityId: 0,
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: String,
Miles: 0,
Units: 0,
UnitsFound: 0,
Stage: String,
CourierStep: String,
StepLabel: String,
DriverCode: String,
DriverName: String,
DriverContactId: 0,
CourierRunId: 0,
RunCode: String,
StopSequence: 0,
QueueSequence: 0,
IsAsap: False,
WindowStartUtc: 0001-01-01,
WindowEndUtc: 0001-01-01,
WindowText: String,
DueUtc: 0001-01-01,
DueText: String,
PingAfterUtc: 0001-01-01,
PingExpiresUtc: 0001-01-01,
CandidateCode: String,
HeldReason: String,
HeldUtc: 0001-01-01,
CustomerName: String,
CustomerPhone: String,
Handoff: String,
GateCode: String,
Instructions: String,
DamageNote: String,
DeliveredToName: String,
PayMode: String,
Fare: 0,
FinalPrice: 0,
TipAmount: 0,
CancelledBy: String,
CancelReason: String,
CancelFeeApplied: 0,
MissedFeeApplied: 0,
CaptureMode: String,
AuthorizedAmount: 0,
CapturedAmount: 0,
RefundedAmount: 0,
ChargeError: String,
CreatedAt: 0001-01-01,
ArrivedUtc: 0001-01-01,
PickedUpUtc: 0001-01-01,
IntakeUtc: 0001-01-01,
ReadyUtc: 0001-01-01,
OutForDeliveryUtc: 0001-01-01,
DeliveredUtc: 0001-01-01,
MissedUtc: 0001-01-01,
CancelledUtc: 0001-01-01,
IsClosed: False,
RebookOfId: 0,
RecurrenceId: 0,
PickupLoadId: 0,
Rule:
{
PingSecs: 0,
MissedWaitMin: 0,
MissedFee: 0,
CancelFee: 0,
MissedAutoRebook: False,
MissedRequireContact: False,
MissedRequirePhoto: False,
PayTiming: String,
FinalPriceAfterCount: False,
PayPlanName: String,
PerPickup: 0,
PerStop: 0,
PerMissed: 0,
PerCancel: 0,
AcceptedUtc: 0001-01-01,
Proof:
{
String: String
}
},
Items:
[
{
CourierItemID: 0,
DispatchOdRequestID: 0,
Seq: 0,
TagCode: String,
Custody: String,
IsOpen: False,
IsMissing: False,
MissingReason: String,
IsManual: False,
ReTagFlag: False,
Scanned: False
}
],
Scans:
[
{
TagCode: String,
Stage: String,
Result: String,
AtUtc: 0001-01-01
}
],
Proof:
[
{
Stage: String,
StepKey: String,
Value: String,
AtUtc: 0001-01-01
}
],
Events:
[
{
Kind: String,
Party: String,
Body: String,
AtUtc: 0001-01-01
}
],
Photos:
[
{
PhotoId: 0,
Kind: String,
FileName: String,
Url: String,
TakenUtc: 0001-01-01
}
],
PayLines:
[
{
DispatchLoadID: 0,
Kind: String,
Label: String,
Qty: 0,
Rate: 0,
Amount: 0
}
]
},
Message: String,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}