Policy API
Endpoint Index
Action | Endpoint |
---|---|
Create a policy | POST /policy |
Fetch a policy | GET /policy/{policyLocator} |
Update a draft policy | POST /policy/{policyLocator}/update |
Finalize a policy | POST /policy/{policyLocator}/finalize |
Issue a policy | POST /policy/{policyLocator}/issue |
Discard a policy | POST /policy/{policyLocator}/discard |
Add a document to a policy | POST /policy/{policyLocator}/addDocument |
Remove a document from a policy | POST /policy/{policyLocator}/removeDocument |
Fetch a policy's automated underwriting result | GET /policy/{policyLocator}/automatedUnderwritingResult |
Add or reverse fees | PATCH /policy/{policyLocator}/fees |
Fetch a policy's pricing data | GET /policy/{policyLocator}/price |
Price a policy | POST /policy/{policyLocator}/price |
Change Payment Schedule | POST /policy/{policyLocator}/paymentSchedule |
Fetch a policy's invoices | GET /policy/{policyLocator}/checkInvoices |
Issue the next invoice for a policy | POST /policy/{policyLocator}/issueNextInvoice |
Fetch a Policy Snapshot | POST /policies/{policyLocator}/snapshot |
Fetch a Policy Coverage Summary | POST /policies/{policyLocator}/coverageSummary |
Upgrade a policy's product version | PATCH /policy/{policyLocator}/upgrade |
Cancel a policy | POST /policy/{policyLocator}/cancel |
Fetch a policy's cancellation value | GET /policy/{policyLocator}/cancellationValue |
Withdraw a policy | POST /policy/{policyLocator}/withdraw |
Basic Operations
POST /policy
Name | Position | Type | Required |
---|---|---|---|
createRequest | body | PolicyCreateRequest | required |
entities | query | string | optional |
entitiesAsOfTimestamp | query | timestamp | optional |
includeReplacedCharacteristics | query | boolean | optional |
summarizeQuotes | query | boolean | optional |
requiredpolicyholderLocator stringproductName stringoptionaloverrideResourcesAsOfTimestamp timestamppolicyEndTimestamp timestamppolicyStartTimestamp timestampexposures [ExposureCreateRequest]fieldValues map<string,[string]>autofill [string]currency stringfieldGroups [FieldGroupCreateRequest]finalize booleanpaymentScheduleName stringpremiumReportName stringconfigVersion integer
requiredlocator stringpolicyholderLocator stringproductLocator stringproductName stringcreatedTimestamp timestampupdatedTimestamp timestamporiginalContractStartTimestamp timestamporiginalContractEndTimestamp timestampeffectiveContractEndTimestamp timestampcharacteristics [PolicyCharacteristicsResponse]modifications [PolicyModificationResponse]exposures [ExposureResponse]documents [PolicyDocumentResponse]invoices [PolicyInvoiceResponse]grossFees numbercurrency stringfees [FeeResponse]configVersion integerdisplayId string (deprecated)optionalissuedTimestamp timestampoverrideResourcesAsOfTimestamp timestampresourcesAsOfTimestamp timestampcancellation CancellationInfocashBalance CashBalanceResponsegrossFeesCurrency stringpaymentScheduleName stringpremiumReportName stringquoteLocator stringquoteSummary QuoteSummaryResponse
Note
The
overrideResourcesAsOfTimestamp
attribute should not be used before the Resource Management feature has been implemented.When calling
POST /policy
, by default thequoteSummary
will remain unpopulated in the response for performance reasons. To include a quote summary, set the query parametersummarizeQuotes=true
.The field
displayId
is deprecated. Uselocator
instead.
Important
The default for policies on create or update for finalization is finalize = true
. To prevent immediate finalization and immutability, set finalize = false
.
GET /policy/{policyLocator}
Name | Position | Type | Required |
---|---|---|---|
entities | query | string | optional |
entitiesAsOfTimestamp | query | timestamp | optional |
includeReplacedCharacteristics | query | boolean | optional |
policyLocator | path | string | required |
summarizeQuotes | query | boolean | optional |
Note
By default, the
quoteSummary
will remain unpopulated in the response for performance reasons. To include a quote summary, set the query parametersummarizeQuotes=true
.entitiesAsOfTimestamp
,includeReplacedCharacteristics
, andentities
query parameters control filtering of unrequired response elements prior to the “as of” timestamp. See Policy API Query Parameters for more details.
POST /policy/{policyLocator}/update
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
updateRequest | body | PolicyUpdateRequest | required |
requiredaddFieldGroups [FieldGroupCreateRequest]updateFieldGroups [FieldGroupUpdateRequest]removeFieldGroups [string]addExposures [ExposureCreateRequest]updateExposures [DraftPolicyExposureUpdateRequest]removeExposures [string]optionaleffectiveContractEndTimestamp timestampeffectiveContractStartTimestamp timestampoverrideResourcesAsOfTimestamp timestamppolicyEndTimestamp timestamppolicyStartTimestamp timestampfieldValues map<string,[string]>autofill [string]finalize booleanpaymentScheduleName stringresetOverrideResourcesAsOfTimestamp boolean
POST /policy/{policyLocator}/finalize
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
POST /policy/{policyLocator}/issue
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
POST /policy/{policyLocator}/discard
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
void
Exposures
requiredexposureName stringoptionalperils [PerilCreateRequest]fieldValues map<string,[string]>fieldGroups [FieldGroupCreateRequest]
requiredaddFieldGroups [FieldGroupCreateRequest]updateFieldGroups [FieldGroupUpdateRequest]removeFieldGroups [string]addPerils [PerilCreateRequest]updatePerils [PerilUpdateRequest]exposureLocator stringremovePerils [string]optionalfieldValues map<string,[string]>
requiredlocator stringname stringdisplayId stringpolicyholderLocator stringpolicyLocator stringproductLocator stringcreatedTimestamp timestampupdatedTimestamp timestampcharacteristics [ExposureCharacteristicsResponse]perils [PerilResponse]
Perils
requiredname stringoptionallocator stringfieldValues map<string,[string]>deductible numberlumpSumPayment numberfieldGroups [FieldGroupCreateRequest]indemnityInAggregate stringindemnityPerEvent stringindemnityPerItem string
requiredfieldValues map<string,[string]>addFieldGroups [FieldGroupCreateRequest]updateFieldGroups [FieldGroupUpdateRequest]removeFieldGroups [string]perilLocator stringoptionaldeductible numberlumpSumPayment numberindemnityInAggregate stringindemnityPerEvent stringindemnityPerItem stringremoveDeductible booleanremoveIndemnityInAggregate booleanremoveIndemnityPerEvent booleanremoveIndemnityPerItem booleanremoveLumpSumPayment boolean
requiredlocator stringname stringdisplayId stringpolicyholderLocator stringpolicyLocator stringproductLocator stringcreatedTimestamp timestampupdatedTimestamp timestampcharacteristics [PerilCharacteristicsResponse]exposureLocator stringrenewalGroup string
Characteristics
requiredlocator stringpolicyholderLocator stringpolicyLocator stringproductLocator stringcreatedTimestamp timestampupdatedTimestamp timestampstartTimestamp timestampendTimestamp timestamppolicyEndTimestamp timestamppolicyStartTimestamp timestampfieldValues map<string,[string]>fieldGroupsByLocator map<string,map<string,[string]>>mediaByLocator map<string,Media>taxGroups [TaxGroupResponse]optionalissuedTimestamp timestampreplacedTimestamp timestampgrossPremium numbergrossTaxes numbergrossPremiumCurrency stringgrossTaxesCurrency string
requiredlocator stringpolicyholderLocator stringpolicyLocator stringproductLocator stringcreatedTimestamp timestampupdatedTimestamp timestampstartTimestamp timestampendTimestamp timestampfieldValues map<string,[string]>exposureLocator stringfieldGroupsByLocator map<string,map<string,[string]>>mediaByLocator map<string,Media>optionalissuedTimestamp timestampreplacedTimestamp timestamp
requiredlocator stringpolicyholderLocator stringpolicyLocator stringproductLocator stringpolicyCharacteristicsLocator stringexposureCharacteristicsLocator stringcreatedTimestamp timestampupdatedTimestamp timestampcoverageStartTimestamp timestampcoverageEndTimestamp timestampfieldValues map<string,[string]>fieldGroupsByLocator map<string,map<string,[string]>>mediaByLocator map<string,Media>perilLocator stringpolicyModificationLocator stringoptionalissuedTimestamp timestampcharacteristicsAsOfTimestamp timestampreplacedTimestamp timestampdeductible numberlumpSumPayment numbermonthPremium numbermonthTechnicalPremium numberpremium numbertechnicalPremium numberdeductibleCurrency stringindemnityInAggregate stringindemnityInAggregateCurrency stringindemnityPerEvent stringindemnityPerEventCurrency stringindemnityPerItem stringindemnityPerItemCurrency stringlumpSumPaymentCurrency stringpremiumCurrency string
Modifications
requiredlocator stringname stringdisplayId stringpolicyholderLocator stringpolicyLocator stringproductLocator stringcreatedTimestamp timestampupdatedTimestamp timestampexposureModifications [ExposureModificationResponse]mediaByLocator map<string,Media>newPolicyCharacteristicsLocators [string]number integerfieldGroupsByLocator map<string,map<string,[string]>> (deprecated)fieldValues map<string,[string]> (deprecated)optionalcancellationLocator stringissuedTimestamp timestampeffectiveTimestamp timestamppolicyEndTimestamp timestampresourcesAsOfTimestamp timestamppremiumChange numberautomatedUnderwritingResult AutomatedUnderwritingResultResponsecancellationName stringendorsementLocator stringnewPolicyCharacteristicsLocator stringpremiumChangeCurrency stringreinstatementLocator stringrenewalLocator stringconfigVersion integer (deprecated)
requiredlocator stringpolicyholderLocator stringpolicyLocator stringproductLocator stringexposureLocator stringperilModifications [PerilModificationResponse]policyModificationLocator stringoptionalnewExposureCharacteristicsLocator string
requiredlocator stringpolicyholderLocator stringpolicyLocator stringproductLocator stringexposureModificationLocator stringperilLocator stringoptionalpremiumChange numbernewPerilCharacteristicsLocator stringpremiumChangeCurrency stringreplacedPerilCharacteristicsLocator string
Field Groups
requiredfieldName stringoptionalfieldValues map<string,[string]>
requiredfieldGroupLocator stringfieldName stringfieldValues map<string,[string]>
Documents
POST /policy/{policyLocator}/addDocument
Name | Position | Type | Required |
---|---|---|---|
displayName | query | string | required |
document | formdata | file | required |
documentType | query | string | required |
policyLocator | path | string | required |
Upload a PDF or HTML file and add it to the documents attached to the specified policy. This will not cause an endorsement or other policy transaction.
POST /policy/{policyLocator}/removeDocument
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
request | body | PolicyDocumentRemoveRequest | required |
Remove a user-uploaded document from a policy.
The policy must not be already issued.
requiredlocator stringdisplayName stringfileName stringtype string pdf | htmloptionalcreatedTimestamp timestampurlExpirationTimestamp timestamppolicyModificationLocator stringurl string
requireddocumentLocator string
Underwriting
GET /policy/{policyLocator}/automatedUnderwritingResult
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
requireddecisionTimestamp timestampdecision string accept | reject | nonenotes [string]
Fees
PATCH /policy/{policyLocator}/fees
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
req | body | FeeUpdateRequest | required |
requirednewFees [FeeCreateRequest]reverseFees [string]
requiredstartTimestamp timestampendTimestamp timestampamount numberfeeName stringoptionaldescription string
requiredlocator stringname stringstartTimestamp timestampendTimestamp timestampamount numberdescription stringreversed booleanoptionalamountCurrency string
requiredfees [FeeResponse]
Pricing
GET /policy/{policyLocator}/price
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
POST /policy/{policyLocator}/price
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
requiredgrossCommissions numbergrossFees numbergrossPremium numbergrossTaxes numberpremiumsByExposureLocator map<string,number>premiumsByPerilLocator map<string,number>totalDue numbercommissions [CommissionResponse]exposurePrices [GetExposurePriceResponse]fees [FeeResponse]holdbacks [HoldbackResponse]taxGroups [TaxGroupResponse]optionalgrossTechnicalPremium numbergrossCommissionsCurrency stringgrossFeesCurrency stringgrossPremiumCurrency stringgrossTaxesCurrency stringgrossTechnicalPremiumCurrency stringtotalDueCurrency string
requiredgrossCommissions numbergrossFees numbergrossPremium numbergrossTaxes numbertotal numbercommissions [CommissionResponse]exposurePrices [GetExposurePriceResponse]fees [FeeResponse]holdbacks [HoldbackResponse]taxGroups [TaxGroupResponse]optionalgrossTechnicalPremium numbergrossCommissionsCurrency stringgrossFeesCurrency stringgrossPremiumCurrency stringgrossTaxesCurrency stringgrossTechnicalPremiumCurrency stringtotalCurrency string
requiredlocator stringname stringgrossCommissions numbergrossPremium numbergrossTaxes numbertotal numbercommissions [CommissionResponse]perilPrices [GetPerilPriceResponse]taxGroups [TaxGroupResponse]optionalgrossTechnicalPremium numbergrossCommissionsCurrency stringgrossPremiumCurrency stringgrossTaxesCurrency stringgrossTechnicalPremiumCurrency stringtotalCurrency string
requiredlocator stringname stringgrossCommissions numbergrossTaxes numberpremium numbertotal numbercommissions [CommissionResponse]taxes [TaxGroupResponse]optionaltechnicalPremium numbergrossCommissionsCurrency stringgrossTaxesCurrency stringpremiumCurrency stringtechnicalPremiumCurrency stringtotalCurrency string
requiredamount numberrecipient stringoptionalamountCurrency string
requiredname stringamount numberoptionalamountCurrency string
requiredgrossCommissionsChange numbergrossFeesChange numbergrossPremiumChange numbergrossTaxesChange numbernewGrossCommissions numbernewGrossFees numbernewGrossPremium numbernewGrossTaxes numbernewTotal numbertotalChange numbercommissions [CommissionChangeResponse]exposurePrices [ExposurePriceChangeResponse]fees [FeeChangeResponse]holdbacks [HoldbackResponse]taxGroups [TaxChangeResponse]
requiredname stringgrossCommissionsChange numbergrossPremiumChange numbergrossTaxesChange numbernewGrossCommissions numbernewGrossPremium numbernewGrossTaxes numbercommissions [CommissionChangeResponse]perilPrices [PerilPriceChangeResponse]taxGroups [TaxChangeResponse]optionallocator stringnewlyAdded boolean
requiredname stringgrossCommissionsChange numbergrossPremiumChange numbergrossTaxesChange numbernewGrossCommissions numbernewGrossPremium numbernewGrossTaxes numbercommissions [CommissionChangeResponse]taxes [TaxChangeResponse]optionallocator stringnewlyAdded boolean
requiredname stringchange numbernewAmount number
requiredamountChange numbernewAmount numberrecipient string
requiredname stringamountChange numbernewAmount numberoptionallocator string
requiredlocator stringcancellationLocator stringamount numberisReversed booleantype string premium | tax | fee | commission | holdback | cashoptionalperilName stringperilCharacteristicsLocator stringcommissionRecipient stringfeeLocator stringfeeName stringholdbackMetadata stringtaxLocator stringtaxName string
Invoicing and Financial Transactions
POST /policy/{policyLocator}/paymentSchedule
Name | Position | Type | Required |
---|---|---|---|
paymentScheduleChangeRequest | body | PaymentScheduleChangeRequest | required |
policyLocator | path | string | required |
void
requirednewPaymentScheduleName string
GET /policy/{policyLocator}/checkInvoices
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
POST /policy/{policyLocator}/issueNextInvoice
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
This endpoint issues the next scheduled invoice for the policy (as visible from Check Invoices)
The invoice due date will be the same as if the invoice was issued automatically
Warning
The issue next invoice
endpoint is not recommended for production policies.
requiredfutureInvoices [FutureInvoiceResponse]generatedInvoices [GeneratedInvoiceResponse]
requiredissueTimestamp timestampstartTimestamp timestampendTimestamp timestampfinancialTransactions [FinancialTransactionResponse]optionaldueTimestamp timestampwriteOff boolean
requiredfinancialTransactions [FinancialTransactionResponse]invoice PolicyInvoiceResponse
requiredlocator stringdisplayId stringpolicyLocator stringcreatedTimestamp timestampupdatedTimestamp timestampdueTimestamp timestampstartTimestamp timestampendTimestamp timestampdocuments [PolicyDocumentResponse]totalDue numberinvoiceType string newBusiness | endorsement | renewal | cancellation | reinstatement | installment | premiumReporting | catchUp | otherpayments [PaymentResponse]settlementStatus string outstanding | settledstatuses [PolicyInvoiceStatusAndTimeResponse]totalDueCurrency stringtransactionIssued booleanoptionalpolicyModificationLocator stringpremiumReportName stringsettlementType string paid | writtenOff | zeroDue | invalidated | carriedForward
requiredstartTimestamp timestampendTimestamp timestamppostedTimestamp timestampamount numberpolicyModificationLocator stringtype string premium | tax | fee | commission | holdback | cashoptionalperilName stringperilCharacteristicsLocator stringamountCurrency stringcommissionLocator stringcommissionRecipient stringfeeLocator stringfeeName stringholdbackLocator stringtaxLocator stringtaxName string
requiredtimestamp timestampstatus string unfulfilled | paid | writtenOff | zeroDue | invalidated | carriedForward
Snapshots and Coverage Summaries
Note
See Policy Snapshots and Coverage Summaries for details on using these endpoints.
POST /policies/{policyLocator}/snapshot
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
request | body | PolicySnapshotRequest | required |
requiredsnapshotTimestamp timestamp
The snapshotTimestamp
indicates the time at which you want the snapshot to be based. Policy transactions that were issued after this time will not be reflected in the response.
requiredlocator stringpolicyholderLocator stringproductName stringsnapshotTimestamp timestampcharacteristics [PolicyCharacteristicsResponse]exposures [ExposureSnapshotResponse]
requiredlocator stringname stringcharacteristics [ExposureCharacteristicsResponse]perils [PerilSnapshotResponse]
requiredlocator stringname stringcharacteristics [PerilCharacteristicsResponse]renewalGroup string
POST /policies/{policyLocator}/coverageSummary
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
request | body | CoverageSummaryRequest | required |
requiredcoverageReferenceTimestamp timestampoptionalpolicyHistoryTimestamp timestamp
requiredlocator stringpolicyholderLocator stringproductName stringcoverageReferenceTimestamp timestamppolicyHistoryTimestamp timestampexposures [ExposureCoverageSummaryResponse]documents [PolicyDocumentResponse]optionalcharacteristics PolicyCharacteristicsResponse
requiredlocator stringname stringcharacteristics ExposureCharacteristicsResponseperils [PerilCoverageSummaryResponse]
requiredlocator stringname stringcharacteristics PerilCharacteristicsResponserenewalGroup string
Policy Product Upgrade
PATCH /policy/{policyLocator}/upgrade
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
req | body | PolicyConfigUpgradeRequest | required |
requirednewConfigVersion integer
requiredpolicyLocator stringnewConfigVersion integeroldConfigVersion integer
Legacy Endpoints
POST /policy/{policyLocator}/cancel
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
request | body | PolicyCancellationIssueRequest | required |
requiredvalue numberbalanceAfterCancellation numbergrossCommissionsChange numbergrossFeesChange numbergrossPremiumChange numbergrossTaxesChange numbernewGrossCommissions numbernewGrossFees numbernewGrossPremium numbernewGrossTaxes numbernewTotal numbertotalChange numbercommissions [CommissionChangeResponse]exposurePrices [ExposurePriceChangeResponse]taxGroups [TaxChangeResponse]
requiredcoverageEndTimestamp timestamp
requiredeffectiveTimestamp timestampmodificationLocator stringmodificationName string
GET /policy/{policyLocator}/cancellationValue
Name | Position | Type | Required |
---|---|---|---|
coverageEndTimestamp | query | timestamp | required |
policyLocator | path | string | required |
POST /policy/{policyLocator}/withdraw
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |