Trendsic Platform Service

<back to all web services

WorkerMessagesRequest

Requires Authentication
The following routes are available for this service:
GET,POST,OPTIONS/v1/worker/messages
import 'package:servicestack/servicestack.dart';

class WorkerCrew implements IConvertible
{
    int? CrewID;
    String? CrewName;
    bool? IsManager;

    WorkerCrew({this.CrewID,this.CrewName,this.IsManager});
    WorkerCrew.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CrewID = json['CrewID'];
        CrewName = json['CrewName'];
        IsManager = json['IsManager'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CrewID': CrewID,
        'CrewName': CrewName,
        'IsManager': IsManager
    };

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

class WorkerCrewMessage implements IConvertible
{
    int? CrewMessageID;
    int? CrewID;
    String? CrewName;
    int? SenderContactID;
    String? SenderName;
    String? Body;
    bool? IsAlert;
    String? CreatedAtLabel;
    bool? Mine;

    WorkerCrewMessage({this.CrewMessageID,this.CrewID,this.CrewName,this.SenderContactID,this.SenderName,this.Body,this.IsAlert,this.CreatedAtLabel,this.Mine});
    WorkerCrewMessage.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CrewMessageID = json['CrewMessageID'];
        CrewID = json['CrewID'];
        CrewName = json['CrewName'];
        SenderContactID = json['SenderContactID'];
        SenderName = json['SenderName'];
        Body = json['Body'];
        IsAlert = json['IsAlert'];
        CreatedAtLabel = json['CreatedAtLabel'];
        Mine = json['Mine'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CrewMessageID': CrewMessageID,
        'CrewID': CrewID,
        'CrewName': CrewName,
        'SenderContactID': SenderContactID,
        'SenderName': SenderName,
        'Body': Body,
        'IsAlert': IsAlert,
        'CreatedAtLabel': CreatedAtLabel,
        'Mine': Mine
    };

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

class WorkerMessagesResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<WorkerCrew>? Crews = [];
    List<WorkerCrewMessage>? Messages = [];
    bool? Sent;

    WorkerMessagesResponse({this.ResponseStatus,this.Crews,this.Messages,this.Sent});
    WorkerMessagesResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Crews = JsonConverters.fromJson(json['Crews'],'List<WorkerCrew>',context!);
        Messages = JsonConverters.fromJson(json['Messages'],'List<WorkerCrewMessage>',context!);
        Sent = json['Sent'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Crews': JsonConverters.toJson(Crews,'List<WorkerCrew>',context!),
        'Messages': JsonConverters.toJson(Messages,'List<WorkerCrewMessage>',context!),
        'Sent': Sent
    };

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

class WorkerMessagesRequest implements IConvertible
{
    int? CrewID;
    String? Body;
    bool? IsAlert;

    WorkerMessagesRequest({this.CrewID,this.Body,this.IsAlert});
    WorkerMessagesRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CrewID = json['CrewID'];
        Body = json['Body'];
        IsAlert = json['IsAlert'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CrewID': CrewID,
        'Body': Body,
        'IsAlert': IsAlert
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'WorkerCrew': TypeInfo(TypeOf.Class, create:() => WorkerCrew()),
    'WorkerCrewMessage': TypeInfo(TypeOf.Class, create:() => WorkerCrewMessage()),
    'WorkerMessagesResponse': TypeInfo(TypeOf.Class, create:() => WorkerMessagesResponse()),
    'List<WorkerCrew>': TypeInfo(TypeOf.Class, create:() => <WorkerCrew>[]),
    'List<WorkerCrewMessage>': TypeInfo(TypeOf.Class, create:() => <WorkerCrewMessage>[]),
    'WorkerMessagesRequest': TypeInfo(TypeOf.Class, create:() => WorkerMessagesRequest()),
});

Dart WorkerMessagesRequest 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/worker/messages HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"CrewID":0,"Body":"String","IsAlert":false}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Crews":[{"CrewID":0,"CrewName":"String","IsManager":false}],"Messages":[{"CrewMessageID":0,"CrewID":0,"CrewName":"String","SenderContactID":0,"SenderName":"String","Body":"String","IsAlert":false,"CreatedAtLabel":"String","Mine":false}],"Sent":false}