Trendsic Platform Service

<back to all web services

DispatchIncidentMessageRequest

Requires Authentication
Requires any of the permissions:DISPATCH:HAUL:MANAGE, DISPATCH:JOB:MANAGE, DISPATCH:ONDEMAND:MANAGE
The following routes are available for this service:
POST,OPTIONS/v1/dispatch/incidents/{IncidentId}/message
import 'package:servicestack/servicestack.dart';

class DispatchIncidentMessageView implements IConvertible
{
    int? MessageId;
    String? Who;
    String? Role;
    String? Msg;
    DateTime? AtUtc;

    DispatchIncidentMessageView({this.MessageId,this.Who,this.Role,this.Msg,this.AtUtc});
    DispatchIncidentMessageView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        MessageId = json['MessageId'];
        Who = json['Who'];
        Role = json['Role'];
        Msg = json['Msg'];
        AtUtc = JsonConverters.fromJson(json['AtUtc'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'MessageId': MessageId,
        'Who': Who,
        'Role': Role,
        'Msg': Msg,
        'AtUtc': JsonConverters.toJson(AtUtc,'DateTime',context!)
    };

    getTypeName() => "DispatchIncidentMessageView";
    TypeContext? context = _ctx;
}

class DispatchIncidentView implements IConvertible
{
    int? IncidentId;
    String? Code;
    String? Kind;
    String? KindDetail;
    int? LoadId;
    String? LoadCode;
    String? LoadStatus;
    String? SourceLabel;
    String? DestinationLabel;
    String? QtyText;
    String? TruckCode;
    String? TruckLabel;
    String? LocationText;
    double? Lat;
    double? Lng;
    String? DriverPref;
    String? OpenedBy;
    String? OpenedVia;
    String? Resolver;
    String? Status;
    String? TruckRecovery;
    DateTime? TruckRecoveredUtc;
    String? LoadRecovery;
    DateTime? LoadRecoveredUtc;
    String? TransloadTruckCode;
    int? HoldId;
    String? HoldCode;
    int? PhotoCount;
    DateTime? OpenedUtc;
    DateTime? ResolvedUtc;
    String? ResolvedBy;
    DateTime? ReopenedUtc;
    List<DispatchIncidentMessageView>? Messages = [];

    DispatchIncidentView({this.IncidentId,this.Code,this.Kind,this.KindDetail,this.LoadId,this.LoadCode,this.LoadStatus,this.SourceLabel,this.DestinationLabel,this.QtyText,this.TruckCode,this.TruckLabel,this.LocationText,this.Lat,this.Lng,this.DriverPref,this.OpenedBy,this.OpenedVia,this.Resolver,this.Status,this.TruckRecovery,this.TruckRecoveredUtc,this.LoadRecovery,this.LoadRecoveredUtc,this.TransloadTruckCode,this.HoldId,this.HoldCode,this.PhotoCount,this.OpenedUtc,this.ResolvedUtc,this.ResolvedBy,this.ReopenedUtc,this.Messages});
    DispatchIncidentView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        IncidentId = json['IncidentId'];
        Code = json['Code'];
        Kind = json['Kind'];
        KindDetail = json['KindDetail'];
        LoadId = json['LoadId'];
        LoadCode = json['LoadCode'];
        LoadStatus = json['LoadStatus'];
        SourceLabel = json['SourceLabel'];
        DestinationLabel = json['DestinationLabel'];
        QtyText = json['QtyText'];
        TruckCode = json['TruckCode'];
        TruckLabel = json['TruckLabel'];
        LocationText = json['LocationText'];
        Lat = JsonConverters.toDouble(json['Lat']);
        Lng = JsonConverters.toDouble(json['Lng']);
        DriverPref = json['DriverPref'];
        OpenedBy = json['OpenedBy'];
        OpenedVia = json['OpenedVia'];
        Resolver = json['Resolver'];
        Status = json['Status'];
        TruckRecovery = json['TruckRecovery'];
        TruckRecoveredUtc = JsonConverters.fromJson(json['TruckRecoveredUtc'],'DateTime',context!);
        LoadRecovery = json['LoadRecovery'];
        LoadRecoveredUtc = JsonConverters.fromJson(json['LoadRecoveredUtc'],'DateTime',context!);
        TransloadTruckCode = json['TransloadTruckCode'];
        HoldId = json['HoldId'];
        HoldCode = json['HoldCode'];
        PhotoCount = json['PhotoCount'];
        OpenedUtc = JsonConverters.fromJson(json['OpenedUtc'],'DateTime',context!);
        ResolvedUtc = JsonConverters.fromJson(json['ResolvedUtc'],'DateTime',context!);
        ResolvedBy = json['ResolvedBy'];
        ReopenedUtc = JsonConverters.fromJson(json['ReopenedUtc'],'DateTime',context!);
        Messages = JsonConverters.fromJson(json['Messages'],'List<DispatchIncidentMessageView>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'IncidentId': IncidentId,
        'Code': Code,
        'Kind': Kind,
        'KindDetail': KindDetail,
        'LoadId': LoadId,
        'LoadCode': LoadCode,
        'LoadStatus': LoadStatus,
        'SourceLabel': SourceLabel,
        'DestinationLabel': DestinationLabel,
        'QtyText': QtyText,
        'TruckCode': TruckCode,
        'TruckLabel': TruckLabel,
        'LocationText': LocationText,
        'Lat': Lat,
        'Lng': Lng,
        'DriverPref': DriverPref,
        'OpenedBy': OpenedBy,
        'OpenedVia': OpenedVia,
        'Resolver': Resolver,
        'Status': Status,
        'TruckRecovery': TruckRecovery,
        'TruckRecoveredUtc': JsonConverters.toJson(TruckRecoveredUtc,'DateTime',context!),
        'LoadRecovery': LoadRecovery,
        'LoadRecoveredUtc': JsonConverters.toJson(LoadRecoveredUtc,'DateTime',context!),
        'TransloadTruckCode': TransloadTruckCode,
        'HoldId': HoldId,
        'HoldCode': HoldCode,
        'PhotoCount': PhotoCount,
        'OpenedUtc': JsonConverters.toJson(OpenedUtc,'DateTime',context!),
        'ResolvedUtc': JsonConverters.toJson(ResolvedUtc,'DateTime',context!),
        'ResolvedBy': ResolvedBy,
        'ReopenedUtc': JsonConverters.toJson(ReopenedUtc,'DateTime',context!),
        'Messages': JsonConverters.toJson(Messages,'List<DispatchIncidentMessageView>',context!)
    };

    getTypeName() => "DispatchIncidentView";
    TypeContext? context = _ctx;
}

class DispatchIncidentTruckView implements IConvertible
{
    String? Code;
    String? DriverName;
    String? Stage;
    String? OpenLoadCode;

    DispatchIncidentTruckView({this.Code,this.DriverName,this.Stage,this.OpenLoadCode});
    DispatchIncidentTruckView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Code = json['Code'];
        DriverName = json['DriverName'];
        Stage = json['Stage'];
        OpenLoadCode = json['OpenLoadCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Code': Code,
        'DriverName': DriverName,
        'Stage': Stage,
        'OpenLoadCode': OpenLoadCode
    };

    getTypeName() => "DispatchIncidentTruckView";
    TypeContext? context = _ctx;
}

class DispatchIncidentsResponse implements IConvertible
{
    List<DispatchIncidentView>? Incidents = [];
    List<DispatchIncidentTruckView>? EmptyTrucks = [];
    List<DispatchIncidentTruckView>? Trucks = [];
    String? TransloadTruckCode;
    ResponseStatus? ResponseStatus;

    DispatchIncidentsResponse({this.Incidents,this.EmptyTrucks,this.Trucks,this.TransloadTruckCode,this.ResponseStatus});
    DispatchIncidentsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Incidents = JsonConverters.fromJson(json['Incidents'],'List<DispatchIncidentView>',context!);
        EmptyTrucks = JsonConverters.fromJson(json['EmptyTrucks'],'List<DispatchIncidentTruckView>',context!);
        Trucks = JsonConverters.fromJson(json['Trucks'],'List<DispatchIncidentTruckView>',context!);
        TransloadTruckCode = json['TransloadTruckCode'];
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Incidents': JsonConverters.toJson(Incidents,'List<DispatchIncidentView>',context!),
        'EmptyTrucks': JsonConverters.toJson(EmptyTrucks,'List<DispatchIncidentTruckView>',context!),
        'Trucks': JsonConverters.toJson(Trucks,'List<DispatchIncidentTruckView>',context!),
        'TransloadTruckCode': TransloadTruckCode,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "DispatchIncidentsResponse";
    TypeContext? context = _ctx;
}

class DispatchIncidentMessageRequest implements IConvertible
{
    int? IncidentId;
    String? Msg;

    DispatchIncidentMessageRequest({this.IncidentId,this.Msg});
    DispatchIncidentMessageRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        IncidentId = json['IncidentId'];
        Msg = json['Msg'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'IncidentId': IncidentId,
        'Msg': Msg
    };

    getTypeName() => "DispatchIncidentMessageRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'DispatchIncidentMessageView': TypeInfo(TypeOf.Class, create:() => DispatchIncidentMessageView()),
    'DispatchIncidentView': TypeInfo(TypeOf.Class, create:() => DispatchIncidentView()),
    'List<DispatchIncidentMessageView>': TypeInfo(TypeOf.Class, create:() => <DispatchIncidentMessageView>[]),
    'DispatchIncidentTruckView': TypeInfo(TypeOf.Class, create:() => DispatchIncidentTruckView()),
    'DispatchIncidentsResponse': TypeInfo(TypeOf.Class, create:() => DispatchIncidentsResponse()),
    'List<DispatchIncidentView>': TypeInfo(TypeOf.Class, create:() => <DispatchIncidentView>[]),
    'List<DispatchIncidentTruckView>': TypeInfo(TypeOf.Class, create:() => <DispatchIncidentTruckView>[]),
    'DispatchIncidentMessageRequest': TypeInfo(TypeOf.Class, create:() => DispatchIncidentMessageRequest()),
});

Dart DispatchIncidentMessageRequest DTOs

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

HTTP + OTHER

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

POST /v1/dispatch/incidents/{IncidentId}/message HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"IncidentId":0,"Msg":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"Incidents":[{"IncidentId":0,"Code":"String","Kind":"String","KindDetail":"String","LoadId":0,"LoadCode":"String","LoadStatus":"String","SourceLabel":"String","DestinationLabel":"String","QtyText":"String","TruckCode":"String","TruckLabel":"String","LocationText":"String","Lat":0,"Lng":0,"DriverPref":"String","OpenedBy":"String","OpenedVia":"String","Resolver":"String","Status":"String","TruckRecovery":"String","TruckRecoveredUtc":"0001-01-01T00:00:00.0000000","LoadRecovery":"String","LoadRecoveredUtc":"0001-01-01T00:00:00.0000000","TransloadTruckCode":"String","HoldId":0,"HoldCode":"String","PhotoCount":0,"OpenedUtc":"0001-01-01T00:00:00.0000000","ResolvedUtc":"0001-01-01T00:00:00.0000000","ResolvedBy":"String","ReopenedUtc":"0001-01-01T00:00:00.0000000","Messages":[{"MessageId":0,"Who":"String","Role":"String","Msg":"String","AtUtc":"0001-01-01T00:00:00.0000000"}]}],"EmptyTrucks":[{"Code":"String","DriverName":"String","Stage":"String","OpenLoadCode":"String"}],"Trucks":[{"Code":"String","DriverName":"String","Stage":"String","OpenLoadCode":"String"}],"TransloadTruckCode":"String","ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}