Trendsic Platform Service

<back to all web services

CourierBookPageRequest

The following routes are available for this service:
GET,OPTIONS/v1/book/{Slug}
import Foundation
import ServiceStack

public class CourierBookPageRequest : Codable
{
    public var slug:String
    public var profile:String

    required public init(){}
}

public class CourierBookPageResponse : Codable
{
    public var page:CourierBookPageView
    public var responseStatus:ResponseStatus

    required public init(){}
}

public class CourierBookPageView : Codable
{
    public var available:Bool
    public var bookingOn:Bool
    public var business:CourierTrackBusiness
    public var profile:CourierBookProfile
    public var profiles:[CourierBookProfileLink] = []
    public var cardEnabled:Bool
    public var publishableKey:String
    public var appUrl:String
    public var today:String
    public var weekday:Int
    public var nowMin:Int

    required public init(){}
}

public class CourierTrackBusiness : Codable
{
    public var name:String
    public var phone:String

    required public init(){}
}

public class CourierBookProfile : Codable
{
    public var code:String
    public var name:String
    public var shape:String
    public var template: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 facilityName:String
    public var levels:[CourierBookLevel] = []
    public var asap:Bool
    public var recurring:Bool
    public var payTiming:String
    public var finalAfterCount:Bool
    public var cancelFee:Double
    public var missedFee:Double
    public var missedWaitMin:Int
    public var serviceArea:[String] = []
    public var zips:[String] = []
    public var handoffs:HandoffOptions

    required public init(){}
}

public class CourierBookLevel : Codable
{
    public var code:String
    public var name:String
    public var ready:String
    public var withinMin:Int
    public var inBy:String
    public var surcharge:Double
    public var days:[Int] = []
    public var deadlineMin:Int?

    required public init(){}
}

public class HandoffOptions : Codable
{
    public var hand:Bool
    public var porch:Bool
    public var desk:Bool
    public var sigRequired:Bool
    public var idRequired:Bool
    public var codeRequired:Bool

    required public init(){}
}

public class CourierBookProfileLink : Codable
{
    public var code:String
    public var name:String
    public var shape:String

    required public init(){}
}


Swift CourierBookPageRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/book/{Slug} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Page: 
	{
		Available: False,
		BookingOn: False,
		Business: 
		{
			Name: String,
			Phone: String
		},
		Profile: 
		{
			Code: String,
			Name: String,
			Shape: String,
			Template: String,
			UnitOne: String,
			UnitMany: String,
			UnitOneEs: String,
			UnitManyEs: String,
			FacilityNoun: String,
			FacilityNounEs: String,
			FacilityName: String,
			Levels: 
			[
				{
					Code: String,
					Name: String,
					Ready: String,
					WithinMin: 0,
					InBy: String,
					Surcharge: 0,
					Days: 
					[
						0
					],
					DeadlineMin: 0
				}
			],
			Asap: False,
			Recurring: False,
			PayTiming: String,
			FinalAfterCount: False,
			CancelFee: 0,
			MissedFee: 0,
			MissedWaitMin: 0,
			ServiceArea: 
			[
				String
			],
			Zips: 
			[
				String
			],
			Handoffs: 
			{
				Hand: False,
				Porch: False,
				Desk: False,
				SigRequired: False,
				IdRequired: False,
				CodeRequired: False
			}
		},
		Profiles: 
		[
			{
				Code: String,
				Name: String,
				Shape: String
			}
		],
		CardEnabled: False,
		PublishableKey: String,
		AppUrl: String,
		Today: String,
		Weekday: 0,
		NowMin: 0
	},
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}