Trendsic Platform Service

<back to all web services

CoveragePeopleSearchRequest

Requires Authentication
The following routes are available for this service:
GET/v1/coverage/people/search
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class CoverageExplanationSource implements IConvertible
{
    String? PolicyName;
    String? CascadeLevel;

    CoverageExplanationSource({this.PolicyName,this.CascadeLevel});
    CoverageExplanationSource.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class CoverageExplanationOverride implements IConvertible
{
    String? Who;
    String? Consequence;

    CoverageExplanationOverride({this.Who,this.Consequence});
    CoverageExplanationOverride.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class CoverageExplanation implements IConvertible
{
    String? PlainSentence;
    String? RuleId;
    String? RuleName;
    String? Demand;
    CoverageExplanationSource? Source;
    String? Kind;
    String? WhyItExists;
    String? WhatWouldChangeIt;
    CoverageExplanationOverride? Override;
    String? Drill;

    CoverageExplanation({this.PlainSentence,this.RuleId,this.RuleName,this.Demand,this.Source,this.Kind,this.WhyItExists,this.WhatWouldChangeIt,this.Override,this.Drill});
    CoverageExplanation.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        PlainSentence = json['PlainSentence'];
        RuleId = json['RuleId'];
        RuleName = json['RuleName'];
        Demand = json['Demand'];
        Source = JsonConverters.fromJson(json['Source'],'CoverageExplanationSource',context!);
        Kind = json['Kind'];
        WhyItExists = json['WhyItExists'];
        WhatWouldChangeIt = json['WhatWouldChangeIt'];
        Override = JsonConverters.fromJson(json['Override'],'CoverageExplanationOverride',context!);
        Drill = json['Drill'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'PlainSentence': PlainSentence,
        'RuleId': RuleId,
        'RuleName': RuleName,
        'Demand': Demand,
        'Source': JsonConverters.toJson(Source,'CoverageExplanationSource',context!),
        'Kind': Kind,
        'WhyItExists': WhyItExists,
        'WhatWouldChangeIt': WhatWouldChangeIt,
        'Override': JsonConverters.toJson(Override,'CoverageExplanationOverride',context!),
        'Drill': Drill
    };

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

class CoveragePersonAnswer implements IConvertible
{
    int? ContactId;
    String? Name;
    String? Tone;
    String? Answer;
    CoverageExplanation? Expl;

    CoveragePersonAnswer({this.ContactId,this.Name,this.Tone,this.Answer,this.Expl});
    CoveragePersonAnswer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ContactId = json['ContactId'];
        Name = json['Name'];
        Tone = json['Tone'];
        Answer = json['Answer'];
        Expl = JsonConverters.fromJson(json['Expl'],'CoverageExplanation',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ContactId': ContactId,
        'Name': Name,
        'Tone': Tone,
        'Answer': Answer,
        'Expl': JsonConverters.toJson(Expl,'CoverageExplanation',context!)
    };

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

class CoveragePeopleSearchResponse implements IConvertible
{
    List<CoveragePersonAnswer>? Answers = [];
    String? MissAnswer;
    ResponseStatus? ResponseStatus;

    CoveragePeopleSearchResponse({this.Answers,this.MissAnswer,this.ResponseStatus});
    CoveragePeopleSearchResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class CoveragePeopleSearchRequest implements IConvertible
{
    String? Q;
    int? CoverageGapId;

    CoveragePeopleSearchRequest({this.Q,this.CoverageGapId});
    CoveragePeopleSearchRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'CoverageExplanationSource': TypeInfo(TypeOf.Class, create:() => CoverageExplanationSource()),
    'CoverageExplanationOverride': TypeInfo(TypeOf.Class, create:() => CoverageExplanationOverride()),
    'CoverageExplanation': TypeInfo(TypeOf.Class, create:() => CoverageExplanation()),
    'CoveragePersonAnswer': TypeInfo(TypeOf.Class, create:() => CoveragePersonAnswer()),
    'CoveragePeopleSearchResponse': TypeInfo(TypeOf.Class, create:() => CoveragePeopleSearchResponse()),
    'List<CoveragePersonAnswer>': TypeInfo(TypeOf.Class, create:() => <CoveragePersonAnswer>[]),
    'CoveragePeopleSearchRequest': TypeInfo(TypeOf.Class, create:() => CoveragePeopleSearchRequest()),
});

Dart CoveragePeopleSearchRequest 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/coverage/people/search HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Answers: 
	[
		{
			ContactId: 0,
			Name: String,
			Tone: String,
			Answer: String,
			Expl: 
			{
				PlainSentence: String,
				RuleId: String,
				RuleName: String,
				Demand: String,
				Source: 
				{
					PolicyName: String,
					CascadeLevel: String
				},
				Kind: String,
				WhyItExists: String,
				WhatWouldChangeIt: String,
				Override: 
				{
					Who: String,
					Consequence: String
				},
				Drill: String
			}
		}
	],
	MissAnswer: String,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}