Trendsic Platform Service

<back to all web services

CourierTrackRatingRequest

The following routes are available for this service:
POST,OPTIONS/v1/dispatch/track/{Token}/rating
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using CRM.AgencyPlatform.API.Internal;

namespace CRM.AgencyPlatform.API.Internal
{
    public partial class CourierTrackActRequest
    {
        public virtual string Token { get; set; }
        public virtual string ActToken { get; set; }
    }

    public partial class CourierTrackBusiness
    {
        public virtual string Name { get; set; }
        public virtual string Phone { get; set; }
    }

    public partial class CourierTrackCan
    {
        public virtual bool EditInstructions { get; set; }
        public virtual bool ChangeUnits { get; set; }
        public virtual bool Cancel { get; set; }
        public virtual bool RescheduleDelivery { get; set; }
        public virtual bool Rebook { get; set; }
        public virtual bool Rate { get; set; }
        public virtual bool Message { get; set; }
        public virtual bool Report { get; set; }
        public virtual int MaxUnits { get; set; }
    }

    public partial class CourierTrackDriver
    {
        public virtual string FirstName { get; set; }
        public virtual string Initial { get; set; }
        public virtual string Vehicle { get; set; }
        public virtual string Plate { get; set; }
        public virtual int? EtaMin { get; set; }
        public virtual int? EtaPct { get; set; }
    }

    public partial class CourierTrackMessage
    {
        public virtual string Who { get; set; }
        public virtual bool Mine { get; set; }
        public virtual bool Office { get; set; }
        public virtual string AtText { get; set; }
        public virtual string Body { get; set; }
    }

    public partial class CourierTrackMissed
    {
        public virtual string Code { get; set; }
        public virtual decimal Fee { get; set; }
        public virtual int WaitedMin { get; set; }
        public virtual bool AutoRebook { get; set; }
        public virtual string RebookWindowText { get; set; }
        public virtual List<CourierTrackSlot> Slots { get; set; } = [];
    }

    public partial class CourierTrackProof
    {
        public virtual string Kind { get; set; }
        public virtual string PhotoUrl { get; set; }
        public virtual string AtText { get; set; }
        public virtual bool GpsOk { get; set; }
        public virtual int Units { get; set; }
        public virtual string DamageNote { get; set; }
        public virtual string DeliveredTo { get; set; }
        public virtual int WaitedMin { get; set; }
        public virtual int Attempts { get; set; }
        public virtual string ContactedText { get; set; }
        public virtual bool EachTagged { get; set; }
        public virtual bool EachScanned { get; set; }
    }

    public partial class CourierTrackRating
    {
        public virtual int Stars { get; set; }
        public virtual string Tags { get; set; }
        public virtual decimal Tip { get; set; }
        public virtual string TipStatus { get; set; }
    }

    public partial class CourierTrackRatingRequest
        : CourierTrackActRequest
    {
        public virtual int Stars { get; set; }
        public virtual List<string> Tags { get; set; } = [];
        public virtual decimal? Tip { get; set; }
    }

    public partial class CourierTrackSlot
    {
        public virtual string Id { get; set; }
        public virtual string Day { get; set; }
        public virtual string DayEs { get; set; }
        public virtual string Win { get; set; }
    }

    public partial class CourierTrackView
    {
        public virtual string State { get; set; }
        public virtual string Code { get; set; }
        public virtual string RunCode { get; set; }
        public virtual string Shape { get; set; }
        public virtual string Template { get; set; }
        public virtual string CourierStep { get; set; }
        public virtual string UnitOne { get; set; }
        public virtual string UnitMany { get; set; }
        public virtual string UnitOneEs { get; set; }
        public virtual string UnitManyEs { get; set; }
        public virtual string FacilityNoun { get; set; }
        public virtual string FacilityNounEs { get; set; }
        public virtual int Units { get; set; }
        public virtual bool UnitsCounted { get; set; }
        public virtual string Address { get; set; }
        public virtual string DropoffAddress { get; set; }
        public virtual string DropoffName { get; set; }
        public virtual string Instructions { get; set; }
        public virtual string GateCode { get; set; }
        public virtual string Handoff { get; set; }
        public virtual string LevelName { get; set; }
        public virtual string ReadyPromise { get; set; }
        public virtual string WindowText { get; set; }
        public virtual bool IsAsap { get; set; }
        public virtual Dictionary<string, string> Times { get; set; } = new();
        public virtual int? StopPosition { get; set; }
        public virtual int? StopCount { get; set; }
        public virtual string DeliveryWindowText { get; set; }
        public virtual CourierTrackDriver Driver { get; set; }
        public virtual CourierTrackProof Proof { get; set; }
        public virtual string HandoffCode { get; set; }
        public virtual CourierTrackRating Rating { get; set; }
        public virtual bool TipAllowed { get; set; }
        public virtual decimal TipsPct { get; set; }
        public virtual CourierTrackMissed Missed { get; set; }
        public virtual decimal CancelFee { get; set; }
        public virtual decimal CancelFeeCharged { get; set; }
        public virtual string CancelledBy { get; set; }
        public virtual string BookUrl { get; set; }
        public virtual CourierTrackCan Can { get; set; }
        public virtual List<CourierTrackSlot> DeliverySlots { get; set; } = [];
        public virtual List<CourierTrackMessage> Messages { get; set; } = [];
        public virtual bool MessagesOpen { get; set; }
        public virtual string CaseCode { get; set; }
        public virtual string CaseStatus { get; set; }
        public virtual string CaseReply { get; set; }
        public virtual int ThreadHrs { get; set; }
        public virtual DateTime? ExpiresUtc { get; set; }
        public virtual bool LiveEta { get; set; }
        public virtual bool Live { get; set; }
        public virtual DateTime ServerUtc { get; set; }
    }

    public partial class DispatchTrackResponse
    {
        public virtual string Kind { get; set; }
        public virtual string Code { get; set; }
        public virtual string What { get; set; }
        public virtual string FromLoc { get; set; }
        public virtual string ToLoc { get; set; }
        public virtual int? Bags { get; set; }
        public virtual decimal? Fare { get; set; }
        public virtual string PayMode { get; set; }
        public virtual string CardLast4 { get; set; }
        public virtual bool Charged { get; set; }
        public virtual string Stage { get; set; }
        public virtual string Headline { get; set; }
        public virtual string Sub { get; set; }
        public virtual bool IsClosed { get; set; }
        public virtual string Eta { get; set; }
        public virtual string DriverName { get; set; }
        public virtual string CustomerName { get; set; }
        public virtual List<DispatchTrackStepView> Steps { get; set; } = [];
        public virtual bool Expired { get; set; }
        public virtual bool Invalid { get; set; }
        public virtual CourierTrackBusiness Business { get; set; }
        public virtual CourierTrackView Courier { get; set; }
        public virtual string Notice { get; set; }
        public virtual ResponseStatus ResponseStatus { get; set; }
    }

    public partial class DispatchTrackStepView
    {
        public virtual string Name { get; set; }
        public virtual DateTime? At { get; set; }
        public virtual bool Done { get; set; }
        public virtual bool Current { get; set; }
    }

}

C# CourierTrackRatingRequest 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.

POST /v1/dispatch/track/{Token}/rating HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Stars: 0,
	Tags: 
	[
		String
	],
	Tip: 0,
	Token: String,
	ActToken: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Kind: String,
	Code: String,
	What: String,
	FromLoc: String,
	ToLoc: String,
	Bags: 0,
	Fare: 0,
	PayMode: String,
	CardLast4: String,
	Charged: False,
	Stage: String,
	Headline: String,
	Sub: String,
	IsClosed: False,
	Eta: String,
	DriverName: String,
	CustomerName: String,
	Steps: 
	[
		{
			Name: String,
			At: 0001-01-01,
			Done: False,
			Current: False
		}
	],
	Expired: False,
	Invalid: False,
	Business: 
	{
		Name: String,
		Phone: String
	},
	Courier: 
	{
		State: String,
		Code: String,
		RunCode: String,
		Shape: String,
		Template: String,
		CourierStep: String,
		UnitOne: String,
		UnitMany: String,
		UnitOneEs: String,
		UnitManyEs: String,
		FacilityNoun: String,
		FacilityNounEs: String,
		Units: 0,
		UnitsCounted: False,
		Address: String,
		DropoffAddress: String,
		DropoffName: String,
		Instructions: String,
		GateCode: String,
		Handoff: String,
		LevelName: String,
		ReadyPromise: String,
		WindowText: String,
		IsAsap: False,
		Times: 
		{
			String: String
		},
		StopPosition: 0,
		StopCount: 0,
		DeliveryWindowText: String,
		Driver: 
		{
			FirstName: String,
			Initial: String,
			Vehicle: String,
			Plate: String,
			EtaMin: 0,
			EtaPct: 0
		},
		Proof: 
		{
			Kind: String,
			PhotoUrl: String,
			AtText: String,
			GpsOk: False,
			Units: 0,
			DamageNote: String,
			DeliveredTo: String,
			WaitedMin: 0,
			Attempts: 0,
			ContactedText: String,
			EachTagged: False,
			EachScanned: False
		},
		HandoffCode: String,
		Rating: 
		{
			Stars: 0,
			Tags: String,
			Tip: 0,
			TipStatus: String
		},
		TipAllowed: False,
		TipsPct: 0,
		Missed: 
		{
			Code: String,
			Fee: 0,
			WaitedMin: 0,
			AutoRebook: False,
			RebookWindowText: String,
			Slots: 
			[
				{
					Id: String,
					Day: String,
					DayEs: String,
					Win: String
				}
			]
		},
		CancelFee: 0,
		CancelFeeCharged: 0,
		CancelledBy: String,
		BookUrl: String,
		Can: 
		{
			EditInstructions: False,
			ChangeUnits: False,
			Cancel: False,
			RescheduleDelivery: False,
			Rebook: False,
			Rate: False,
			Message: False,
			Report: False,
			MaxUnits: 0
		},
		DeliverySlots: 
		[
			{
				Id: String,
				Day: String,
				DayEs: String,
				Win: String
			}
		],
		Messages: 
		[
			{
				Who: String,
				Mine: False,
				Office: False,
				AtText: String,
				Body: String
			}
		],
		MessagesOpen: False,
		CaseCode: String,
		CaseStatus: String,
		CaseReply: String,
		ThreadHrs: 0,
		ExpiresUtc: 0001-01-01,
		LiveEta: False,
		Live: False,
		ServerUtc: 0001-01-01
	},
	Notice: String,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}