| POST,OPTIONS | /v1/dispatch/track/{Token}/reschedule |
|---|
import Foundation
import ServiceStack
public class CourierTrackRescheduleRequest : CourierTrackActRequest
{
public var slotId:String
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case slotId
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
slotId = try container.decodeIfPresent(String.self, forKey: .slotId)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if slotId != nil { try container.encode(slotId, forKey: .slotId) }
}
}
public class CourierTrackActRequest : Codable
{
public var token:String
public var actToken:String
required public init(){}
}
public class DispatchTrackResponse : Codable
{
public var kind:String
public var code:String
public var what:String
public var fromLoc:String
public var toLoc:String
public var bags:Int?
public var fare:Double?
public var payMode:String
public var cardLast4:String
public var charged:Bool
public var stage:String
public var headline:String
public var sub:String
public var isClosed:Bool
public var eta:String
public var driverName:String
public var customerName:String
public var steps:[DispatchTrackStepView] = []
public var expired:Bool
public var invalid:Bool
public var business:CourierTrackBusiness
public var courier:CourierTrackView
public var notice:String
public var responseStatus:ResponseStatus
required public init(){}
}
public class DispatchTrackStepView : Codable
{
public var name:String
public var at:Date?
public var done:Bool
public var current:Bool
required public init(){}
}
public class CourierTrackBusiness : Codable
{
public var name:String
public var phone:String
required public init(){}
}
public class CourierTrackView : Codable
{
public var state:String
public var code:String
public var runCode:String
public var shape:String
public var template:String
public var courierStep:String
public var unitOne:String
public var unitMany:String
public var unitOneEs:String
public var unitManyEs:String
public var facilityNoun:String
public var facilityNounEs:String
public var units:Int
public var unitsCounted:Bool
public var address:String
public var dropoffAddress:String
public var dropoffName:String
public var instructions:String
public var gateCode:String
public var handoff:String
public var levelName:String
public var readyPromise:String
public var windowText:String
public var isAsap:Bool
public var times:[String:String] = [:]
public var stopPosition:Int?
public var stopCount:Int?
public var deliveryWindowText:String
public var driver:CourierTrackDriver
public var proof:CourierTrackProof
public var handoffCode:String
public var rating:CourierTrackRating
public var tipAllowed:Bool
public var tipsPct:Double
public var missed:CourierTrackMissed
public var cancelFee:Double
public var cancelFeeCharged:Double
public var cancelledBy:String
public var bookUrl:String
public var can:CourierTrackCan
public var deliverySlots:[CourierTrackSlot] = []
public var messages:[CourierTrackMessage] = []
public var messagesOpen:Bool
public var caseCode:String
public var caseStatus:String
public var caseReply:String
public var threadHrs:Int
public var expiresUtc:Date?
public var liveEta:Bool
public var live:Bool
public var serverUtc:Date
required public init(){}
}
public class CourierTrackDriver : Codable
{
public var firstName:String
public var initial:String
public var vehicle:String
public var plate:String
public var etaMin:Int?
public var etaPct:Int?
required public init(){}
}
public class CourierTrackProof : Codable
{
public var kind:String
public var photoUrl:String
public var atText:String
public var gpsOk:Bool
public var units:Int
public var damageNote:String
public var deliveredTo:String
public var waitedMin:Int
public var attempts:Int
public var contactedText:String
public var eachTagged:Bool
public var eachScanned:Bool
required public init(){}
}
public class CourierTrackRating : Codable
{
public var stars:Int
public var tags:String
public var tip:Double
public var tipStatus:String
required public init(){}
}
public class CourierTrackMissed : Codable
{
public var code:String
public var fee:Double
public var waitedMin:Int
public var autoRebook:Bool
public var rebookWindowText:String
public var slots:[CourierTrackSlot] = []
required public init(){}
}
public class CourierTrackSlot : Codable
{
public var id:String
public var day:String
public var dayEs:String
public var win:String
required public init(){}
}
public class CourierTrackCan : Codable
{
public var editInstructions:Bool
public var changeUnits:Bool
public var cancel:Bool
public var rescheduleDelivery:Bool
public var rebook:Bool
public var rate:Bool
public var message:Bool
public var report:Bool
public var maxUnits:Int
required public init(){}
}
public class CourierTrackMessage : Codable
{
public var who:String
public var mine:Bool
public var office:Bool
public var atText:String
public var body:String
required public init(){}
}
Swift CourierTrackRescheduleRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/dispatch/track/{Token}/reschedule HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"SlotId":"String","Token":"String","ActToken":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"Kind":"String","Code":"String","What":"String","FromLoc":"String","ToLoc":"String","Bags":0,"Fare":0,"PayMode":"String","CardLast4":"String","Charged":false,"Stage":"String","Headline":"String","Sub":"String","IsClosed":false,"Eta":"String","DriverName":"String","CustomerName":"String","Steps":[{"Name":"String","At":"0001-01-01T00:00:00.0000000","Done":false,"Current":false}],"Expired":false,"Invalid":false,"Business":{"Name":"String","Phone":"String"},"Courier":{"State":"String","Code":"String","RunCode":"String","Shape":"String","Template":"String","CourierStep":"String","UnitOne":"String","UnitMany":"String","UnitOneEs":"String","UnitManyEs":"String","FacilityNoun":"String","FacilityNounEs":"String","Units":0,"UnitsCounted":false,"Address":"String","DropoffAddress":"String","DropoffName":"String","Instructions":"String","GateCode":"String","Handoff":"String","LevelName":"String","ReadyPromise":"String","WindowText":"String","IsAsap":false,"Times":{"String":"String"},"StopPosition":0,"StopCount":0,"DeliveryWindowText":"String","Driver":{"FirstName":"String","Initial":"String","Vehicle":"String","Plate":"String","EtaMin":0,"EtaPct":0},"Proof":{"Kind":"String","PhotoUrl":"String","AtText":"String","GpsOk":false,"Units":0,"DamageNote":"String","DeliveredTo":"String","WaitedMin":0,"Attempts":0,"ContactedText":"String","EachTagged":false,"EachScanned":false},"HandoffCode":"String","Rating":{"Stars":0,"Tags":"String","Tip":0,"TipStatus":"String"},"TipAllowed":false,"TipsPct":0,"Missed":{"Code":"String","Fee":0,"WaitedMin":0,"AutoRebook":false,"RebookWindowText":"String","Slots":[{"Id":"String","Day":"String","DayEs":"String","Win":"String"}]},"CancelFee":0,"CancelFeeCharged":0,"CancelledBy":"String","BookUrl":"String","Can":{"EditInstructions":false,"ChangeUnits":false,"Cancel":false,"RescheduleDelivery":false,"Rebook":false,"Rate":false,"Message":false,"Report":false,"MaxUnits":0},"DeliverySlots":[{"Id":"String","Day":"String","DayEs":"String","Win":"String"}],"Messages":[{"Who":"String","Mine":false,"Office":false,"AtText":"String","Body":"String"}],"MessagesOpen":false,"CaseCode":"String","CaseStatus":"String","CaseReply":"String","ThreadHrs":0,"ExpiresUtc":"0001-01-01T00:00:00.0000000","LiveEta":false,"Live":false,"ServerUtc":"0001-01-01T00:00:00.0000000"},"Notice":"String","ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}