Trendsic Platform Service

<back to all web services

CoverageGapRequest

Requires Authentication
The following routes are available for this service:
GET/v1/coverage/gaps/{CoverageGapId}

export class CoverageExplanationSource
{
    public PolicyName: string;
    public CascadeLevel: string;

    public constructor(init?: Partial<CoverageExplanationSource>) { (Object as any).assign(this, init); }
}

export class CoverageExplanationOverride
{
    public Who: string;
    public Consequence: string;

    public constructor(init?: Partial<CoverageExplanationOverride>) { (Object as any).assign(this, init); }
}

export class CoverageExplanation
{
    public PlainSentence: string;
    public RuleId: string;
    public RuleName: string;
    public Demand: string;
    public Source: CoverageExplanationSource;
    public Kind: string;
    public WhyItExists: string;
    public WhatWouldChangeIt: string;
    public Override: CoverageExplanationOverride;
    public Drill: string;

    public constructor(init?: Partial<CoverageExplanation>) { (Object as any).assign(this, init); }
}

export class CoverageCandidateCheck
{
    public CheckId: string;
    public Result: string;
    public Expl: CoverageExplanation;

    public constructor(init?: Partial<CoverageCandidateCheck>) { (Object as any).assign(this, init); }
}

export class CoverageEffect
{
    public Icon: string;
    public Text: string;
    public RuleId: string;
    public Expl: CoverageExplanation;

    public constructor(init?: Partial<CoverageEffect>) { (Object as any).assign(this, init); }
}

export class CoverageCandidate
{
    public ContactId: number;
    public Name: string;
    public FirstName: string;
    public Initials: string;
    public Rank: number;
    public DiffLine: string;
    public CostLine: string;
    public CostTone: string;
    public RankExpl: CoverageExplanation;
    public MarginPct?: number;
    public MarginTone: string;
    public Loaded?: number;
    public Billed?: number;
    public OtHours?: number;
    public OtPremium?: number;
    public Checks: CoverageCandidateCheck[] = [];
    public Preview: CoverageEffect[] = [];
    public Confirm: CoverageEffect[] = [];
    public HasWarn: boolean;

    public constructor(init?: Partial<CoverageCandidate>) { (Object as any).assign(this, init); }
}

export class CoverageBlockedCandidate
{
    public ContactId: number;
    public Name: string;
    public Initials: string;
    public Reason: string;
    public ChangeChip: string;
    public Expl: CoverageExplanation;

    public constructor(init?: Partial<CoverageBlockedCandidate>) { (Object as any).assign(this, init); }
}

export class CoverageOfferInfo
{
    public CoverageOfferId: number;
    public ContactId: number;
    public Name: string;
    public Ring: number;
    public Channel: string;
    public Status: string;
    public SentAtUtc: string;
    public RespondedAtUtc?: string;

    public constructor(init?: Partial<CoverageOfferInfo>) { (Object as any).assign(this, init); }
}

export class CoverageApprovalInfo
{
    public CoverageApprovalId: number;
    public CoverageGapId: number;
    public Type: string;
    public Status: string;
    public RequestedAtUtc: string;
    public Effects: CoverageEffect[] = [];
    public ContactId?: number;
    public ContactName: string;
    public DecidedAtUtc?: string;
    public DecisionNote: string;

    public constructor(init?: Partial<CoverageApprovalInfo>) { (Object as any).assign(this, init); }
}

export class CoverageGapEventInfo
{
    public EventType: string;
    public Channel: string;
    public Detail: string;
    public ContactName: string;
    public AtUtc: string;

    public constructor(init?: Partial<CoverageGapEventInfo>) { (Object as any).assign(this, init); }
}

export class CoverageMoveOption
{
    public Key: string;
    public Label: string;
    public Detail: string;
    public Expl: CoverageExplanation;

    public constructor(init?: Partial<CoverageMoveOption>) { (Object as any).assign(this, init); }
}

export class CoverageNoShowAttempt
{
    public AtUtc: string;
    public Channel: string;
    public Note: string;

    public constructor(init?: Partial<CoverageNoShowAttempt>) { (Object as any).assign(this, init); }
}

export class CoverageNoShowState
{
    public GraceUntilUtc: string;
    public Attempts: CoverageNoShowAttempt[] = [];
    public DeclaredAtUtc?: string;
    public AttendanceNote: boolean;
    public FalseAlarm: boolean;

    public constructor(init?: Partial<CoverageNoShowState>) { (Object as any).assign(this, init); }
}

export class CoverageLeaveCheckpoint
{
    public AtUtc: string;
    public Note: string;
    public ByName: string;

    public constructor(init?: Partial<CoverageLeaveCheckpoint>) { (Object as any).assign(this, init); }
}

export class CoverageLeaveState
{
    public Fmla: boolean;
    public Began: string;
    public EstReturn?: string;
    public CheckpointDays: number;
    public NextCheckpointUtc?: string;
    public Checkpoints: CoverageLeaveCheckpoint[] = [];
    public InterimContactId?: number;
    public InterimName: string;
    public InterimStart?: string;
    public InterimEnd?: string;
    public RequisitionOpened: boolean;
    public StaffPostingId?: number;
    public ChainedGapIds: number[] = [];
    public ParentLeaveGapId?: number;
    public RestoredAtUtc?: string;

    public constructor(init?: Partial<CoverageLeaveState>) { (Object as any).assign(this, init); }
}

export class CoverageGap
{
    public CoverageGapId: number;
    public CoverageGapUID: string;
    public BranchId?: string;
    public Status: string;
    public Track: string;
    public OutContactID?: number;
    public OutName: string;
    public OutInitials: string;
    public JobID?: number;
    public JobName: string;
    public ProjectID?: number;
    public WorkerScheduleItemID?: number;
    public WindowStart: string;
    public WindowEnd: string;
    public Reason: string;
    public MustFill: boolean;
    public MustFillExpl: CoverageExplanation;
    public FilledByContactID?: number;
    public FilledByName: string;
    public RecordNo: string;
    public DecidedPolicyVersionId?: number;
    public CreatedAt: string;
    public UpdatedAt?: string;
    public QualifiedLine: string;
    public Candidates: CoverageCandidate[] = [];
    public Blocked: CoverageBlockedCandidate[] = [];
    public Offers: CoverageOfferInfo[] = [];
    public Approvals: CoverageApprovalInfo[] = [];
    public Timeline: CoverageGapEventInfo[] = [];
    public MoveOptions: CoverageMoveOption[] = [];
    public OrderExpl: CoverageExplanation;
    public AssignmentMode: string;
    public NoShow: CoverageNoShowState;
    public Leave: CoverageLeaveState;
    public CustomerName: string;

    public constructor(init?: Partial<CoverageGap>) { (Object as any).assign(this, init); }
}

export class CoverageGapResponse
{
    public Gap: CoverageGap;
    public ChainedPreview?: number;
    public CanSeePay: boolean;
    public ResponseStatus: ResponseStatus;

    public constructor(init?: Partial<CoverageGapResponse>) { (Object as any).assign(this, init); }
}

export class CoverageGapRequest
{
    public CoverageGapId: number;

    public constructor(init?: Partial<CoverageGapRequest>) { (Object as any).assign(this, init); }
}

TypeScript CoverageGapRequest 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/coverage/gaps/{CoverageGapId} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Gap":{"CoverageGapId":0,"CoverageGapUID":"00000000000000000000000000000000","BranchId":"00000000000000000000000000000000","Status":"String","Track":"String","OutContactID":0,"OutName":"String","OutInitials":"String","JobID":0,"JobName":"String","ProjectID":0,"WorkerScheduleItemID":0,"WindowStart":"0001-01-01T00:00:00.0000000","WindowEnd":"0001-01-01T00:00:00.0000000","Reason":"String","MustFill":false,"MustFillExpl":{"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"},"FilledByContactID":0,"FilledByName":"String","RecordNo":"String","DecidedPolicyVersionId":0,"CreatedAt":"0001-01-01T00:00:00.0000000","UpdatedAt":"0001-01-01T00:00:00.0000000","QualifiedLine":"String","Candidates":[{"ContactId":0,"Name":"String","FirstName":"String","Initials":"String","Rank":0,"DiffLine":"String","CostLine":"String","CostTone":"String","RankExpl":{"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"},"MarginPct":0,"MarginTone":"String","Loaded":0,"Billed":0,"OtHours":0,"OtPremium":0,"Checks":[{"CheckId":"String","Result":"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"}}],"Preview":[{"Icon":"String","Text":"String","RuleId":"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"}}],"Confirm":[{"Icon":"String","Text":"String","RuleId":"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"}}],"HasWarn":false}],"Blocked":[{"ContactId":0,"Name":"String","Initials":"String","Reason":"String","ChangeChip":"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"}}],"Offers":[{"CoverageOfferId":0,"ContactId":0,"Name":"String","Ring":0,"Channel":"String","Status":"String","SentAtUtc":"0001-01-01T00:00:00.0000000","RespondedAtUtc":"0001-01-01T00:00:00.0000000"}],"Approvals":[{"CoverageApprovalId":0,"CoverageGapId":0,"Type":"String","Status":"String","RequestedAtUtc":"0001-01-01T00:00:00.0000000","Effects":[{"Icon":"String","Text":"String","RuleId":"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"}}],"ContactId":0,"ContactName":"String","DecidedAtUtc":"0001-01-01T00:00:00.0000000","DecisionNote":"String"}],"Timeline":[{"EventType":"String","Channel":"String","Detail":"String","ContactName":"String","AtUtc":"0001-01-01T00:00:00.0000000"}],"MoveOptions":[{"Key":"String","Label":"String","Detail":"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"}}],"OrderExpl":{"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"},"AssignmentMode":"String","NoShow":{"GraceUntilUtc":"0001-01-01T00:00:00.0000000","Attempts":[{"AtUtc":"0001-01-01T00:00:00.0000000","Channel":"String","Note":"String"}],"DeclaredAtUtc":"0001-01-01T00:00:00.0000000","AttendanceNote":false,"FalseAlarm":false},"Leave":{"Fmla":false,"Began":"0001-01-01T00:00:00.0000000","EstReturn":"0001-01-01T00:00:00.0000000","CheckpointDays":0,"NextCheckpointUtc":"0001-01-01T00:00:00.0000000","Checkpoints":[{"AtUtc":"0001-01-01T00:00:00.0000000","Note":"String","ByName":"String"}],"InterimContactId":0,"InterimName":"String","InterimStart":"0001-01-01T00:00:00.0000000","InterimEnd":"0001-01-01T00:00:00.0000000","RequisitionOpened":false,"StaffPostingId":0,"ChainedGapIds":[0],"ParentLeaveGapId":0,"RestoredAtUtc":"0001-01-01T00:00:00.0000000"},"CustomerName":"String"},"ChainedPreview":0,"CanSeePay":false,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}