| POST,OPTIONS | /v1/dispatch/settlements/generate |
|---|
import Foundation
import ServiceStack
public class DispatchSettlementGenerateRequest : Codable
{
public var vendorID:Int
public var periodStart:Date
public var periodEnd:Date
required public init(){}
}
public class DispatchSettlementsResponse : Codable
{
public var settlements:[DispatchSettlementView] = []
public var settlement:DispatchSettlementView
public var suggestions:[DispatchSettlementSuggestView] = []
public var responseStatus:ResponseStatus
required public init(){}
}
public class DispatchSettlementView : Codable
{
public var settlementId:Int
public var code:String
public var vendorID:Int
public var vendorName:String
public var periodStart:Date
public var periodEnd:Date
public var loadCount:Int
public var grossRevenue:Double
public var splitPct:Double
public var carrierShare:Double
public var deductionsTotal:Double
public var net:Double
public var status:String
public var notes:String
public var generatedUtc:Date
public var sentUtc:Date?
public var approvedUtc:Date?
public var approvedBy:String
public var paidUtc:Date?
public var paidRef:String
public var contactCount:Int
public var deductions:[DispatchSettlementDeductionView] = []
public var loads:[DispatchLoadView] = []
required public init(){}
}
public class DispatchSettlementDeductionView : Codable
{
public var deductionId:Int
public var kind:String
public var label:String
public var amount:Double
public var note:String
required public init(){}
}
public class DispatchLoadView : Codable
{
public var loadId:Int
public var code:String
public var module:String
public var truckLabel:String
public var driverLabel:String
public var carrierLabel:String
public var sourceLabel:String
public var destinationLabel:String
public var qty:Double?
public var unit:String
public var qtyText:String
public var ticketCode:String
public var rateApplied:Double?
public var rateBasis:String
public var revenue:Double?
public var payPlanLabel:String
public var pay:Double?
public var status:String
public var openedUtc:Date
public var closedUtc:Date?
public var photos:Int
public var stages:[DispatchLoadStageView] = []
required public init(){}
}
public class DispatchLoadStageView : Codable
{
public var stage:String
public var atUtc:Date
public var note:String
required public init(){}
}
public class DispatchSettlementSuggestView : Codable
{
public var vendorID:Int
public var vendorName:String
public var splitPct:Double
public var terms:String
public var w9OnFile:Bool
public var coiExpires:Date?
public var periodStart:Date
public var periodEnd:Date
public var unsettledLoads:Int
public var unpricedLoads:Int
public var unsettledPay:Double
required public init(){}
}
Swift DispatchSettlementGenerateRequest 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.
POST /v1/dispatch/settlements/generate HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
VendorID: 0,
PeriodStart: 0001-01-01,
PeriodEnd: 0001-01-01
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Settlements:
[
{
SettlementId: 0,
Code: String,
VendorID: 0,
VendorName: String,
PeriodStart: 0001-01-01,
PeriodEnd: 0001-01-01,
LoadCount: 0,
GrossRevenue: 0,
SplitPct: 0,
CarrierShare: 0,
DeductionsTotal: 0,
Net: 0,
Status: String,
Notes: String,
GeneratedUtc: 0001-01-01,
SentUtc: 0001-01-01,
ApprovedUtc: 0001-01-01,
ApprovedBy: String,
PaidUtc: 0001-01-01,
PaidRef: String,
ContactCount: 0,
Deductions:
[
{
DeductionId: 0,
Kind: String,
Label: String,
Amount: 0,
Note: String
}
],
Loads:
[
{
LoadId: 0,
Code: String,
Module: String,
TruckLabel: String,
DriverLabel: String,
CarrierLabel: String,
SourceLabel: String,
DestinationLabel: String,
Qty: 0,
Unit: String,
QtyText: String,
TicketCode: String,
RateApplied: 0,
RateBasis: String,
Revenue: 0,
PayPlanLabel: String,
Pay: 0,
Status: String,
OpenedUtc: 0001-01-01,
ClosedUtc: 0001-01-01,
Photos: 0,
Stages:
[
{
Stage: String,
AtUtc: 0001-01-01,
Note: String
}
]
}
]
}
],
Settlement:
{
SettlementId: 0,
Code: String,
VendorID: 0,
VendorName: String,
PeriodStart: 0001-01-01,
PeriodEnd: 0001-01-01,
LoadCount: 0,
GrossRevenue: 0,
SplitPct: 0,
CarrierShare: 0,
DeductionsTotal: 0,
Net: 0,
Status: String,
Notes: String,
GeneratedUtc: 0001-01-01,
SentUtc: 0001-01-01,
ApprovedUtc: 0001-01-01,
ApprovedBy: String,
PaidUtc: 0001-01-01,
PaidRef: String,
ContactCount: 0,
Deductions:
[
{
DeductionId: 0,
Kind: String,
Label: String,
Amount: 0,
Note: String
}
],
Loads:
[
{
LoadId: 0,
Code: String,
Module: String,
TruckLabel: String,
DriverLabel: String,
CarrierLabel: String,
SourceLabel: String,
DestinationLabel: String,
Qty: 0,
Unit: String,
QtyText: String,
TicketCode: String,
RateApplied: 0,
RateBasis: String,
Revenue: 0,
PayPlanLabel: String,
Pay: 0,
Status: String,
OpenedUtc: 0001-01-01,
ClosedUtc: 0001-01-01,
Photos: 0,
Stages:
[
{
Stage: String,
AtUtc: 0001-01-01,
Note: String
}
]
}
]
},
Suggestions:
[
{
VendorID: 0,
VendorName: String,
SplitPct: 0,
Terms: String,
W9OnFile: False,
CoiExpires: 0001-01-01,
PeriodStart: 0001-01-01,
PeriodEnd: 0001-01-01,
UnsettledLoads: 0,
UnpricedLoads: 0,
UnsettledPay: 0
}
],
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}