Trendsic Platform Service

<back to all web services

PolicyReportRequest

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

class CommissionListing implements IConvertible
{
    int? ID;
    DateTime? ProcessDate;
    DateTime? PaymentDate;
    int? AgentId;
    String? Agent;
    int? OAgentID;
    String? OAgent;
    String? Policy;
    String? PolicyType;
    String? Insured;
    double? Premium;
    double? Part;
    double? PartPercent;
    double? Amount;
    String? Company;
    double? Gross;
    String? AgentNumber;
    double? CommissionRate;
    String? Description;

    CommissionListing({this.ID,this.ProcessDate,this.PaymentDate,this.AgentId,this.Agent,this.OAgentID,this.OAgent,this.Policy,this.PolicyType,this.Insured,this.Premium,this.Part,this.PartPercent,this.Amount,this.Company,this.Gross,this.AgentNumber,this.CommissionRate,this.Description});
    CommissionListing.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ID = json['ID'];
        ProcessDate = JsonConverters.fromJson(json['ProcessDate'],'DateTime',context!);
        PaymentDate = JsonConverters.fromJson(json['PaymentDate'],'DateTime',context!);
        AgentId = json['AgentId'];
        Agent = json['Agent'];
        OAgentID = json['OAgentID'];
        OAgent = json['OAgent'];
        Policy = json['Policy'];
        PolicyType = json['PolicyType'];
        Insured = json['Insured'];
        Premium = JsonConverters.toDouble(json['Premium']);
        Part = JsonConverters.toDouble(json['Part']);
        PartPercent = JsonConverters.toDouble(json['PartPercent']);
        Amount = JsonConverters.toDouble(json['Amount']);
        Company = json['Company'];
        Gross = JsonConverters.toDouble(json['Gross']);
        AgentNumber = json['AgentNumber'];
        CommissionRate = JsonConverters.toDouble(json['CommissionRate']);
        Description = json['Description'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ID': ID,
        'ProcessDate': JsonConverters.toJson(ProcessDate,'DateTime',context!),
        'PaymentDate': JsonConverters.toJson(PaymentDate,'DateTime',context!),
        'AgentId': AgentId,
        'Agent': Agent,
        'OAgentID': OAgentID,
        'OAgent': OAgent,
        'Policy': Policy,
        'PolicyType': PolicyType,
        'Insured': Insured,
        'Premium': Premium,
        'Part': Part,
        'PartPercent': PartPercent,
        'Amount': Amount,
        'Company': Company,
        'Gross': Gross,
        'AgentNumber': AgentNumber,
        'CommissionRate': CommissionRate,
        'Description': Description
    };

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

class PolicyReportResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<CommissionListing>? ReportData = [];

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

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

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

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

class PolicyReportRequest implements IConvertible
{
    String? PolicyNumber;

    PolicyReportRequest({this.PolicyNumber});
    PolicyReportRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

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

Dart PolicyReportRequest DTOs

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

HTTP + JSV

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

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

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	ReportData: 
	[
		{
			ID: 0,
			ProcessDate: 0001-01-01,
			PaymentDate: 0001-01-01,
			AgentId: 0,
			Agent: String,
			OAgentID: 0,
			OAgent: String,
			Policy: String,
			PolicyType: String,
			Insured: String,
			Premium: 0,
			Part: 0,
			PartPercent: 0,
			Amount: 0,
			Company: String,
			Gross: 0,
			AgentNumber: String,
			CommissionRate: 0,
			Description: String
		}
	]
}