| POST,OPTIONS | /v1/worker/dispatch/od/{Code}/deliver |
|---|
import Foundation
import ServiceStack
public class CourierDeliverRequest : Codable
{
public var code:String
public var proof:CourierDeliveryProof
required public init(){}
}
public class CourierDeliveryProof : Codable
{
public var handToName:String
public var signature:String
public var codeOk:Bool
public var idOk:Bool
public var tempF:Double?
public var seal:String
public var collected:Double?
required public init(){}
}
public class CourierDriverResponse : Codable
{
public var courier:CourierDriverView
public var result:String
public var detail:String
public var message:String
public var responseStatus:ResponseStatus
required public init(){}
}
public class CourierDriverView : Codable
{
public var driverCode:String
public var name:String
public var online:Bool
public var onRoster:Bool
public var van:CourierVanView
public var current:CourierDriverOrder
public var queue:[CourierDriverOrder] = []
public var aboard:[CourierDriverOrder] = []
public var runs:[CourierRunView] = []
public var upNext:CourierDriverOrder
required public init(){}
}
public class CourierVanView : Codable
{
public var state:String
public var leaveByUtc:Date?
public var leaveByText:String
public var slackMin:Int?
public var inVan:Int
public var committed:Int
public var cap:Double?
public var capUnit:String
public var vehicleUnit:String
public var criticalCode:String
public var driveMin:Int
public var facilityName:String
public var sendNote:String
required public init(){}
}
public class CourierDriverOrder : Codable
{
public var code:String
public var courierStep:String
public var routeShape:String
public var profileName:String
public var unitOne:String
public var unitMany:String
public var facilityNoun:String
public var facilityName:String
public var levelName:String
public var dueUtc:Date?
public var dueText:String
public var units:Int
public var unitsFound:Int?
public var area:String
public var minutes:Int?
public var address:String
public var unit:String
public var city:String
public var lat:Double?
public var lng:Double?
public var customerName:String
public var customerPhone:String
public var handoff:String
public var gateCode:String
public var instructions:String
public var dropoffAddress:String
public var dropoffContactName:String
public var dropLat:Double?
public var dropLng:Double?
public var arrivedUtc:Date?
public var tags:[CourierItemView] = []
public var proof:[String:String] = [:]
public var photos:[String:Int] = [:]
public var needs:[String] = []
public var missedWaitMin:Int
public var missedRequireContact:Bool
public var missedRequirePhoto:Bool
public var missedFee:Double
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 CourierRunView : Codable
{
public var courierRunID:Int
public var code:String
public var status:String
public var courierProfileId:Int
public var profileName:String
public var courierFacilityId:Int
public var facilityName:String
public var facilityAddress:String
public var driverContactId:Int?
public var driverName:String
public var equipmentID:Int?
public var vehicleUnit:String
public var unitOne:String
public var unitMany:String
public var units:Int
public var stopCount:Int
public var stopsDone:Int
public var pay:Double?
public var builtUtc:Date?
public var startedUtc:Date?
public var completedUtc:Date?
public var toLoad:Int
public var toReturn:Int
public var stops:[CourierStopView] = []
required public init(){}
}
public class CourierStopView : Codable
{
public var sequence:Int
public var status:String
public var dispatchOdRequestID:Int
public var code:String
public var courierStep:String
public var address:String
public var unit:String
public var city:String
public var zip:String
public var lat:Double?
public var lng:Double?
public var customerName:String
public var customerPhone:String
public var handoff:String
public var gateCode:String
public var instructions:String
public var units:Int
public var dueText:String
public var note:String
public var needs:[String] = []
public var items:[CourierItemView] = []
required public init(){}
}
Swift CourierDeliverRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/worker/dispatch/od/{Code}/deliver HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Code":"String","Proof":{"HandToName":"String","Signature":"String","CodeOk":false,"IdOk":false,"TempF":0,"Seal":"String","Collected":0}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"Courier":{"DriverCode":"String","Name":"String","Online":false,"OnRoster":false,"Van":{"State":"String","LeaveByUtc":"0001-01-01T00:00:00.0000000","LeaveByText":"String","SlackMin":0,"InVan":0,"Committed":0,"Cap":0,"CapUnit":"String","VehicleUnit":"String","CriticalCode":"String","DriveMin":0,"FacilityName":"String","SendNote":"String"},"Current":{"Code":"String","CourierStep":"String","RouteShape":"String","ProfileName":"String","UnitOne":"String","UnitMany":"String","FacilityNoun":"String","FacilityName":"String","LevelName":"String","DueUtc":"0001-01-01T00:00:00.0000000","DueText":"String","Units":0,"UnitsFound":0,"Area":"String","Minutes":0,"Address":"String","Unit":"String","City":"String","Lat":0,"Lng":0,"CustomerName":"String","CustomerPhone":"String","Handoff":"String","GateCode":"String","Instructions":"String","DropoffAddress":"String","DropoffContactName":"String","DropLat":0,"DropLng":0,"ArrivedUtc":"0001-01-01T00:00:00.0000000","Tags":[{"CourierItemID":0,"DispatchOdRequestID":0,"Seq":0,"TagCode":"String","Custody":"String","IsOpen":false,"IsMissing":false,"MissingReason":"String","IsManual":false,"ReTagFlag":false,"Scanned":false}],"Proof":{"String":"String"},"Photos":{"String":0},"Needs":["String"],"MissedWaitMin":0,"MissedRequireContact":false,"MissedRequirePhoto":false,"MissedFee":0},"Queue":[{"Code":"String","CourierStep":"String","RouteShape":"String","ProfileName":"String","UnitOne":"String","UnitMany":"String","FacilityNoun":"String","FacilityName":"String","LevelName":"String","DueUtc":"0001-01-01T00:00:00.0000000","DueText":"String","Units":0,"UnitsFound":0,"Area":"String","Minutes":0,"Address":"String","Unit":"String","City":"String","Lat":0,"Lng":0,"CustomerName":"String","CustomerPhone":"String","Handoff":"String","GateCode":"String","Instructions":"String","DropoffAddress":"String","DropoffContactName":"String","DropLat":0,"DropLng":0,"ArrivedUtc":"0001-01-01T00:00:00.0000000","Tags":[{"CourierItemID":0,"DispatchOdRequestID":0,"Seq":0,"TagCode":"String","Custody":"String","IsOpen":false,"IsMissing":false,"MissingReason":"String","IsManual":false,"ReTagFlag":false,"Scanned":false}],"Proof":{"String":"String"},"Photos":{"String":0},"Needs":["String"],"MissedWaitMin":0,"MissedRequireContact":false,"MissedRequirePhoto":false,"MissedFee":0}],"Aboard":[{"Code":"String","CourierStep":"String","RouteShape":"String","ProfileName":"String","UnitOne":"String","UnitMany":"String","FacilityNoun":"String","FacilityName":"String","LevelName":"String","DueUtc":"0001-01-01T00:00:00.0000000","DueText":"String","Units":0,"UnitsFound":0,"Area":"String","Minutes":0,"Address":"String","Unit":"String","City":"String","Lat":0,"Lng":0,"CustomerName":"String","CustomerPhone":"String","Handoff":"String","GateCode":"String","Instructions":"String","DropoffAddress":"String","DropoffContactName":"String","DropLat":0,"DropLng":0,"ArrivedUtc":"0001-01-01T00:00:00.0000000","Tags":[{"CourierItemID":0,"DispatchOdRequestID":0,"Seq":0,"TagCode":"String","Custody":"String","IsOpen":false,"IsMissing":false,"MissingReason":"String","IsManual":false,"ReTagFlag":false,"Scanned":false}],"Proof":{"String":"String"},"Photos":{"String":0},"Needs":["String"],"MissedWaitMin":0,"MissedRequireContact":false,"MissedRequirePhoto":false,"MissedFee":0}],"Runs":[{"CourierRunID":0,"Code":"String","Status":"String","CourierProfileId":0,"ProfileName":"String","CourierFacilityId":0,"FacilityName":"String","FacilityAddress":"String","DriverContactId":0,"DriverName":"String","EquipmentID":0,"VehicleUnit":"String","UnitOne":"String","UnitMany":"String","Units":0,"StopCount":0,"StopsDone":0,"Pay":0,"BuiltUtc":"0001-01-01T00:00:00.0000000","StartedUtc":"0001-01-01T00:00:00.0000000","CompletedUtc":"0001-01-01T00:00:00.0000000","ToLoad":0,"ToReturn":0,"Stops":[{"Sequence":0,"Status":"String","DispatchOdRequestID":0,"Code":"String","CourierStep":"String","Address":"String","Unit":"String","City":"String","Zip":"String","Lat":0,"Lng":0,"CustomerName":"String","CustomerPhone":"String","Handoff":"String","GateCode":"String","Instructions":"String","Units":0,"DueText":"String","Note":"String","Needs":["String"],"Items":[{"CourierItemID":0,"DispatchOdRequestID":0,"Seq":0,"TagCode":"String","Custody":"String","IsOpen":false,"IsMissing":false,"MissingReason":"String","IsManual":false,"ReTagFlag":false,"Scanned":false}]}]}],"UpNext":{"Code":"String","CourierStep":"String","RouteShape":"String","ProfileName":"String","UnitOne":"String","UnitMany":"String","FacilityNoun":"String","FacilityName":"String","LevelName":"String","DueUtc":"0001-01-01T00:00:00.0000000","DueText":"String","Units":0,"UnitsFound":0,"Area":"String","Minutes":0,"Address":"String","Unit":"String","City":"String","Lat":0,"Lng":0,"CustomerName":"String","CustomerPhone":"String","Handoff":"String","GateCode":"String","Instructions":"String","DropoffAddress":"String","DropoffContactName":"String","DropLat":0,"DropLng":0,"ArrivedUtc":"0001-01-01T00:00:00.0000000","Tags":[{"CourierItemID":0,"DispatchOdRequestID":0,"Seq":0,"TagCode":"String","Custody":"String","IsOpen":false,"IsMissing":false,"MissingReason":"String","IsManual":false,"ReTagFlag":false,"Scanned":false}],"Proof":{"String":"String"},"Photos":{"String":0},"Needs":["String"],"MissedWaitMin":0,"MissedRequireContact":false,"MissedRequirePhoto":false,"MissedFee":0}},"Result":"String","Detail":"String","Message":"String","ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}