| PUT,OPTIONS | /v1/dispatch/autopilot |
|---|
import Foundation
import ServiceStack
public class DispatchAutopilotRequest : Codable
{
public var isOn:Bool?
public var ruleSlot:Bool?
public var ruleRoute:Bool?
public var ruleRelease:Bool?
public var ruleTract:Bool?
public var ruleThrottle:Bool?
public var ruleOffline:Bool?
public var thStaged:Int?
public var thWait:Int?
public var thBand:Int?
public var thStall:Int?
public var thFeed:Int?
public var note:String
public var atMin:Int
required public init(){}
}
public class DispatchActionResponse : Codable
{
public var board:DispatchBoardView
public var message:String
public var sent:Int
public var failed:Int
public var ticketCode:String
public var ticketNet:Double
public var responseStatus:ResponseStatus
required public init(){}
}
public class DispatchBoardView : Codable
{
public var pack:DispatchPackConfigView
public var config:DispatchHaulConfigView
public var offlineWindows:[DispatchOfflineWindowView] = []
public var suppliers:[DispatchSupplierView] = []
public var trucks:[DispatchTruckView] = []
public var slots:[DispatchSlotView] = []
public var tickets:[DispatchTicketView] = []
public var log:[DispatchLogView] = []
public var autopilot:DispatchAutopilotView
public var exceptions:[DispatchExceptionView] = []
public var feed:[DispatchFeedView] = []
public var rigs:[DispatchRigView] = []
public var jobs:[DispatchJobView] = []
public var odDrivers:[DispatchOdDriverView] = []
public var odRequests:[DispatchOdRequestView] = []
public var packs:[DispatchPackView] = []
public var packTerms:[DispatchPackTermView] = []
public var packUnits:[DispatchPackUnitView] = []
required public init(){}
}
public class DispatchPackConfigView : Codable
{
public var packId:String
public var hasQuotas:Bool
public var isInverted:Bool
public var loadLimitMins:Int
public var ticketSource:String
public var payBasis:String
public var dayBoundary:String
required public init(){}
}
public class DispatchHaulConfigView : Codable
{
public var queueMax:Int
public var dumpBays:Int
public var slotCap:Int
public var paused:Bool
public var feedRate:Int
required public init(){}
}
public class DispatchOfflineWindowView : Codable
{
public var offlineWindowId:Int
public var fromHour:String
public var toHour:String
required public init(){}
}
public class DispatchSupplierView : Codable
{
public var supplierId:Int
public var code:String
public var name:String
public var region:String
public var ownHauler:Bool
public var seasonAllotment:Double
public var delivered:Double
public var weekCap:Double
public var weekDelivered:Double
public var sortOrder:Int
public var sites:[DispatchSiteView] = []
required public init(){}
}
public class DispatchSiteView : Codable
{
public var siteId:Int
public var supplierId:Int
public var supplierCode:String
public var name:String
public var acres:Int
public var standingVolume:Double
public var sortOrder:Int
required public init(){}
}
public class DispatchTruckView : Codable
{
public var truckId:Int
public var code:String
public var driverName:String
public var phone:String
public var employerCode:String
public var supplierCode:String
public var siteName:String
public var estLoad:Double
public var stage:String
public var stageSince:Int
public var cycleStart:Int?
public var stageMinsAgo:Int
public var cycleMinsAgo:Int?
public var slot:String
public var loadsToday:Int
public var netToday:Double
public var lastPingMins:Int
public var cycleMins:String
public var isInteractive:Bool
public var nextSupplierCode:String
public var nextSiteName:String
required public init(){}
}
public class DispatchSlotView : Codable
{
public var slotId:Int
public var hour:String
public var baseBooked:Int
public var sortOrder:Int
required public init(){}
}
public class DispatchTicketView : Codable
{
public var ticketId:Int
public var code:String
public var truckCode:String
public var supplierCode:String
public var netQty:Double
public var ticketedAt:Date
public var ticketedMin:Int
public var source:String
public var minsAgo:Int
required public init(){}
}
public class DispatchLogView : Codable
{
public var logId:Int
public var loggedAt:Date
public var loggedMin:Int
public var logText:String
public var kind:String
public var minsAgo:Int
required public init(){}
}
public class DispatchAutopilotView : Codable
{
public var isOn:Bool
public var ruleSlot:Bool
public var ruleRoute:Bool
public var ruleRelease:Bool
public var ruleTract:Bool
public var ruleThrottle:Bool
public var ruleOffline:Bool
public var thStaged:Int
public var thWait:Int
public var thBand:Int
public var thStall:Int
public var thFeed:Int
required public init(){}
}
public class DispatchExceptionView : Codable
{
public var code:String
public var kind:String
public var severity:String
public var truckCode:String
public var supplierCode:String
public var raisedAt:Date
public var raisedLabel:String
public var minsAgo:Int
required public init(){}
}
public class DispatchFeedView : Codable
{
public var feedId:Int
public var entryAt:Date
public var entryLabel:String
public var channel:String
public var kind:String
public var truckCode:String
public var supplierCode:String
public var overrideText:String
public var minsAgo:Int
required public init(){}
}
public class DispatchRigView : Codable
{
public var rigId:Int
public var code:String
public var name:String
public var driverName:String
public var phone:String
public var rigType:String
public var isFree:Bool
public var matchRank:Int
required public init(){}
}
public class DispatchJobView : Codable
{
public var jobId:Int
public var code:String
public var cargo:String
public var customer:String
public var customerPhone:String
public var holdContact:String
public var holdPhone:String
public var fromLoc:String
public var toLoc:String
public var miles:Int
public var windowText:String
public var stage:String
public var rate:Double?
public var requiredRig:String
public var driverLabel:String
public var etaText:String
public var offerRigIds:String
public var offerExpiresMin:Int?
public var offerExpired:Bool
public var declined:Bool
required public init(){}
}
public class DispatchOdDriverView : Codable
{
public var driverId:Int
public var code:String
public var name:String
public var zone:String
public var phone:String
public var status:String
public var tier:String
public var distanceMi:Double
public var capabilities:String
required public init(){}
}
public class DispatchOdRequestView : Codable
{
public var requestId:Int
public var code:String
public var address:String
public var zone:String
public var bags:Int
public var stage:String
public var driverCode:String
public var needs:String
public var note:String
public var pingExpiresMin:Int?
public var triedCodes:String
public var candidateCodes:String
public var etaText:String
public var noDriver:String
required public init(){}
}
public class DispatchPackView : Codable
{
public var packId:String
public var hasQuotas:Bool
public var isInverted:Bool
public var loadLimitMins:Int
public var dayBoundary:String
public var ticketSource:String
public var payBasis:String
public var sortOrder:Int
required public init(){}
}
public class DispatchPackTermView : Codable
{
public var packId:String
public var lang:String
public var modeName:String
public var facility:String
public var facilityShort:String
public var sourceSite:String
public var supplier:String
public var supplierPlural:String
public var unloadVerb:String
public var ticketNoun:String
public var dayNoun:String
public var fleetLabel:String
public var pageSubtitle:String
public var seasonChip:String
public var campaignNoun:String
public var bayNoun:String
public var assignTarget:String
required public init(){}
}
public class DispatchPackUnitView : Codable
{
public var packId:String
public var unit:String
public var loadQty:Double
public var volumeLow:Int
public var volumeHigh:Int
public var seasonMultiple:Double
public var weeklyFraction:Double
required public init(){}
}
Swift DispatchAutopilotRequest 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.
PUT /v1/dispatch/autopilot HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
IsOn: False,
RuleSlot: False,
RuleRoute: False,
RuleRelease: False,
RuleTract: False,
RuleThrottle: False,
RuleOffline: False,
ThStaged: 0,
ThWait: 0,
ThBand: 0,
ThStall: 0,
ThFeed: 0,
Note: String,
AtMin: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Board:
{
Pack:
{
PackId: String,
HasQuotas: False,
IsInverted: False,
LoadLimitMins: 0,
TicketSource: String,
PayBasis: String,
DayBoundary: String
},
Config:
{
QueueMax: 0,
DumpBays: 0,
SlotCap: 0,
Paused: False,
FeedRate: 0
},
OfflineWindows:
[
{
OfflineWindowId: 0,
FromHour: String,
ToHour: String
}
],
Suppliers:
[
{
SupplierId: 0,
Code: String,
Name: String,
Region: String,
OwnHauler: False,
SeasonAllotment: 0,
Delivered: 0,
WeekCap: 0,
WeekDelivered: 0,
SortOrder: 0,
Sites:
[
{
SiteId: 0,
SupplierId: 0,
SupplierCode: String,
Name: String,
Acres: 0,
StandingVolume: 0,
SortOrder: 0
}
]
}
],
Trucks:
[
{
TruckId: 0,
Code: String,
DriverName: String,
Phone: String,
EmployerCode: String,
SupplierCode: String,
SiteName: String,
EstLoad: 0,
Stage: String,
StageSince: 0,
CycleStart: 0,
StageMinsAgo: 0,
CycleMinsAgo: 0,
Slot: String,
LoadsToday: 0,
NetToday: 0,
LastPingMins: 0,
CycleMins: String,
IsInteractive: False,
NextSupplierCode: String,
NextSiteName: String
}
],
Slots:
[
{
SlotId: 0,
Hour: String,
BaseBooked: 0,
SortOrder: 0
}
],
Tickets:
[
{
TicketId: 0,
Code: String,
TruckCode: String,
SupplierCode: String,
NetQty: 0,
TicketedAt: 0001-01-01,
TicketedMin: 0,
Source: String,
MinsAgo: 0
}
],
Log:
[
{
LogId: 0,
LoggedAt: 0001-01-01,
LoggedMin: 0,
LogText: String,
Kind: String,
MinsAgo: 0
}
],
Autopilot:
{
IsOn: False,
RuleSlot: False,
RuleRoute: False,
RuleRelease: False,
RuleTract: False,
RuleThrottle: False,
RuleOffline: False,
ThStaged: 0,
ThWait: 0,
ThBand: 0,
ThStall: 0,
ThFeed: 0
},
Exceptions:
[
{
Code: String,
Kind: String,
Severity: String,
TruckCode: String,
SupplierCode: String,
RaisedAt: 0001-01-01,
RaisedLabel: String,
MinsAgo: 0
}
],
Feed:
[
{
FeedId: 0,
EntryAt: 0001-01-01,
EntryLabel: String,
Channel: String,
Kind: String,
TruckCode: String,
SupplierCode: String,
OverrideText: String,
MinsAgo: 0
}
],
Rigs:
[
{
RigId: 0,
Code: String,
Name: String,
DriverName: String,
Phone: String,
RigType: String,
IsFree: False,
MatchRank: 0
}
],
Jobs:
[
{
JobId: 0,
Code: String,
Cargo: String,
Customer: String,
CustomerPhone: String,
HoldContact: String,
HoldPhone: String,
FromLoc: String,
ToLoc: String,
Miles: 0,
WindowText: String,
Stage: String,
Rate: 0,
RequiredRig: String,
DriverLabel: String,
EtaText: String,
OfferRigIds: String,
OfferExpiresMin: 0,
OfferExpired: False,
Declined: False
}
],
OdDrivers:
[
{
DriverId: 0,
Code: String,
Name: String,
Zone: String,
Phone: String,
Status: String,
Tier: String,
DistanceMi: 0,
Capabilities: String
}
],
OdRequests:
[
{
RequestId: 0,
Code: String,
Address: String,
Zone: String,
Bags: 0,
Stage: String,
DriverCode: String,
Needs: String,
Note: String,
PingExpiresMin: 0,
TriedCodes: String,
CandidateCodes: String,
EtaText: String,
NoDriver: String
}
],
Packs:
[
{
PackId: String,
HasQuotas: False,
IsInverted: False,
LoadLimitMins: 0,
DayBoundary: String,
TicketSource: String,
PayBasis: String,
SortOrder: 0
}
],
PackTerms:
[
{
PackId: String,
Lang: String,
ModeName: String,
Facility: String,
FacilityShort: String,
SourceSite: String,
Supplier: String,
SupplierPlural: String,
UnloadVerb: String,
TicketNoun: String,
DayNoun: String,
FleetLabel: String,
PageSubtitle: String,
SeasonChip: String,
CampaignNoun: String,
BayNoun: String,
AssignTarget: String
}
],
PackUnits:
[
{
PackId: String,
Unit: String,
LoadQty: 0,
VolumeLow: 0,
VolumeHigh: 0,
SeasonMultiple: 0,
WeeklyFraction: 0
}
]
},
Message: String,
Sent: 0,
Failed: 0,
TicketCode: String,
TicketNet: 0,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}