| POST,OPTIONS | /v1/safety/incidents |
|---|
import 'package:servicestack/servicestack.dart';
class SafetyIncident implements IConvertible
{
int? SafetyIncidentID;
String? SafetyIncidentUID;
String? BranchId;
int? ProjectID;
String? IncidentNo;
String? IncidentType;
String? Severity;
String? Status;
String? Title;
String? Location;
String? CrewLabel;
String? Description;
String? ReportedBy;
bool? IsRecordable;
DateTime? OccurredAt;
DateTime? ClosedAt;
String? SourceRef;
String? CreatedBy;
DateTime? CreatedAt;
DateTime? UpdatedAt;
int? DaysAgo;
SafetyIncident({this.SafetyIncidentID,this.SafetyIncidentUID,this.BranchId,this.ProjectID,this.IncidentNo,this.IncidentType,this.Severity,this.Status,this.Title,this.Location,this.CrewLabel,this.Description,this.ReportedBy,this.IsRecordable,this.OccurredAt,this.ClosedAt,this.SourceRef,this.CreatedBy,this.CreatedAt,this.UpdatedAt,this.DaysAgo});
SafetyIncident.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
SafetyIncidentID = json['SafetyIncidentID'];
SafetyIncidentUID = json['SafetyIncidentUID'];
BranchId = json['BranchId'];
ProjectID = json['ProjectID'];
IncidentNo = json['IncidentNo'];
IncidentType = json['IncidentType'];
Severity = json['Severity'];
Status = json['Status'];
Title = json['Title'];
Location = json['Location'];
CrewLabel = json['CrewLabel'];
Description = json['Description'];
ReportedBy = json['ReportedBy'];
IsRecordable = json['IsRecordable'];
OccurredAt = JsonConverters.fromJson(json['OccurredAt'],'DateTime',context!);
ClosedAt = JsonConverters.fromJson(json['ClosedAt'],'DateTime',context!);
SourceRef = json['SourceRef'];
CreatedBy = json['CreatedBy'];
CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
DaysAgo = json['DaysAgo'];
return this;
}
Map<String, dynamic> toJson() => {
'SafetyIncidentID': SafetyIncidentID,
'SafetyIncidentUID': SafetyIncidentUID,
'BranchId': BranchId,
'ProjectID': ProjectID,
'IncidentNo': IncidentNo,
'IncidentType': IncidentType,
'Severity': Severity,
'Status': Status,
'Title': Title,
'Location': Location,
'CrewLabel': CrewLabel,
'Description': Description,
'ReportedBy': ReportedBy,
'IsRecordable': IsRecordable,
'OccurredAt': JsonConverters.toJson(OccurredAt,'DateTime',context!),
'ClosedAt': JsonConverters.toJson(ClosedAt,'DateTime',context!),
'SourceRef': SourceRef,
'CreatedBy': CreatedBy,
'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!),
'DaysAgo': DaysAgo
};
getTypeName() => "SafetyIncident";
TypeContext? context = _ctx;
}
class SafetyIncidentResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
SafetyIncident? Incident;
SafetyIncidentResponse({this.ResponseStatus,this.Incident});
SafetyIncidentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
Incident = JsonConverters.fromJson(json['Incident'],'SafetyIncident',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'Incident': JsonConverters.toJson(Incident,'SafetyIncident',context!)
};
getTypeName() => "SafetyIncidentResponse";
TypeContext? context = _ctx;
}
class SafetyIncidentCreateRequest implements IConvertible
{
String? IncidentType;
String? Severity;
String? Title;
String? Location;
String? CrewLabel;
String? Description;
String? ReportedBy;
bool? IsRecordable;
DateTime? OccurredAt;
int? ProjectID;
String? SourceRef;
SafetyIncidentCreateRequest({this.IncidentType,this.Severity,this.Title,this.Location,this.CrewLabel,this.Description,this.ReportedBy,this.IsRecordable,this.OccurredAt,this.ProjectID,this.SourceRef});
SafetyIncidentCreateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
IncidentType = json['IncidentType'];
Severity = json['Severity'];
Title = json['Title'];
Location = json['Location'];
CrewLabel = json['CrewLabel'];
Description = json['Description'];
ReportedBy = json['ReportedBy'];
IsRecordable = json['IsRecordable'];
OccurredAt = JsonConverters.fromJson(json['OccurredAt'],'DateTime',context!);
ProjectID = json['ProjectID'];
SourceRef = json['SourceRef'];
return this;
}
Map<String, dynamic> toJson() => {
'IncidentType': IncidentType,
'Severity': Severity,
'Title': Title,
'Location': Location,
'CrewLabel': CrewLabel,
'Description': Description,
'ReportedBy': ReportedBy,
'IsRecordable': IsRecordable,
'OccurredAt': JsonConverters.toJson(OccurredAt,'DateTime',context!),
'ProjectID': ProjectID,
'SourceRef': SourceRef
};
getTypeName() => "SafetyIncidentCreateRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'SafetyIncident': TypeInfo(TypeOf.Class, create:() => SafetyIncident()),
'SafetyIncidentResponse': TypeInfo(TypeOf.Class, create:() => SafetyIncidentResponse()),
'SafetyIncidentCreateRequest': TypeInfo(TypeOf.Class, create:() => SafetyIncidentCreateRequest()),
});
Dart SafetyIncidentCreateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/safety/incidents HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"IncidentType":"String","Severity":"String","Title":"String","Location":"String","CrewLabel":"String","Description":"String","ReportedBy":"String","IsRecordable":false,"OccurredAt":"0001-01-01T00:00:00.0000000","ProjectID":0,"SourceRef":"String"}
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"}},"Incident":{"SafetyIncidentID":0,"SafetyIncidentUID":"00000000000000000000000000000000","BranchId":"00000000000000000000000000000000","ProjectID":0,"IncidentNo":"String","IncidentType":"String","Severity":"String","Status":"String","Title":"String","Location":"String","CrewLabel":"String","Description":"String","ReportedBy":"String","IsRecordable":false,"OccurredAt":"0001-01-01T00:00:00.0000000","ClosedAt":"0001-01-01T00:00:00.0000000","SourceRef":"String","CreatedBy":"String","CreatedAt":"0001-01-01T00:00:00.0000000","UpdatedAt":"0001-01-01T00:00:00.0000000","DaysAgo":0}}