Trendsic Platform Service

<back to all web services

VisitExceptionsRequest

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

class ExceptionItem implements IConvertible
{
    String? Kind;
    String? VisitKey;
    int? JobID;
    int? ProjectID;
    int? AgreementID;
    int? AgreementJobID;
    String? OccurrenceDate;
    String? CustomerName;
    String? LocationName;
    String? City;
    double? Lat;
    double? Lng;
    int? AgeDays;
    String? Reason;
    int? DurationMinutes;
    bool? IsCommercial;
    int? PreferredCrewID;

    ExceptionItem({this.Kind,this.VisitKey,this.JobID,this.ProjectID,this.AgreementID,this.AgreementJobID,this.OccurrenceDate,this.CustomerName,this.LocationName,this.City,this.Lat,this.Lng,this.AgeDays,this.Reason,this.DurationMinutes,this.IsCommercial,this.PreferredCrewID});
    ExceptionItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Kind = json['Kind'];
        VisitKey = json['VisitKey'];
        JobID = json['JobID'];
        ProjectID = json['ProjectID'];
        AgreementID = json['AgreementID'];
        AgreementJobID = json['AgreementJobID'];
        OccurrenceDate = json['OccurrenceDate'];
        CustomerName = json['CustomerName'];
        LocationName = json['LocationName'];
        City = json['City'];
        Lat = JsonConverters.toDouble(json['Lat']);
        Lng = JsonConverters.toDouble(json['Lng']);
        AgeDays = json['AgeDays'];
        Reason = json['Reason'];
        DurationMinutes = json['DurationMinutes'];
        IsCommercial = json['IsCommercial'];
        PreferredCrewID = json['PreferredCrewID'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Kind': Kind,
        'VisitKey': VisitKey,
        'JobID': JobID,
        'ProjectID': ProjectID,
        'AgreementID': AgreementID,
        'AgreementJobID': AgreementJobID,
        'OccurrenceDate': OccurrenceDate,
        'CustomerName': CustomerName,
        'LocationName': LocationName,
        'City': City,
        'Lat': Lat,
        'Lng': Lng,
        'AgeDays': AgeDays,
        'Reason': Reason,
        'DurationMinutes': DurationMinutes,
        'IsCommercial': IsCommercial,
        'PreferredCrewID': PreferredCrewID
    };

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

class VisitExceptionsResponse implements IConvertible
{
    List<ExceptionItem>? Items = [];
    int? MissedCount;
    int? SlaCount;
    int? SkippedCount;
    int? AtRiskCount;
    ResponseStatus? ResponseStatus;

    VisitExceptionsResponse({this.Items,this.MissedCount,this.SlaCount,this.SkippedCount,this.AtRiskCount,this.ResponseStatus});
    VisitExceptionsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Items = JsonConverters.fromJson(json['Items'],'List<ExceptionItem>',context!);
        MissedCount = json['MissedCount'];
        SlaCount = json['SlaCount'];
        SkippedCount = json['SkippedCount'];
        AtRiskCount = json['AtRiskCount'];
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Items': JsonConverters.toJson(Items,'List<ExceptionItem>',context!),
        'MissedCount': MissedCount,
        'SlaCount': SlaCount,
        'SkippedCount': SkippedCount,
        'AtRiskCount': AtRiskCount,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

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

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

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

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

Dart VisitExceptionsRequest DTOs

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

HTTP + XML

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

GET /v1/visits/exceptions HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<VisitExceptionsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <AtRiskCount>0</AtRiskCount>
  <Items>
    <ExceptionItem>
      <AgeDays>0</AgeDays>
      <AgreementID>0</AgreementID>
      <AgreementJobID>0</AgreementJobID>
      <City>String</City>
      <CustomerName>String</CustomerName>
      <DurationMinutes>0</DurationMinutes>
      <IsCommercial>false</IsCommercial>
      <JobID>0</JobID>
      <Kind>String</Kind>
      <Lat>0</Lat>
      <Lng>0</Lng>
      <LocationName>String</LocationName>
      <OccurrenceDate>String</OccurrenceDate>
      <PreferredCrewID>0</PreferredCrewID>
      <ProjectID>0</ProjectID>
      <Reason>String</Reason>
      <VisitKey>String</VisitKey>
    </ExceptionItem>
  </Items>
  <MissedCount>0</MissedCount>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <SkippedCount>0</SkippedCount>
  <SlaCount>0</SlaCount>
</VisitExceptionsResponse>