| POST,OPTIONS | /v1/dispatch/track/{Token}/messages |
|---|
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 CourierTrackMessageRequest
: CourierTrackActRequest
{
public virtual string Text { 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 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# CourierTrackMessageRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/dispatch/track/{Token}/messages HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CourierTrackMessageRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<ActToken>String</ActToken>
<Token>String</Token>
<Text>String</Text>
</CourierTrackMessageRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<DispatchTrackResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<Bags>0</Bags>
<Business>
<Name>String</Name>
<Phone>String</Phone>
</Business>
<CardLast4>String</CardLast4>
<Charged>false</Charged>
<Code>String</Code>
<Courier>
<Address>String</Address>
<BookUrl>String</BookUrl>
<Can>
<Cancel>false</Cancel>
<ChangeUnits>false</ChangeUnits>
<EditInstructions>false</EditInstructions>
<MaxUnits>0</MaxUnits>
<Message>false</Message>
<Rate>false</Rate>
<Rebook>false</Rebook>
<Report>false</Report>
<RescheduleDelivery>false</RescheduleDelivery>
</Can>
<CancelFee>0</CancelFee>
<CancelFeeCharged>0</CancelFeeCharged>
<CancelledBy>String</CancelledBy>
<CaseCode>String</CaseCode>
<CaseReply>String</CaseReply>
<CaseStatus>String</CaseStatus>
<Code>String</Code>
<CourierStep>String</CourierStep>
<DeliverySlots>
<CourierTrackSlot>
<Day>String</Day>
<DayEs>String</DayEs>
<Id>String</Id>
<Win>String</Win>
</CourierTrackSlot>
</DeliverySlots>
<DeliveryWindowText>String</DeliveryWindowText>
<Driver>
<EtaMin>0</EtaMin>
<EtaPct>0</EtaPct>
<FirstName>String</FirstName>
<Initial>String</Initial>
<Plate>String</Plate>
<Vehicle>String</Vehicle>
</Driver>
<DropoffAddress>String</DropoffAddress>
<DropoffName>String</DropoffName>
<ExpiresUtc>0001-01-01T00:00:00</ExpiresUtc>
<FacilityNoun>String</FacilityNoun>
<FacilityNounEs>String</FacilityNounEs>
<GateCode>String</GateCode>
<Handoff>String</Handoff>
<HandoffCode>String</HandoffCode>
<Instructions>String</Instructions>
<IsAsap>false</IsAsap>
<LevelName>String</LevelName>
<Live>false</Live>
<LiveEta>false</LiveEta>
<Messages>
<CourierTrackMessage>
<AtText>String</AtText>
<Body>String</Body>
<Mine>false</Mine>
<Office>false</Office>
<Who>String</Who>
</CourierTrackMessage>
</Messages>
<MessagesOpen>false</MessagesOpen>
<Missed>
<AutoRebook>false</AutoRebook>
<Code>String</Code>
<Fee>0</Fee>
<RebookWindowText>String</RebookWindowText>
<Slots>
<CourierTrackSlot>
<Day>String</Day>
<DayEs>String</DayEs>
<Id>String</Id>
<Win>String</Win>
</CourierTrackSlot>
</Slots>
<WaitedMin>0</WaitedMin>
</Missed>
<Proof>
<AtText>String</AtText>
<Attempts>0</Attempts>
<ContactedText>String</ContactedText>
<DamageNote>String</DamageNote>
<DeliveredTo>String</DeliveredTo>
<EachScanned>false</EachScanned>
<EachTagged>false</EachTagged>
<GpsOk>false</GpsOk>
<Kind>String</Kind>
<PhotoUrl>String</PhotoUrl>
<Units>0</Units>
<WaitedMin>0</WaitedMin>
</Proof>
<Rating>
<Stars>0</Stars>
<Tags>String</Tags>
<Tip>0</Tip>
<TipStatus>String</TipStatus>
</Rating>
<ReadyPromise>String</ReadyPromise>
<RunCode>String</RunCode>
<ServerUtc>0001-01-01T00:00:00</ServerUtc>
<Shape>String</Shape>
<State>String</State>
<StopCount>0</StopCount>
<StopPosition>0</StopPosition>
<Template>String</Template>
<ThreadHrs>0</ThreadHrs>
<Times xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</Times>
<TipAllowed>false</TipAllowed>
<TipsPct>0</TipsPct>
<UnitMany>String</UnitMany>
<UnitManyEs>String</UnitManyEs>
<UnitOne>String</UnitOne>
<UnitOneEs>String</UnitOneEs>
<Units>0</Units>
<UnitsCounted>false</UnitsCounted>
<WindowText>String</WindowText>
</Courier>
<CustomerName>String</CustomerName>
<DriverName>String</DriverName>
<Eta>String</Eta>
<Expired>false</Expired>
<Fare>0</Fare>
<FromLoc>String</FromLoc>
<Headline>String</Headline>
<Invalid>false</Invalid>
<IsClosed>false</IsClosed>
<Kind>String</Kind>
<Notice>String</Notice>
<PayMode>String</PayMode>
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
<Stage>String</Stage>
<Steps>
<DispatchTrackStepView>
<At>0001-01-01T00:00:00</At>
<Current>false</Current>
<Done>false</Done>
<Name>String</Name>
</DispatchTrackStepView>
</Steps>
<Sub>String</Sub>
<ToLoc>String</ToLoc>
<What>String</What>
</DispatchTrackResponse>