Trendsic Platform Service

<back to all web services

AgentHierarchyRequest

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

class AgentHierarchy implements IConvertible
{
    String? PackageCost;
    String? Package;
    String? AgentNumber;
    String? PlacementAgent;
    String? Company;
    String? FirstName;
    String? LastName;
    String? MiddleInitial;
    String? Email;
    String? HomePhone;
    String? CellPhone;
    String? WorkPhone;
    String? Level;
    String? label;
    int? AgentId;
    String? AgentStatus;

    AgentHierarchy({this.PackageCost,this.Package,this.AgentNumber,this.PlacementAgent,this.Company,this.FirstName,this.LastName,this.MiddleInitial,this.Email,this.HomePhone,this.CellPhone,this.WorkPhone,this.Level,this.label,this.AgentId,this.AgentStatus});
    AgentHierarchy.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        PackageCost = json['PackageCost'];
        Package = json['Package'];
        AgentNumber = json['AgentNumber'];
        PlacementAgent = json['PlacementAgent'];
        Company = json['Company'];
        FirstName = json['FirstName'];
        LastName = json['LastName'];
        MiddleInitial = json['MiddleInitial'];
        Email = json['Email'];
        HomePhone = json['HomePhone'];
        CellPhone = json['CellPhone'];
        WorkPhone = json['WorkPhone'];
        Level = json['Level'];
        label = json['label'];
        AgentId = json['AgentId'];
        AgentStatus = json['AgentStatus'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'PackageCost': PackageCost,
        'Package': Package,
        'AgentNumber': AgentNumber,
        'PlacementAgent': PlacementAgent,
        'Company': Company,
        'FirstName': FirstName,
        'LastName': LastName,
        'MiddleInitial': MiddleInitial,
        'Email': Email,
        'HomePhone': HomePhone,
        'CellPhone': CellPhone,
        'WorkPhone': WorkPhone,
        'Level': Level,
        'label': label,
        'AgentId': AgentId,
        'AgentStatus': AgentStatus
    };

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

class AgentHierarchyResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<AgentHierarchy>? AgentHierarchy = [];

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

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

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

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

class AgentHierarchyRequest implements IConvertible
{
    String? AgentNumber;
    bool? IncludeInactive;

    AgentHierarchyRequest({this.AgentNumber,this.IncludeInactive});
    AgentHierarchyRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'AgentNumber': AgentNumber,
        'IncludeInactive': IncludeInactive
    };

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

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

Dart AgentHierarchyRequest DTOs

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

HTTP + CSV

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

GET /v1/AgentHierarchyById/{AgentNumber} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"AgentHierarchy":[{"PackageCost":"String","Package":"String","AgentNumber":"String","PlacementAgent":"String","Company":"String","FirstName":"String","LastName":"String","MiddleInitial":"String","Email":"String","HomePhone":"String","CellPhone":"String","WorkPhone":"String","Level":"String","label":"String","AgentId":0,"AgentStatus":"String"}]}