| POST,OPTIONS | /v1/book/{Slug}/orders | ||
|---|---|---|---|
| POST,OPTIONS | /v1/book/{Slug}/orders/confirm |
import Foundation
import ServiceStack
public class CourierBookOrderRequest : Codable
{
public var slug:String
public var profile:String
public var turnstileToken:String
public var level:String
public var windowId:String
public var recur: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 pickupName:String
public var dropAddress:String
public var dropUnit:String
public var dropCity:String
public var dropZip:String
public var dropLat:Double?
public var dropLng:Double?
public var recipientName:String
public var units:Int
public var handoff:String
public var gateCode:String
public var note:String
public var name:String
public var phone:String
public var email:String
public var smsConsent:Bool
public var terms:Bool
public var paymentMethodId:String
public var setupIntentId:String
public var quotedTotal:Double?
public var lang:String
required public init(){}
}
public class CourierBookOrderResponse : Codable
{
public var done:Bool
public var needsAction:Bool
public var clientSecret:String
public var setupIntentId:String
public var code:String
public var trackUrl:String
public var icsUrl:String
public var windowText:String
public var promise:String
public var total:Double
public var payTiming:String
public var cardLast4:String
public var repeats:String
public var linkSentBy:String
public var reopenStep:String
public var responseStatus:ResponseStatus
required public init(){}
}
Swift CourierBookOrderRequest 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/book/{Slug}/orders HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Slug: String,
Profile: String,
TurnstileToken: String,
Level: String,
WindowId: String,
Recur: String,
Address: String,
Unit: String,
City: String,
Zip: String,
Lat: 0,
Lng: 0,
PickupName: String,
DropAddress: String,
DropUnit: String,
DropCity: String,
DropZip: String,
DropLat: 0,
DropLng: 0,
RecipientName: String,
Units: 0,
Handoff: String,
GateCode: String,
Note: String,
Name: String,
Phone: String,
Email: String,
SmsConsent: False,
Terms: False,
PaymentMethodId: String,
SetupIntentId: String,
QuotedTotal: 0,
Lang: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Done: False,
NeedsAction: False,
ClientSecret: String,
SetupIntentId: String,
Code: String,
TrackUrl: String,
IcsUrl: String,
WindowText: String,
Promise: String,
Total: 0,
PayTiming: String,
CardLast4: String,
Repeats: String,
LinkSentBy: String,
ReopenStep: String,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}