Trendsic Platform Service

<back to all web services

EquipmentDvirSignOffRequest

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/Equipment/{EquipmentID}/dvir/signoff
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class DvirUnitRef implements IConvertible
{
    int? EquipmentID;
    String? Unit;

    DvirUnitRef({this.EquipmentID,this.Unit});
    DvirUnitRef.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'EquipmentID': EquipmentID,
        'Unit': Unit
    };

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

class DvirPhotoView implements IConvertible
{
    int? WorkPhotoID;
    String? DefectKey;
    String? Url;
    String? MarkedUrl;
    DateTime? CapturedAtUtc;
    double? Lat;
    double? Lng;

    DvirPhotoView({this.WorkPhotoID,this.DefectKey,this.Url,this.MarkedUrl,this.CapturedAtUtc,this.Lat,this.Lng});
    DvirPhotoView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        WorkPhotoID = json['WorkPhotoID'];
        DefectKey = json['DefectKey'];
        Url = json['Url'];
        MarkedUrl = json['MarkedUrl'];
        CapturedAtUtc = JsonConverters.fromJson(json['CapturedAtUtc'],'DateTime',context!);
        Lat = JsonConverters.toDouble(json['Lat']);
        Lng = JsonConverters.toDouble(json['Lng']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'WorkPhotoID': WorkPhotoID,
        'DefectKey': DefectKey,
        'Url': Url,
        'MarkedUrl': MarkedUrl,
        'CapturedAtUtc': JsonConverters.toJson(CapturedAtUtc,'DateTime',context!),
        'Lat': Lat,
        'Lng': Lng
    };

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

class DvirDefectView implements IConvertible
{
    int? DvirDefectID;
    String? ClientKey;
    int? DvirReportID;
    String? ReportNumber;
    int? EquipmentID;
    String? Unit;
    String? ItemKey;
    String? Label;
    String? FormLine;
    bool? IsCustom;
    String? Severity;
    String? SeverityText;
    String? Note;
    String? Source;
    String? ReportedByName;
    DateTime? ReportedAtUtc;
    int? EquipmentMaintenanceID;
    String? Outcome;
    String? OutcomeText;
    String? OutcomeNote;
    String? ScheduledFor;
    String? SignedOffByName;
    DateTime? SignedOffAtUtc;
    bool? IsOpen;
    bool? Withdrawn;
    int? PhotoCount;
    List<DvirPhotoView>? Photos = [];

    DvirDefectView({this.DvirDefectID,this.ClientKey,this.DvirReportID,this.ReportNumber,this.EquipmentID,this.Unit,this.ItemKey,this.Label,this.FormLine,this.IsCustom,this.Severity,this.SeverityText,this.Note,this.Source,this.ReportedByName,this.ReportedAtUtc,this.EquipmentMaintenanceID,this.Outcome,this.OutcomeText,this.OutcomeNote,this.ScheduledFor,this.SignedOffByName,this.SignedOffAtUtc,this.IsOpen,this.Withdrawn,this.PhotoCount,this.Photos});
    DvirDefectView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DvirDefectID = json['DvirDefectID'];
        ClientKey = json['ClientKey'];
        DvirReportID = json['DvirReportID'];
        ReportNumber = json['ReportNumber'];
        EquipmentID = json['EquipmentID'];
        Unit = json['Unit'];
        ItemKey = json['ItemKey'];
        Label = json['Label'];
        FormLine = json['FormLine'];
        IsCustom = json['IsCustom'];
        Severity = json['Severity'];
        SeverityText = json['SeverityText'];
        Note = json['Note'];
        Source = json['Source'];
        ReportedByName = json['ReportedByName'];
        ReportedAtUtc = JsonConverters.fromJson(json['ReportedAtUtc'],'DateTime',context!);
        EquipmentMaintenanceID = json['EquipmentMaintenanceID'];
        Outcome = json['Outcome'];
        OutcomeText = json['OutcomeText'];
        OutcomeNote = json['OutcomeNote'];
        ScheduledFor = json['ScheduledFor'];
        SignedOffByName = json['SignedOffByName'];
        SignedOffAtUtc = JsonConverters.fromJson(json['SignedOffAtUtc'],'DateTime',context!);
        IsOpen = json['IsOpen'];
        Withdrawn = json['Withdrawn'];
        PhotoCount = json['PhotoCount'];
        Photos = JsonConverters.fromJson(json['Photos'],'List<DvirPhotoView>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DvirDefectID': DvirDefectID,
        'ClientKey': ClientKey,
        'DvirReportID': DvirReportID,
        'ReportNumber': ReportNumber,
        'EquipmentID': EquipmentID,
        'Unit': Unit,
        'ItemKey': ItemKey,
        'Label': Label,
        'FormLine': FormLine,
        'IsCustom': IsCustom,
        'Severity': Severity,
        'SeverityText': SeverityText,
        'Note': Note,
        'Source': Source,
        'ReportedByName': ReportedByName,
        'ReportedAtUtc': JsonConverters.toJson(ReportedAtUtc,'DateTime',context!),
        'EquipmentMaintenanceID': EquipmentMaintenanceID,
        'Outcome': Outcome,
        'OutcomeText': OutcomeText,
        'OutcomeNote': OutcomeNote,
        'ScheduledFor': ScheduledFor,
        'SignedOffByName': SignedOffByName,
        'SignedOffAtUtc': JsonConverters.toJson(SignedOffAtUtc,'DateTime',context!),
        'IsOpen': IsOpen,
        'Withdrawn': Withdrawn,
        'PhotoCount': PhotoCount,
        'Photos': JsonConverters.toJson(Photos,'List<DvirPhotoView>',context!)
    };

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

class DvirVehicleView implements IConvertible
{
    int? EquipmentID;
    String? Unit;
    String? Name;
    String? VehicleType;
    bool? IsTrailer;
    String? VehicleStatus;
    String? Status;
    String? StatusText;
    String? Line;
    String? FirstUnsafeReport;
    int? OpenCount;
    String? LocalToday;
    bool? NeedsPreTrip;
    bool? NeedsReview;
    List<int>? ReviewReportIds = [];
    List<DvirUnitRef>? Trailers = [];
    int? LastOdometer;
    String? InUseBy;
    bool? DrivingNow;
    int? TodayPreTripId;
    int? TodayPostTripId;
    List<DvirDefectView>? OpenDefects = [];

    DvirVehicleView({this.EquipmentID,this.Unit,this.Name,this.VehicleType,this.IsTrailer,this.VehicleStatus,this.Status,this.StatusText,this.Line,this.FirstUnsafeReport,this.OpenCount,this.LocalToday,this.NeedsPreTrip,this.NeedsReview,this.ReviewReportIds,this.Trailers,this.LastOdometer,this.InUseBy,this.DrivingNow,this.TodayPreTripId,this.TodayPostTripId,this.OpenDefects});
    DvirVehicleView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        EquipmentID = json['EquipmentID'];
        Unit = json['Unit'];
        Name = json['Name'];
        VehicleType = json['VehicleType'];
        IsTrailer = json['IsTrailer'];
        VehicleStatus = json['VehicleStatus'];
        Status = json['Status'];
        StatusText = json['StatusText'];
        Line = json['Line'];
        FirstUnsafeReport = json['FirstUnsafeReport'];
        OpenCount = json['OpenCount'];
        LocalToday = json['LocalToday'];
        NeedsPreTrip = json['NeedsPreTrip'];
        NeedsReview = json['NeedsReview'];
        ReviewReportIds = JsonConverters.fromJson(json['ReviewReportIds'],'List<int>',context!);
        Trailers = JsonConverters.fromJson(json['Trailers'],'List<DvirUnitRef>',context!);
        LastOdometer = json['LastOdometer'];
        InUseBy = json['InUseBy'];
        DrivingNow = json['DrivingNow'];
        TodayPreTripId = json['TodayPreTripId'];
        TodayPostTripId = json['TodayPostTripId'];
        OpenDefects = JsonConverters.fromJson(json['OpenDefects'],'List<DvirDefectView>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'EquipmentID': EquipmentID,
        'Unit': Unit,
        'Name': Name,
        'VehicleType': VehicleType,
        'IsTrailer': IsTrailer,
        'VehicleStatus': VehicleStatus,
        'Status': Status,
        'StatusText': StatusText,
        'Line': Line,
        'FirstUnsafeReport': FirstUnsafeReport,
        'OpenCount': OpenCount,
        'LocalToday': LocalToday,
        'NeedsPreTrip': NeedsPreTrip,
        'NeedsReview': NeedsReview,
        'ReviewReportIds': JsonConverters.toJson(ReviewReportIds,'List<int>',context!),
        'Trailers': JsonConverters.toJson(Trailers,'List<DvirUnitRef>',context!),
        'LastOdometer': LastOdometer,
        'InUseBy': InUseBy,
        'DrivingNow': DrivingNow,
        'TodayPreTripId': TodayPreTripId,
        'TodayPostTripId': TodayPostTripId,
        'OpenDefects': JsonConverters.toJson(OpenDefects,'List<DvirDefectView>',context!)
    };

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

class DvirSignatureView implements IConvertible
{
    int? SignatureRecordID;
    String? Role;
    String? SignerName;
    DateTime? SignedAt;
    String? ImageUrl;

    DvirSignatureView({this.SignatureRecordID,this.Role,this.SignerName,this.SignedAt,this.ImageUrl});
    DvirSignatureView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SignatureRecordID = json['SignatureRecordID'];
        Role = json['Role'];
        SignerName = json['SignerName'];
        SignedAt = JsonConverters.fromJson(json['SignedAt'],'DateTime',context!);
        ImageUrl = json['ImageUrl'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SignatureRecordID': SignatureRecordID,
        'Role': Role,
        'SignerName': SignerName,
        'SignedAt': JsonConverters.toJson(SignedAt,'DateTime',context!),
        'ImageUrl': ImageUrl
    };

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

class DvirReportView implements IConvertible
{
    int? DvirReportID;
    String? Number;
    String? Kind;
    String? KindText;
    int? EquipmentID;
    String? Unit;
    List<DvirUnitRef>? Trailers = [];
    int? ContactID;
    String? DriverName;
    String? Board;
    String? ForDate;
    DateTime? FiledAtUtc;
    DateTime? SavedAtUtc;
    bool? IsLate;
    bool? IsAway;
    bool? IsSatisfactory;
    int? Odometer;
    String? LocationText;
    String? Remarks;
    String? ReviewedByName;
    DateTime? ReviewedAtUtc;
    String? Chip;
    List<DvirDefectView>? Defects = [];
    List<DvirSignatureView>? Signatures = [];

    DvirReportView({this.DvirReportID,this.Number,this.Kind,this.KindText,this.EquipmentID,this.Unit,this.Trailers,this.ContactID,this.DriverName,this.Board,this.ForDate,this.FiledAtUtc,this.SavedAtUtc,this.IsLate,this.IsAway,this.IsSatisfactory,this.Odometer,this.LocationText,this.Remarks,this.ReviewedByName,this.ReviewedAtUtc,this.Chip,this.Defects,this.Signatures});
    DvirReportView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DvirReportID = json['DvirReportID'];
        Number = json['Number'];
        Kind = json['Kind'];
        KindText = json['KindText'];
        EquipmentID = json['EquipmentID'];
        Unit = json['Unit'];
        Trailers = JsonConverters.fromJson(json['Trailers'],'List<DvirUnitRef>',context!);
        ContactID = json['ContactID'];
        DriverName = json['DriverName'];
        Board = json['Board'];
        ForDate = json['ForDate'];
        FiledAtUtc = JsonConverters.fromJson(json['FiledAtUtc'],'DateTime',context!);
        SavedAtUtc = JsonConverters.fromJson(json['SavedAtUtc'],'DateTime',context!);
        IsLate = json['IsLate'];
        IsAway = json['IsAway'];
        IsSatisfactory = json['IsSatisfactory'];
        Odometer = json['Odometer'];
        LocationText = json['LocationText'];
        Remarks = json['Remarks'];
        ReviewedByName = json['ReviewedByName'];
        ReviewedAtUtc = JsonConverters.fromJson(json['ReviewedAtUtc'],'DateTime',context!);
        Chip = json['Chip'];
        Defects = JsonConverters.fromJson(json['Defects'],'List<DvirDefectView>',context!);
        Signatures = JsonConverters.fromJson(json['Signatures'],'List<DvirSignatureView>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DvirReportID': DvirReportID,
        'Number': Number,
        'Kind': Kind,
        'KindText': KindText,
        'EquipmentID': EquipmentID,
        'Unit': Unit,
        'Trailers': JsonConverters.toJson(Trailers,'List<DvirUnitRef>',context!),
        'ContactID': ContactID,
        'DriverName': DriverName,
        'Board': Board,
        'ForDate': ForDate,
        'FiledAtUtc': JsonConverters.toJson(FiledAtUtc,'DateTime',context!),
        'SavedAtUtc': JsonConverters.toJson(SavedAtUtc,'DateTime',context!),
        'IsLate': IsLate,
        'IsAway': IsAway,
        'IsSatisfactory': IsSatisfactory,
        'Odometer': Odometer,
        'LocationText': LocationText,
        'Remarks': Remarks,
        'ReviewedByName': ReviewedByName,
        'ReviewedAtUtc': JsonConverters.toJson(ReviewedAtUtc,'DateTime',context!),
        'Chip': Chip,
        'Defects': JsonConverters.toJson(Defects,'List<DvirDefectView>',context!),
        'Signatures': JsonConverters.toJson(Signatures,'List<DvirSignatureView>',context!)
    };

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

class DvirVehicleDetail extends DvirVehicleView implements IConvertible
{
    String? Plate;
    String? VIN;
    int? GvwrLbs;
    String? BranchName;
    DateTime? InspectionDue;
    DateTime? InsuranceExpires;
    List<DvirDefectView>? RecentlyFixed = [];
    List<DvirReportView>? ReviewReports = [];
    List<DvirReportView>? History = [];

    DvirVehicleDetail({this.Plate,this.VIN,this.GvwrLbs,this.BranchName,this.InspectionDue,this.InsuranceExpires,this.RecentlyFixed,this.ReviewReports,this.History});
    DvirVehicleDetail.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        Plate = json['Plate'];
        VIN = json['VIN'];
        GvwrLbs = json['GvwrLbs'];
        BranchName = json['BranchName'];
        InspectionDue = JsonConverters.fromJson(json['InspectionDue'],'DateTime',context!);
        InsuranceExpires = JsonConverters.fromJson(json['InsuranceExpires'],'DateTime',context!);
        RecentlyFixed = JsonConverters.fromJson(json['RecentlyFixed'],'List<DvirDefectView>',context!);
        ReviewReports = JsonConverters.fromJson(json['ReviewReports'],'List<DvirReportView>',context!);
        History = JsonConverters.fromJson(json['History'],'List<DvirReportView>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'Plate': Plate,
        'VIN': VIN,
        'GvwrLbs': GvwrLbs,
        'BranchName': BranchName,
        'InspectionDue': JsonConverters.toJson(InspectionDue,'DateTime',context!),
        'InsuranceExpires': JsonConverters.toJson(InsuranceExpires,'DateTime',context!),
        'RecentlyFixed': JsonConverters.toJson(RecentlyFixed,'List<DvirDefectView>',context!),
        'ReviewReports': JsonConverters.toJson(ReviewReports,'List<DvirReportView>',context!),
        'History': JsonConverters.toJson(History,'List<DvirReportView>',context!)
    });

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

class EquipmentDvirSignOffResponse implements IConvertible
{
    DvirVehicleDetail? Vehicle;
    bool? Returned;
    ResponseStatus? ResponseStatus;

    EquipmentDvirSignOffResponse({this.Vehicle,this.Returned,this.ResponseStatus});
    EquipmentDvirSignOffResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class DvirSignOffItem implements IConvertible
{
    int? DvirDefectID;
    String? Outcome;
    String? Note;
    String? ScheduledFor;

    DvirSignOffItem({this.DvirDefectID,this.Outcome,this.Note,this.ScheduledFor});
    DvirSignOffItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DvirDefectID = json['DvirDefectID'];
        Outcome = json['Outcome'];
        Note = json['Note'];
        ScheduledFor = json['ScheduledFor'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DvirDefectID': DvirDefectID,
        'Outcome': Outcome,
        'Note': Note,
        'ScheduledFor': ScheduledFor
    };

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

class EquipmentDvirSignOffRequest implements IConvertible
{
    int? EquipmentID;
    List<DvirSignOffItem>? Defects = [];
    String? MechanicName;
    String? SignaturePng;

    EquipmentDvirSignOffRequest({this.EquipmentID,this.Defects,this.MechanicName,this.SignaturePng});
    EquipmentDvirSignOffRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        EquipmentID = json['EquipmentID'];
        Defects = JsonConverters.fromJson(json['Defects'],'List<DvirSignOffItem>',context!);
        MechanicName = json['MechanicName'];
        SignaturePng = json['SignaturePng'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'EquipmentID': EquipmentID,
        'Defects': JsonConverters.toJson(Defects,'List<DvirSignOffItem>',context!),
        'MechanicName': MechanicName,
        'SignaturePng': SignaturePng
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'DvirUnitRef': TypeInfo(TypeOf.Class, create:() => DvirUnitRef()),
    'DvirPhotoView': TypeInfo(TypeOf.Class, create:() => DvirPhotoView()),
    'DvirDefectView': TypeInfo(TypeOf.Class, create:() => DvirDefectView()),
    'List<DvirPhotoView>': TypeInfo(TypeOf.Class, create:() => <DvirPhotoView>[]),
    'DvirVehicleView': TypeInfo(TypeOf.Class, create:() => DvirVehicleView()),
    'List<DvirUnitRef>': TypeInfo(TypeOf.Class, create:() => <DvirUnitRef>[]),
    'List<DvirDefectView>': TypeInfo(TypeOf.Class, create:() => <DvirDefectView>[]),
    'DvirSignatureView': TypeInfo(TypeOf.Class, create:() => DvirSignatureView()),
    'DvirReportView': TypeInfo(TypeOf.Class, create:() => DvirReportView()),
    'List<DvirSignatureView>': TypeInfo(TypeOf.Class, create:() => <DvirSignatureView>[]),
    'DvirVehicleDetail': TypeInfo(TypeOf.Class, create:() => DvirVehicleDetail()),
    'List<DvirReportView>': TypeInfo(TypeOf.Class, create:() => <DvirReportView>[]),
    'EquipmentDvirSignOffResponse': TypeInfo(TypeOf.Class, create:() => EquipmentDvirSignOffResponse()),
    'DvirSignOffItem': TypeInfo(TypeOf.Class, create:() => DvirSignOffItem()),
    'EquipmentDvirSignOffRequest': TypeInfo(TypeOf.Class, create:() => EquipmentDvirSignOffRequest()),
    'List<DvirSignOffItem>': TypeInfo(TypeOf.Class, create:() => <DvirSignOffItem>[]),
});

Dart EquipmentDvirSignOffRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /v1/Equipment/{EquipmentID}/dvir/signoff HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"EquipmentID":0,"Defects":[{"DvirDefectID":0,"Outcome":"String","Note":"String","ScheduledFor":"String"}],"MechanicName":"String","SignaturePng":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Vehicle":{"Plate":"String","VIN":"String","GvwrLbs":0,"BranchName":"String","InspectionDue":"0001-01-01T00:00:00.0000000","InsuranceExpires":"0001-01-01T00:00:00.0000000","RecentlyFixed":[{"DvirDefectID":0,"ClientKey":"String","DvirReportID":0,"ReportNumber":"String","EquipmentID":0,"Unit":"String","ItemKey":"String","Label":"String","FormLine":"String","IsCustom":false,"Severity":"String","SeverityText":"String","Note":"String","Source":"String","ReportedByName":"String","ReportedAtUtc":"0001-01-01T00:00:00.0000000","EquipmentMaintenanceID":0,"Outcome":"String","OutcomeText":"String","OutcomeNote":"String","ScheduledFor":"String","SignedOffByName":"String","SignedOffAtUtc":"0001-01-01T00:00:00.0000000","IsOpen":false,"Withdrawn":false,"PhotoCount":0,"Photos":[{"WorkPhotoID":0,"DefectKey":"String","Url":"String","MarkedUrl":"String","CapturedAtUtc":"0001-01-01T00:00:00.0000000","Lat":0,"Lng":0}]}],"ReviewReports":[{"DvirReportID":0,"Number":"String","Kind":"String","KindText":"String","EquipmentID":0,"Unit":"String","Trailers":[{"EquipmentID":0,"Unit":"String"}],"ContactID":0,"DriverName":"String","Board":"String","ForDate":"String","FiledAtUtc":"0001-01-01T00:00:00.0000000","SavedAtUtc":"0001-01-01T00:00:00.0000000","IsLate":false,"IsAway":false,"IsSatisfactory":false,"Odometer":0,"LocationText":"String","Remarks":"String","ReviewedByName":"String","ReviewedAtUtc":"0001-01-01T00:00:00.0000000","Chip":"String","Defects":[{"DvirDefectID":0,"ClientKey":"String","DvirReportID":0,"ReportNumber":"String","EquipmentID":0,"Unit":"String","ItemKey":"String","Label":"String","FormLine":"String","IsCustom":false,"Severity":"String","SeverityText":"String","Note":"String","Source":"String","ReportedByName":"String","ReportedAtUtc":"0001-01-01T00:00:00.0000000","EquipmentMaintenanceID":0,"Outcome":"String","OutcomeText":"String","OutcomeNote":"String","ScheduledFor":"String","SignedOffByName":"String","SignedOffAtUtc":"0001-01-01T00:00:00.0000000","IsOpen":false,"Withdrawn":false,"PhotoCount":0,"Photos":[{"WorkPhotoID":0,"DefectKey":"String","Url":"String","MarkedUrl":"String","CapturedAtUtc":"0001-01-01T00:00:00.0000000","Lat":0,"Lng":0}]}],"Signatures":[{"SignatureRecordID":0,"Role":"String","SignerName":"String","SignedAt":"0001-01-01T00:00:00.0000000","ImageUrl":"String"}]}],"History":[{"DvirReportID":0,"Number":"String","Kind":"String","KindText":"String","EquipmentID":0,"Unit":"String","Trailers":[{"EquipmentID":0,"Unit":"String"}],"ContactID":0,"DriverName":"String","Board":"String","ForDate":"String","FiledAtUtc":"0001-01-01T00:00:00.0000000","SavedAtUtc":"0001-01-01T00:00:00.0000000","IsLate":false,"IsAway":false,"IsSatisfactory":false,"Odometer":0,"LocationText":"String","Remarks":"String","ReviewedByName":"String","ReviewedAtUtc":"0001-01-01T00:00:00.0000000","Chip":"String","Defects":[{"DvirDefectID":0,"ClientKey":"String","DvirReportID":0,"ReportNumber":"String","EquipmentID":0,"Unit":"String","ItemKey":"String","Label":"String","FormLine":"String","IsCustom":false,"Severity":"String","SeverityText":"String","Note":"String","Source":"String","ReportedByName":"String","ReportedAtUtc":"0001-01-01T00:00:00.0000000","EquipmentMaintenanceID":0,"Outcome":"String","OutcomeText":"String","OutcomeNote":"String","ScheduledFor":"String","SignedOffByName":"String","SignedOffAtUtc":"0001-01-01T00:00:00.0000000","IsOpen":false,"Withdrawn":false,"PhotoCount":0,"Photos":[{"WorkPhotoID":0,"DefectKey":"String","Url":"String","MarkedUrl":"String","CapturedAtUtc":"0001-01-01T00:00:00.0000000","Lat":0,"Lng":0}]}],"Signatures":[{"SignatureRecordID":0,"Role":"String","SignerName":"String","SignedAt":"0001-01-01T00:00:00.0000000","ImageUrl":"String"}]}],"EquipmentID":0,"Unit":"String","Name":"String","VehicleType":"String","IsTrailer":false,"VehicleStatus":"String","Status":"String","StatusText":"String","Line":"String","FirstUnsafeReport":"String","OpenCount":0,"LocalToday":"String","NeedsPreTrip":false,"NeedsReview":false,"ReviewReportIds":[0],"Trailers":[{"EquipmentID":0,"Unit":"String"}],"LastOdometer":0,"InUseBy":"String","DrivingNow":false,"TodayPreTripId":0,"TodayPostTripId":0,"OpenDefects":[{"DvirDefectID":0,"ClientKey":"String","DvirReportID":0,"ReportNumber":"String","EquipmentID":0,"Unit":"String","ItemKey":"String","Label":"String","FormLine":"String","IsCustom":false,"Severity":"String","SeverityText":"String","Note":"String","Source":"String","ReportedByName":"String","ReportedAtUtc":"0001-01-01T00:00:00.0000000","EquipmentMaintenanceID":0,"Outcome":"String","OutcomeText":"String","OutcomeNote":"String","ScheduledFor":"String","SignedOffByName":"String","SignedOffAtUtc":"0001-01-01T00:00:00.0000000","IsOpen":false,"Withdrawn":false,"PhotoCount":0,"Photos":[{"WorkPhotoID":0,"DefectKey":"String","Url":"String","MarkedUrl":"String","CapturedAtUtc":"0001-01-01T00:00:00.0000000","Lat":0,"Lng":0}]}]},"Returned":false,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}