Trendsic Platform Service

<back to all web services

CoverageOfferClaimRequest

The following routes are available for this service:
POST/v1/coverage/offer/{Token}/claim
import 'package:servicestack/servicestack.dart';

class CoverageOfferEligChip implements IConvertible
{
    String? Label;
    String? Detail;
    String? State;

    CoverageOfferEligChip({this.Label,this.Detail,this.State});
    CoverageOfferEligChip.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'Label': Label,
        'Detail': Detail,
        'State': State
    };

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

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 CoverageOfferViewResponse implements IConvertible
{
    String? State;
    String? WorkerFirst;
    String? Primary;
    String? Kind;
    String? Role;
    String? Pay;
    String? Site;
    String? Address;
    String? GapDate;
    String? GapTime;
    String? CalMon;
    String? CalDay;
    String? ReportTo;
    List<CoverageOfferEligChip>? Elig = [];
    String? AssignmentMode;
    String? Ticket;
    String? Expires;
    CoverageExplanation? BlockExpl;
    ResponseStatus? ResponseStatus;

    CoverageOfferViewResponse({this.State,this.WorkerFirst,this.Primary,this.Kind,this.Role,this.Pay,this.Site,this.Address,this.GapDate,this.GapTime,this.CalMon,this.CalDay,this.ReportTo,this.Elig,this.AssignmentMode,this.Ticket,this.Expires,this.BlockExpl,this.ResponseStatus});
    CoverageOfferViewResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        State = json['State'];
        WorkerFirst = json['WorkerFirst'];
        Primary = json['Primary'];
        Kind = json['Kind'];
        Role = json['Role'];
        Pay = json['Pay'];
        Site = json['Site'];
        Address = json['Address'];
        GapDate = json['GapDate'];
        GapTime = json['GapTime'];
        CalMon = json['CalMon'];
        CalDay = json['CalDay'];
        ReportTo = json['ReportTo'];
        Elig = JsonConverters.fromJson(json['Elig'],'List<CoverageOfferEligChip>',context!);
        AssignmentMode = json['AssignmentMode'];
        Ticket = json['Ticket'];
        Expires = json['Expires'];
        BlockExpl = JsonConverters.fromJson(json['BlockExpl'],'CoverageExplanation',context!);
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'State': State,
        'WorkerFirst': WorkerFirst,
        'Primary': Primary,
        'Kind': Kind,
        'Role': Role,
        'Pay': Pay,
        'Site': Site,
        'Address': Address,
        'GapDate': GapDate,
        'GapTime': GapTime,
        'CalMon': CalMon,
        'CalDay': CalDay,
        'ReportTo': ReportTo,
        'Elig': JsonConverters.toJson(Elig,'List<CoverageOfferEligChip>',context!),
        'AssignmentMode': AssignmentMode,
        'Ticket': Ticket,
        'Expires': Expires,
        'BlockExpl': JsonConverters.toJson(BlockExpl,'CoverageExplanation',context!),
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

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

class CoverageOfferClaimRequest implements IConvertible
{
    String? Token;

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

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

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

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

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

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

POST /v1/coverage/offer/{Token}/claim HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Token: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	State: String,
	WorkerFirst: String,
	Primary: String,
	Kind: String,
	Role: String,
	Pay: String,
	Site: String,
	Address: String,
	GapDate: String,
	GapTime: String,
	CalMon: String,
	CalDay: String,
	ReportTo: String,
	Elig: 
	[
		{
			Label: String,
			Detail: String,
			State: String
		}
	],
	AssignmentMode: String,
	Ticket: String,
	Expires: String,
	BlockExpl: 
	{
		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
	},
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}