| POST | /v1/coverage/leave/{CoverageGapId}/requisition |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using CRM.AgencyPlatform.API.Internal;
namespace CRM.AgencyPlatform.API.Internal
{
public partial class CoverageApprovalInfo
{
public virtual int CoverageApprovalId { get; set; }
public virtual int CoverageGapId { get; set; }
public virtual string Type { get; set; }
public virtual string Status { get; set; }
public virtual DateTime RequestedAtUtc { get; set; }
public virtual List<CoverageEffect> Effects { get; set; } = [];
public virtual int? ContactId { get; set; }
public virtual string ContactName { get; set; }
public virtual DateTime? DecidedAtUtc { get; set; }
public virtual string DecisionNote { get; set; }
}
public partial class CoverageBlockedCandidate
{
public virtual int ContactId { get; set; }
public virtual string Name { get; set; }
public virtual string Initials { get; set; }
public virtual string Reason { get; set; }
public virtual string ChangeChip { get; set; }
public virtual CoverageExplanation Expl { get; set; }
}
public partial class CoverageCandidate
{
public virtual int ContactId { get; set; }
public virtual string Name { get; set; }
public virtual string FirstName { get; set; }
public virtual string Initials { get; set; }
public virtual int Rank { get; set; }
public virtual string DiffLine { get; set; }
public virtual string CostLine { get; set; }
public virtual string CostTone { get; set; }
public virtual CoverageExplanation RankExpl { get; set; }
public virtual decimal? MarginPct { get; set; }
public virtual string MarginTone { get; set; }
public virtual decimal? Loaded { get; set; }
public virtual decimal? Billed { get; set; }
public virtual decimal? OtHours { get; set; }
public virtual decimal? OtPremium { get; set; }
public virtual List<CoverageCandidateCheck> Checks { get; set; } = [];
public virtual List<CoverageEffect> Preview { get; set; } = [];
public virtual List<CoverageEffect> Confirm { get; set; } = [];
public virtual bool HasWarn { get; set; }
}
public partial class CoverageCandidateCheck
{
public virtual string CheckId { get; set; }
public virtual string Result { get; set; }
public virtual CoverageExplanation Expl { get; set; }
}
public partial class CoverageEffect
{
public virtual string Icon { get; set; }
public virtual string Text { get; set; }
public virtual string RuleId { get; set; }
public virtual CoverageExplanation Expl { get; set; }
}
public partial class CoverageExplanation
{
public virtual string PlainSentence { get; set; }
public virtual string RuleId { get; set; }
public virtual string RuleName { get; set; }
public virtual string Demand { get; set; }
public virtual CoverageExplanationSource Source { get; set; }
public virtual string Kind { get; set; }
public virtual string WhyItExists { get; set; }
public virtual string WhatWouldChangeIt { get; set; }
public virtual CoverageExplanationOverride Override { get; set; }
public virtual string Drill { get; set; }
}
public partial class CoverageExplanationOverride
{
public virtual string Who { get; set; }
public virtual string Consequence { get; set; }
}
public partial class CoverageExplanationSource
{
public virtual string PolicyName { get; set; }
public virtual string CascadeLevel { get; set; }
}
public partial class CoverageGap
{
public virtual int CoverageGapId { get; set; }
public virtual Guid CoverageGapUID { get; set; }
public virtual Guid? BranchId { get; set; }
public virtual string Status { get; set; }
public virtual string Track { get; set; }
public virtual int? OutContactID { get; set; }
public virtual string OutName { get; set; }
public virtual string OutInitials { get; set; }
public virtual int? JobID { get; set; }
public virtual string JobName { get; set; }
public virtual int? ProjectID { get; set; }
public virtual int? WorkerScheduleItemID { get; set; }
public virtual DateTime WindowStart { get; set; }
public virtual DateTime WindowEnd { get; set; }
public virtual string Reason { get; set; }
public virtual bool MustFill { get; set; }
public virtual CoverageExplanation MustFillExpl { get; set; }
public virtual int? FilledByContactID { get; set; }
public virtual string FilledByName { get; set; }
public virtual string RecordNo { get; set; }
public virtual int? DecidedPolicyVersionId { get; set; }
public virtual DateTime CreatedAt { get; set; }
public virtual DateTime? UpdatedAt { get; set; }
public virtual string QualifiedLine { get; set; }
public virtual List<CoverageCandidate> Candidates { get; set; } = [];
public virtual List<CoverageBlockedCandidate> Blocked { get; set; } = [];
public virtual List<CoverageOfferInfo> Offers { get; set; } = [];
public virtual List<CoverageApprovalInfo> Approvals { get; set; } = [];
public virtual List<CoverageGapEventInfo> Timeline { get; set; } = [];
public virtual List<CoverageMoveOption> MoveOptions { get; set; } = [];
public virtual CoverageExplanation OrderExpl { get; set; }
public virtual string AssignmentMode { get; set; }
public virtual CoverageNoShowState NoShow { get; set; }
public virtual CoverageLeaveState Leave { get; set; }
public virtual string CustomerName { get; set; }
}
public partial class CoverageGapEventInfo
{
public virtual string EventType { get; set; }
public virtual string Channel { get; set; }
public virtual string Detail { get; set; }
public virtual string ContactName { get; set; }
public virtual DateTime AtUtc { get; set; }
}
public partial class CoverageGapResponse
{
public virtual CoverageGap Gap { get; set; }
public virtual int? ChainedPreview { get; set; }
public virtual bool CanSeePay { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
public partial class CoverageLeaveCheckpoint
{
public virtual DateTime AtUtc { get; set; }
public virtual string Note { get; set; }
public virtual string ByName { get; set; }
}
public partial class CoverageLeaveRequisitionRequest
{
public virtual int CoverageGapId { get; set; }
}
public partial class CoverageLeaveState
{
public virtual bool Fmla { get; set; }
public virtual DateTime Began { get; set; }
public virtual DateTime? EstReturn { get; set; }
public virtual int CheckpointDays { get; set; }
public virtual DateTime? NextCheckpointUtc { get; set; }
public virtual List<CoverageLeaveCheckpoint> Checkpoints { get; set; } = [];
public virtual int? InterimContactId { get; set; }
public virtual string InterimName { get; set; }
public virtual DateTime? InterimStart { get; set; }
public virtual DateTime? InterimEnd { get; set; }
public virtual bool RequisitionOpened { get; set; }
public virtual int? StaffPostingId { get; set; }
public virtual List<int> ChainedGapIds { get; set; } = [];
public virtual int? ParentLeaveGapId { get; set; }
public virtual DateTime? RestoredAtUtc { get; set; }
}
public partial class CoverageMoveOption
{
public virtual string Key { get; set; }
public virtual string Label { get; set; }
public virtual string Detail { get; set; }
public virtual CoverageExplanation Expl { get; set; }
}
public partial class CoverageNoShowAttempt
{
public virtual DateTime AtUtc { get; set; }
public virtual string Channel { get; set; }
public virtual string Note { get; set; }
}
public partial class CoverageNoShowState
{
public virtual DateTime GraceUntilUtc { get; set; }
public virtual List<CoverageNoShowAttempt> Attempts { get; set; } = [];
public virtual DateTime? DeclaredAtUtc { get; set; }
public virtual bool AttendanceNote { get; set; }
public virtual bool FalseAlarm { get; set; }
}
public partial class CoverageOfferInfo
{
public virtual int CoverageOfferId { get; set; }
public virtual int ContactId { get; set; }
public virtual string Name { get; set; }
public virtual int Ring { get; set; }
public virtual string Channel { get; set; }
public virtual string Status { get; set; }
public virtual DateTime SentAtUtc { get; set; }
public virtual DateTime? RespondedAtUtc { get; set; }
}
}
C# CoverageLeaveRequisitionRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/coverage/leave/{CoverageGapId}/requisition HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CoverageLeaveRequisitionRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<CoverageGapId>0</CoverageGapId>
</CoverageLeaveRequisitionRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<CoverageGapResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<CanSeePay>false</CanSeePay>
<ChainedPreview>0</ChainedPreview>
<Gap>
<Approvals>
<CoverageApprovalInfo>
<ContactId>0</ContactId>
<ContactName>String</ContactName>
<CoverageApprovalId>0</CoverageApprovalId>
<CoverageGapId>0</CoverageGapId>
<DecidedAtUtc>0001-01-01T00:00:00</DecidedAtUtc>
<DecisionNote>String</DecisionNote>
<Effects>
<CoverageEffect>
<Expl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</Expl>
<Icon>String</Icon>
<RuleId>String</RuleId>
<Text>String</Text>
</CoverageEffect>
</Effects>
<RequestedAtUtc>0001-01-01T00:00:00</RequestedAtUtc>
<Status>String</Status>
<Type>String</Type>
</CoverageApprovalInfo>
</Approvals>
<AssignmentMode>String</AssignmentMode>
<Blocked>
<CoverageBlockedCandidate>
<ChangeChip>String</ChangeChip>
<ContactId>0</ContactId>
<Expl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</Expl>
<Initials>String</Initials>
<Name>String</Name>
<Reason>String</Reason>
</CoverageBlockedCandidate>
</Blocked>
<BranchId>00000000-0000-0000-0000-000000000000</BranchId>
<Candidates>
<CoverageCandidate>
<Billed>0</Billed>
<Checks>
<CoverageCandidateCheck>
<CheckId>String</CheckId>
<Expl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</Expl>
<Result>String</Result>
</CoverageCandidateCheck>
</Checks>
<Confirm>
<CoverageEffect>
<Expl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</Expl>
<Icon>String</Icon>
<RuleId>String</RuleId>
<Text>String</Text>
</CoverageEffect>
</Confirm>
<ContactId>0</ContactId>
<CostLine>String</CostLine>
<CostTone>String</CostTone>
<DiffLine>String</DiffLine>
<FirstName>String</FirstName>
<HasWarn>false</HasWarn>
<Initials>String</Initials>
<Loaded>0</Loaded>
<MarginPct>0</MarginPct>
<MarginTone>String</MarginTone>
<Name>String</Name>
<OtHours>0</OtHours>
<OtPremium>0</OtPremium>
<Preview>
<CoverageEffect>
<Expl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</Expl>
<Icon>String</Icon>
<RuleId>String</RuleId>
<Text>String</Text>
</CoverageEffect>
</Preview>
<Rank>0</Rank>
<RankExpl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</RankExpl>
</CoverageCandidate>
</Candidates>
<CoverageGapId>0</CoverageGapId>
<CoverageGapUID>00000000-0000-0000-0000-000000000000</CoverageGapUID>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CustomerName>String</CustomerName>
<DecidedPolicyVersionId>0</DecidedPolicyVersionId>
<FilledByContactID>0</FilledByContactID>
<FilledByName>String</FilledByName>
<JobID>0</JobID>
<JobName>String</JobName>
<Leave>
<Began>0001-01-01T00:00:00</Began>
<ChainedGapIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</ChainedGapIds>
<CheckpointDays>0</CheckpointDays>
<Checkpoints>
<CoverageLeaveCheckpoint>
<AtUtc>0001-01-01T00:00:00</AtUtc>
<ByName>String</ByName>
<Note>String</Note>
</CoverageLeaveCheckpoint>
</Checkpoints>
<EstReturn>0001-01-01T00:00:00</EstReturn>
<Fmla>false</Fmla>
<InterimContactId>0</InterimContactId>
<InterimEnd>0001-01-01T00:00:00</InterimEnd>
<InterimName>String</InterimName>
<InterimStart>0001-01-01T00:00:00</InterimStart>
<NextCheckpointUtc>0001-01-01T00:00:00</NextCheckpointUtc>
<ParentLeaveGapId>0</ParentLeaveGapId>
<RequisitionOpened>false</RequisitionOpened>
<RestoredAtUtc>0001-01-01T00:00:00</RestoredAtUtc>
<StaffPostingId>0</StaffPostingId>
</Leave>
<MoveOptions>
<CoverageMoveOption>
<Detail>String</Detail>
<Expl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</Expl>
<Key>String</Key>
<Label>String</Label>
</CoverageMoveOption>
</MoveOptions>
<MustFill>false</MustFill>
<MustFillExpl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</MustFillExpl>
<NoShow>
<Attempts>
<CoverageNoShowAttempt>
<AtUtc>0001-01-01T00:00:00</AtUtc>
<Channel>String</Channel>
<Note>String</Note>
</CoverageNoShowAttempt>
</Attempts>
<AttendanceNote>false</AttendanceNote>
<DeclaredAtUtc>0001-01-01T00:00:00</DeclaredAtUtc>
<FalseAlarm>false</FalseAlarm>
<GraceUntilUtc>0001-01-01T00:00:00</GraceUntilUtc>
</NoShow>
<Offers>
<CoverageOfferInfo>
<Channel>String</Channel>
<ContactId>0</ContactId>
<CoverageOfferId>0</CoverageOfferId>
<Name>String</Name>
<RespondedAtUtc>0001-01-01T00:00:00</RespondedAtUtc>
<Ring>0</Ring>
<SentAtUtc>0001-01-01T00:00:00</SentAtUtc>
<Status>String</Status>
</CoverageOfferInfo>
</Offers>
<OrderExpl>
<Demand>String</Demand>
<Drill>String</Drill>
<Kind>String</Kind>
<Override>
<Consequence>String</Consequence>
<Who>String</Who>
</Override>
<PlainSentence>String</PlainSentence>
<RuleId>String</RuleId>
<RuleName>String</RuleName>
<Source>
<CascadeLevel>String</CascadeLevel>
<PolicyName>String</PolicyName>
</Source>
<WhatWouldChangeIt>String</WhatWouldChangeIt>
<WhyItExists>String</WhyItExists>
</OrderExpl>
<OutContactID>0</OutContactID>
<OutInitials>String</OutInitials>
<OutName>String</OutName>
<ProjectID>0</ProjectID>
<QualifiedLine>String</QualifiedLine>
<Reason>String</Reason>
<RecordNo>String</RecordNo>
<Status>String</Status>
<Timeline>
<CoverageGapEventInfo>
<AtUtc>0001-01-01T00:00:00</AtUtc>
<Channel>String</Channel>
<ContactName>String</ContactName>
<Detail>String</Detail>
<EventType>String</EventType>
</CoverageGapEventInfo>
</Timeline>
<Track>String</Track>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
<WindowEnd>0001-01-01T00:00:00</WindowEnd>
<WindowStart>0001-01-01T00:00:00</WindowStart>
<WorkerScheduleItemID>0</WorkerScheduleItemID>
</Gap>
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
</CoverageGapResponse>