Trendsic Platform Service

<back to all web services

ToolboxTalkTodayRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/safety/toolbox/today
import 'package:servicestack/servicestack.dart';

class ToolboxRosterMember implements IConvertible
{
    int? ContactID;
    String? ContactName;
    bool? HasAcked;

    ToolboxRosterMember({this.ContactID,this.ContactName,this.HasAcked});
    ToolboxRosterMember.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ContactID = json['ContactID'];
        ContactName = json['ContactName'];
        HasAcked = json['HasAcked'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ContactID': ContactID,
        'ContactName': ContactName,
        'HasAcked': HasAcked
    };

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

class ToolboxTalkToday implements IConvertible
{
    int? ToolboxTalkID;
    String? Topic;
    String? Presenter;
    int? AckCount;
    int? CrewTotal;
    List<ToolboxRosterMember>? Roster = [];

    ToolboxTalkToday({this.ToolboxTalkID,this.Topic,this.Presenter,this.AckCount,this.CrewTotal,this.Roster});
    ToolboxTalkToday.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ToolboxTalkID = json['ToolboxTalkID'];
        Topic = json['Topic'];
        Presenter = json['Presenter'];
        AckCount = json['AckCount'];
        CrewTotal = json['CrewTotal'];
        Roster = JsonConverters.fromJson(json['Roster'],'List<ToolboxRosterMember>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ToolboxTalkID': ToolboxTalkID,
        'Topic': Topic,
        'Presenter': Presenter,
        'AckCount': AckCount,
        'CrewTotal': CrewTotal,
        'Roster': JsonConverters.toJson(Roster,'List<ToolboxRosterMember>',context!)
    };

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

class ToolboxTalkTodayResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    ToolboxTalkToday? Talk;

    ToolboxTalkTodayResponse({this.ResponseStatus,this.Talk});
    ToolboxTalkTodayResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Talk = JsonConverters.fromJson(json['Talk'],'ToolboxTalkToday',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Talk': JsonConverters.toJson(Talk,'ToolboxTalkToday',context!)
    };

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

class ToolboxTalkTodayRequest implements IConvertible
{
    ToolboxTalkTodayRequest();
    ToolboxTalkTodayRequest.fromJson(Map<String, dynamic> json) : super();
    fromMap(Map<String, dynamic> json) {
        return this;
    }

    Map<String, dynamic> toJson() => {};
    getTypeName() => "ToolboxTalkTodayRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'ToolboxRosterMember': TypeInfo(TypeOf.Class, create:() => ToolboxRosterMember()),
    'ToolboxTalkToday': TypeInfo(TypeOf.Class, create:() => ToolboxTalkToday()),
    'List<ToolboxRosterMember>': TypeInfo(TypeOf.Class, create:() => <ToolboxRosterMember>[]),
    'ToolboxTalkTodayResponse': TypeInfo(TypeOf.Class, create:() => ToolboxTalkTodayResponse()),
    'ToolboxTalkTodayRequest': TypeInfo(TypeOf.Class, create:() => ToolboxTalkTodayRequest()),
});

Dart ToolboxTalkTodayRequest 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.

GET /v1/safety/toolbox/today HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	Talk: 
	{
		ToolboxTalkID: 0,
		Topic: String,
		Presenter: String,
		AckCount: 0,
		CrewTotal: 0,
		Roster: 
		[
			{
				ContactID: 0,
				ContactName: String,
				HasAcked: False
			}
		]
	}
}