Trendsic Platform Service

<back to all web services

PeraContactTrackingRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/Report/PeraContactTracking/{ParamStartDate}/{ParamEndDate}/{AgentID}
GET,OPTIONS/v1/Report/PeraContactTracking/{ParamStartDate}/{ParamEndDate}
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class AFPeraContact implements IConvertible
{
    int? PeraContactId;
    String? FirstName;
    String? LastName;
    DateTime? AppointmentDateTime;
    DateTime? DateCreated;
    int? AgentId;

    AFPeraContact({this.PeraContactId,this.FirstName,this.LastName,this.AppointmentDateTime,this.DateCreated,this.AgentId});
    AFPeraContact.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        PeraContactId = json['PeraContactId'];
        FirstName = json['FirstName'];
        LastName = json['LastName'];
        AppointmentDateTime = JsonConverters.fromJson(json['AppointmentDateTime'],'DateTime',context!);
        DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!);
        AgentId = json['AgentId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'PeraContactId': PeraContactId,
        'FirstName': FirstName,
        'LastName': LastName,
        'AppointmentDateTime': JsonConverters.toJson(AppointmentDateTime,'DateTime',context!),
        'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!),
        'AgentId': AgentId
    };

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

class PeraContactTracking extends AFPeraContact implements IConvertible
{
    String? Agent;
    DateTime? FollowUpDate;
    String? District;
    String? Note;
    String? EventTypeName;
    String? AVP;
    String? RVP;
    String? MVP;
    String? Sale;

    PeraContactTracking({this.Agent,this.FollowUpDate,this.District,this.Note,this.EventTypeName,this.AVP,this.RVP,this.MVP,this.Sale});
    PeraContactTracking.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        Agent = json['Agent'];
        FollowUpDate = JsonConverters.fromJson(json['FollowUpDate'],'DateTime',context!);
        District = json['District'];
        Note = json['Note'];
        EventTypeName = json['EventTypeName'];
        AVP = json['AVP'];
        RVP = json['RVP'];
        MVP = json['MVP'];
        Sale = json['Sale'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'Agent': Agent,
        'FollowUpDate': JsonConverters.toJson(FollowUpDate,'DateTime',context!),
        'District': District,
        'Note': Note,
        'EventTypeName': EventTypeName,
        'AVP': AVP,
        'RVP': RVP,
        'MVP': MVP,
        'Sale': Sale
    });

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

class PeraContactTrackingResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<PeraContactTracking>? AFPeraContact = [];

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

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

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

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

class PeraContactTrackingRequest implements IConvertible
{
    DateTime? ParamStartDate;
    DateTime? ParamEndDate;
    int? AgentID;

    PeraContactTrackingRequest({this.ParamStartDate,this.ParamEndDate,this.AgentID});
    PeraContactTrackingRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ParamStartDate = JsonConverters.fromJson(json['ParamStartDate'],'DateTime',context!);
        ParamEndDate = JsonConverters.fromJson(json['ParamEndDate'],'DateTime',context!);
        AgentID = json['AgentID'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ParamStartDate': JsonConverters.toJson(ParamStartDate,'DateTime',context!),
        'ParamEndDate': JsonConverters.toJson(ParamEndDate,'DateTime',context!),
        'AgentID': AgentID
    };

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

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

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

GET /v1/Report/PeraContactTracking/{ParamStartDate}/{ParamEndDate}/{AgentID} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsonl
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"}},"AFPeraContact":[{"Agent":"String","FollowUpDate":"0001-01-01T00:00:00.0000000","District":"String","Note":"String","EventTypeName":"String","AVP":"String","RVP":"String","MVP":"String","Sale":"String","PeraContactId":0,"FirstName":"String","LastName":"String","AppointmentDateTime":"0001-01-01T00:00:00.0000000","DateCreated":"0001-01-01T00:00:00.0000000","AgentId":0}]}