Trendsic Platform Service

<back to all web services

CourierProfileRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/dispatch/courier/profiles/{Id}
namespace CRM.AgencyPlatform.API.Internal

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type CourierProfileSummary() = 
        member val CourierProfileID:Int32 = new Int32() with get,set
        member val Code:String = null with get,set
        member val Name:String = null with get,set
        member val BusinessName:String = null with get,set
        member val RouteShape:String = null with get,set
        member val Enabled:Boolean = new Boolean() with get,set
        member val TemplateFrom:String = null with get,set
        member val Drivers:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type CourierTemplateOption() = 
        member val Key:String = null with get,set
        member val Label:String = null with get,set
        member val Detail:String = null with get,set
        member val RouteShape:String = null with get,set

    [<AllowNullLiteral>]
    type CourierPay() = 
        member val WorkerClass:String = null with get,set
        member val PerPickup:Decimal = new Decimal() with get,set
        member val PerStop:Decimal = new Decimal() with get,set
        member val PerMissed:Decimal = new Decimal() with get,set
        member val PerCancel:Decimal = new Decimal() with get,set
        member val WaitAfterMin:Int32 = new Int32() with get,set
        member val WaitPerMin:Decimal = new Decimal() with get,set
        member val MileageOn:Boolean = new Boolean() with get,set
        member val PerMile:Decimal = new Decimal() with get,set
        member val MinPerJob:Decimal = new Decimal() with get,set
        member val TipsPct:Decimal = new Decimal() with get,set

    [<AllowNullLiteral>]
    type CourierDispatch() = 
        member val PingSecs:Int32 = new Int32() with get,set
        member val RadiusMi:Decimal = new Decimal() with get,set
        member val DeclinePenalty:Boolean = new Boolean() with get,set
        member val NextRule:String = null with get,set
        member val GoMin:Int32 = new Int32() with get,set
        member val LastMin:Int32 = new Int32() with get,set
        member val NearFull:Int32 = new Int32() with get,set
        member val MarginMin:Int32 = new Int32() with get,set
        member val TrafficSource:String = null with get,set

    [<AllowNullLiteral>]
    type CourierMissed() = 
        member val WaitMin:Int32 = new Int32() with get,set
        member val Fee:Decimal = new Decimal() with get,set
        member val CancelFee:Decimal = new Decimal() with get,set
        member val AutoRebook:Boolean = new Boolean() with get,set
        member val RequireContact:Boolean = new Boolean() with get,set
        member val RequirePhoto:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type CourierPrivacy() = 
        member val ThreadHrs:Int32 = new Int32() with get,set
        member val PhotoDays:Int32 = new Int32() with get,set
        member val LockNames:String = null with get,set
        member val HideAddr:Boolean = new Boolean() with get,set
        member val LiveEta:Boolean = new Boolean() with get,set
        member val Tipping:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type CourierPricing() = 
        member val Base:Decimal = new Decimal() with get,set
        member val PerUnit:Decimal = new Decimal() with get,set
        member val PerMile:Decimal = new Decimal() with get,set
        member val MinOrder:Decimal = new Decimal() with get,set
        member val TaxPct:Decimal = new Decimal() with get,set
        member val FinalAfterCount:Boolean = new Boolean() with get,set
        member val ServiceArea:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val WindowMin:Int32 = new Int32() with get,set
        member val Surcharges:Dictionary<String, Decimal> = new Dictionary<String, Decimal>() with get,set

    [<AllowNullLiteral>]
    type CourierBooking() = 
        member val On:Boolean = new Boolean() with get,set
        member val Slug:String = null with get,set
        member val Asap:Boolean = new Boolean() with get,set
        member val MinLeadMin:Int32 = new Int32() with get,set
        member val Open:String = null with get,set
        member val Close:String = null with get,set
        member val DriveBufferMin:Int32 = new Int32() with get,set
        member val Zips:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val Recurring:Boolean = new Boolean() with get,set
        member val PayTiming:String = null with get,set

    [<AllowNullLiteral>]
    type CourierLevelView() = 
        member val Code:String = null with get,set
        member val Name:String = null with get,set
        member val InBy:String = null with get,set
        member val WithinMin:Int32 = new Int32() with get,set
        member val Ready:String = null with get,set
        member val Days:ResizeArray<Int32> = new ResizeArray<Int32>() with get,set
        member val IsOn:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type CourierFacilityView() = 
        member val Code:String = null with get,set
        member val Name:String = null with get,set
        member val Address:String = null with get,set
        member val IntakeMin:Int32 = new Int32() with get,set
        member val Levels:ResizeArray<CourierLevelView> = new ResizeArray<CourierLevelView>() with get,set
        member val Holidays:ResizeArray<String> = new ResizeArray<String>() with get,set

    [<AllowNullLiteral>]
    type CourierVehicleView() = 
        member val EquipmentID:Int32 = new Int32() with get,set
        member val UnitNumber:String = null with get,set
        member val Name:String = null with get,set
        member val Unit:String = null with get,set
        member val Cap:Decimal = new Decimal() with get,set
        member val Cold:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type CourierProfileContext() = 
        member val Drivers:Int32 = new Int32() with get,set
        member val ProfileCount:Int32 = new Int32() with get,set
        member val PayPlanId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val ZoneMode:String = null with get,set
        member val ZoneName:String = null with get,set
        member val ZoneCount:Int32 = new Int32() with get,set
        member val HasBookingPage:Boolean = new Boolean() with get,set
        member val HasRateConfig:Boolean = new Boolean() with get,set
        member val VehicleFacts:Dictionary<String, String> = new Dictionary<String, String>() with get,set

    [<AllowNullLiteral>]
    type CourierProfileView() = 
        member val CourierProfileID:Int32 = new Int32() with get,set
        member val Code:String = null with get,set
        member val Name:String = null with get,set
        member val BusinessName:String = null with get,set
        member val RouteShape:String = null with get,set
        member val Enabled:Boolean = new Boolean() with get,set
        member val TemplateFrom:String = null with get,set
        member val UnitOne:String = null with get,set
        member val UnitMany:String = null with get,set
        member val FacilityNoun:String = null with get,set
        member val UnitOneEs:String = null with get,set
        member val UnitManyEs:String = null with get,set
        member val FacilityNounEs:String = null with get,set
        member val TagMode:String = null with get,set
        member val TagFormats:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val Pay:CourierPay = null with get,set
        member val Dispatch:CourierDispatch = null with get,set
        member val Missed:CourierMissed = null with get,set
        member val Privacy:CourierPrivacy = null with get,set
        member val Pricing:CourierPricing = null with get,set
        member val Booking:CourierBooking = null with get,set
        member val Facilities:ResizeArray<CourierFacilityView> = new ResizeArray<CourierFacilityView>() with get,set
        member val Vehicles:ResizeArray<CourierVehicleView> = new ResizeArray<CourierVehicleView>() with get,set
        member val Proof:Dictionary<String, Dictionary<String,String>> = new Dictionary<String, Dictionary<String,String>>() with get,set
        member val Context:CourierProfileContext = null with get,set

    [<AllowNullLiteral>]
    type CourierIssue() = 
        member val Key:String = null with get,set
        member val Section:String = null with get,set
        member val Message:String = null with get,set

    [<AllowNullLiteral>]
    type CourierChange() = 
        member val Key:String = null with get,set
        member val Section:String = null with get,set
        member val Label:String = null with get,set
        member val From:String = null with get,set
        member val To:String = null with get,set

    [<AllowNullLiteral>]
    type CourierPreviewLine() = 
        member val K:String = null with get,set
        member val V:String = null with get,set
        member val Dot:String = null with get,set

    [<AllowNullLiteral>]
    type CourierPreview() = 
        member val DeadlineTitle:String = null with get,set
        member val DeadlineLead:String = null with get,set
        member val RoomW:String = null with get,set
        member val LastW:String = null with get,set
        member val GoW:String = null with get,set
        member val Zones:ResizeArray<CourierPreviewLine> = new ResizeArray<CourierPreviewLine>() with get,set
        member val PaySub:String = null with get,set
        member val PayRows:ResizeArray<CourierPreviewLine> = new ResizeArray<CourierPreviewLine>() with get,set
        member val PayTotal:String = null with get,set
        member val ProofRows:ResizeArray<CourierPreviewLine> = new ResizeArray<CourierPreviewLine>() with get,set
        member val Ping:String = null with get,set

    [<AllowNullLiteral>]
    type CourierFleetVehicle() = 
        member val EquipmentID:Int32 = new Int32() with get,set
        member val UnitNumber:String = null with get,set
        member val Name:String = null with get,set
        member val VehicleType:String = null with get,set
        member val Unit:String = null with get,set
        member val Cap:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Cold:Boolean = new Boolean() with get,set
        member val Status:String = null with get,set
        member val Assigned:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type CourierResponse() = 
        member val Profiles:ResizeArray<CourierProfileSummary> = new ResizeArray<CourierProfileSummary>() with get,set
        member val Templates:ResizeArray<CourierTemplateOption> = new ResizeArray<CourierTemplateOption>() with get,set
        member val Profile:CourierProfileView = null with get,set
        member val Issues:ResizeArray<CourierIssue> = new ResizeArray<CourierIssue>() with get,set
        member val Changes:ResizeArray<CourierChange> = new ResizeArray<CourierChange>() with get,set
        member val Preview:CourierPreview = null with get,set
        member val Fleet:ResizeArray<CourierFleetVehicle> = new ResizeArray<CourierFleetVehicle>() with get,set
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type CourierProfileRequest() = 
        member val Id:Int32 = new Int32() with get,set
        member val FacilityCode:String = null with get,set

F# CourierProfileRequest 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

HTTP + JSON

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

GET /v1/dispatch/courier/profiles/{Id} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Profiles":[{"CourierProfileID":0,"Code":"String","Name":"String","BusinessName":"String","RouteShape":"String","Enabled":false,"TemplateFrom":"String","Drivers":0}],"Templates":[{"Key":"String","Label":"String","Detail":"String","RouteShape":"String"}],"Profile":{"CourierProfileID":0,"Code":"String","Name":"String","BusinessName":"String","RouteShape":"String","Enabled":false,"TemplateFrom":"String","UnitOne":"String","UnitMany":"String","FacilityNoun":"String","UnitOneEs":"String","UnitManyEs":"String","FacilityNounEs":"String","TagMode":"String","TagFormats":["String"],"Pay":{"WorkerClass":"String","PerPickup":0,"PerStop":0,"PerMissed":0,"PerCancel":0,"WaitAfterMin":0,"WaitPerMin":0,"MileageOn":false,"PerMile":0,"MinPerJob":0,"TipsPct":0},"Dispatch":{"PingSecs":0,"RadiusMi":0,"DeclinePenalty":false,"NextRule":"String","GoMin":0,"LastMin":0,"NearFull":0,"MarginMin":0,"TrafficSource":"String"},"Missed":{"WaitMin":0,"Fee":0,"CancelFee":0,"AutoRebook":false,"RequireContact":false,"RequirePhoto":false},"Privacy":{"ThreadHrs":0,"PhotoDays":0,"LockNames":"String","HideAddr":false,"LiveEta":false,"Tipping":false},"Pricing":{"Base":0,"PerUnit":0,"PerMile":0,"MinOrder":0,"TaxPct":0,"FinalAfterCount":false,"ServiceArea":["String"],"WindowMin":0,"Surcharges":{"String":0}},"Booking":{"On":false,"Slug":"String","Asap":false,"MinLeadMin":0,"Open":"String","Close":"String","DriveBufferMin":0,"Zips":["String"],"Recurring":false,"PayTiming":"String"},"Facilities":[{"Code":"String","Name":"String","Address":"String","IntakeMin":0,"Levels":[{"Code":"String","Name":"String","InBy":"String","WithinMin":0,"Ready":"String","Days":[0],"IsOn":false}],"Holidays":["String"]}],"Vehicles":[{"EquipmentID":0,"UnitNumber":"String","Name":"String","Unit":"String","Cap":0,"Cold":false}],"Proof":{"String":{"String":"String"}},"Context":{"Drivers":0,"ProfileCount":0,"PayPlanId":0,"ZoneMode":"String","ZoneName":"String","ZoneCount":0,"HasBookingPage":false,"HasRateConfig":false,"VehicleFacts":{"String":"String"}}},"Issues":[{"Key":"String","Section":"String","Message":"String"}],"Changes":[{"Key":"String","Section":"String","Label":"String","From":"String","To":"String"}],"Preview":{"DeadlineTitle":"String","DeadlineLead":"String","RoomW":"String","LastW":"String","GoW":"String","Zones":[{"K":"String","V":"String","Dot":"String"}],"PaySub":"String","PayRows":[{"K":"String","V":"String","Dot":"String"}],"PayTotal":"String","ProofRows":[{"K":"String","V":"String","Dot":"String"}],"Ping":"String"},"Fleet":[{"EquipmentID":0,"UnitNumber":"String","Name":"String","VehicleType":"String","Unit":"String","Cap":0,"Cold":false,"Status":"String","Assigned":false}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}