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 |
Cancel a policy | POST /policy/{policyLocator}/cancel |
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 remove fees from a Policy | PATCH /policy/{policyLocator}/fees |
Fetch a policy's pricing data | GET /policy/{policyLocator}/price |
Price a policy | POST /policy/{policyLocator}/price |
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 |
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 |
summarizeQuotes | query | boolean | optional |
PolicyResponse
requiredpolicyholderLocator stringproductName stringoptionalpolicyEndTimestamp timestamppolicyStartTimestamp timestampexposures [ExposureCreateRequest]fieldValues map<string,[string]>fieldGroups [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 numberfees [FeeResponse]grossFeesCurrency stringconfigVersion integerdisplayId string (deprecated)optionalissuedTimestamp timestampcancellation CancellationInfopaymentScheduleName stringpremiumReportName stringquoteSummary QuoteSummaryResponse
Note
When calling
POST /policy
andGET /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 |
---|---|---|---|
policyLocator | path | string | required |
summarizeQuotes | query | boolean | optional |
PolicyResponse
POST /policy/{policyLocator}/update
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
updateRequest | body | PolicyUpdateRequest | required |
PolicyResponse
requiredaddFieldGroups [FieldGroupCreateRequest]updateFieldGroups [FieldGroupUpdateRequest]removeFieldGroups [string]addExposures [ExposureCreateRequest]updateExposures [DraftPolicyExposureUpdateRequest]removeExposures [string]optionaleffectiveContractEndTimestamp timestampeffectiveContractStartTimestamp timestamppolicyEndTimestamp timestamppolicyStartTimestamp timestampfieldValues map<string,[string]>finalize booleanpaymentScheduleName string
POST /policy/{policyLocator}/finalize
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
PolicyResponse
POST /policy/{policyLocator}/issue
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
PolicyResponse
POST /policy/{policyLocator}/cancel
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
request | body | PolicyCancellationIssueRequest | required |
PolicyResponse
requiredvalue numberbalanceAfterCancellation numbergrossCommissionsChange numbergrossFeesChange numbergrossPremiumChange numbergrossTaxesChange numbernewGrossCommissions numbernewGrossFees numbernewGrossPremium numbernewGrossTaxes numbernewTotal numbertotalChange numbercommissions [CommissionChangeResponse]exposurePrices [ExposurePriceChangeResponse]taxGroups [TaxChangeResponse]
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]>>grossPremiumCurrency stringgrossTaxesCurrency stringmediaByLocator map<string,Media>taxGroups [TaxGroupResponse]optionalissuedTimestamp timestampreplacedTimestamp timestampgrossPremium numbergrossTaxes number
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]>deductibleCurrency stringfieldGroupsByLocator map<string,map<string,[string]>>indemnityInAggregateCurrency stringindemnityPerEventCurrency stringindemnityPerItemCurrency stringlumpSumPaymentCurrency stringmediaByLocator map<string,Media>perilLocator stringpolicyModificationLocator stringpremiumCurrency stringoptionalissuedTimestamp timestampreplacedTimestamp timestampdeductible numberlumpSumPayment numbermonthPremium numbermonthTechnicalPremium numberpremium numbertechnicalPremium numberindemnityInAggregate stringindemnityPerEvent stringindemnityPerItem string
Modifications
requiredlocator stringname stringdisplayId stringpolicyholderLocator stringpolicyLocator stringproductLocator stringcreatedTimestamp timestampupdatedTimestamp timestampexposureModifications [ExposureModificationResponse]mediaByLocator map<string,Media>newPolicyCharacteristicsLocators [string]number integerpremiumChangeCurrency stringfieldGroupsByLocator map<string,map<string,[string]>> (deprecated)fieldValues map<string,[string]> (deprecated)optionalissuedTimestamp timestampeffectiveTimestamp timestamppolicyEndTimestamp timestamppremiumChange numberautomatedUnderwritingResult AutomatedUnderwritingResultResponsecancellationName stringendorsementLocator stringnewPolicyCharacteristicsLocator stringrenewalLocator stringconfigVersion integer (deprecated)
requiredlocator stringpolicyholderLocator stringpolicyLocator stringproductLocator stringexposureLocator stringperilModifications [PerilModificationResponse]policyModificationLocator stringoptionalnewExposureCharacteristicsLocator string
requiredlocator stringpolicyholderLocator stringpolicyLocator stringproductLocator stringexposureModificationLocator stringperilLocator stringpremiumChangeCurrency stringoptionalpremiumChange numbernewPerilCharacteristicsLocator 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 |
PolicyResponse
Upload a PDF or HTML file and add it to the documents attatched 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 |
PolicyResponse
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 |
AutomatedUnderwritingResultResponse
requireddecisionTimestamp timestampdecision string accept | reject | nonenotes [string]
Fees
PATCH /policy/{policyLocator}/fees
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
req | body | FeeUpdateRequest | required |
PolicyFeeSummaryResponse
requiredstartTimestamp timestampendTimestamp timestampamount numberfeeName stringoptionaldescription string
requirednewFees [FeeCreateRequest]reverseFees [string]
requiredlocator stringname stringstartTimestamp timestampendTimestamp timestampamount numberamountCurrency stringdescription stringreversed boolean
requiredfees [FeeResponse]
Pricing
GET /policy/{policyLocator}/price
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
GetPolicyPriceResponse
POST /policy/{policyLocator}/price
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
PolicyPriceResponse
requiredgrossCommissions numbergrossFees numbergrossPremium numbergrossTaxes numberpremiumsByExposureLocator map<string,number>premiumsByPerilLocator map<string,number>totalDue numbercommissions [CommissionResponse]exposurePrices [GetExposurePriceResponse]fees [FeeResponse]grossCommissionsCurrency stringgrossFeesCurrency stringgrossPremiumCurrency stringgrossTaxesCurrency stringgrossTechnicalPremiumCurrency stringholdbacks [HoldbackResponse]taxGroups [TaxGroupResponse]totalDueCurrency stringoptionalgrossTechnicalPremium number
requiredgrossCommissions numbergrossFees numbergrossPremium numbergrossTaxes numbertotal numbercommissions [CommissionResponse]exposurePrices [GetExposurePriceResponse]fees [FeeResponse]grossCommissionsCurrency stringgrossFeesCurrency stringgrossPremiumCurrency stringgrossTaxesCurrency stringgrossTechnicalPremiumCurrency stringholdbacks [HoldbackResponse]taxGroups [TaxGroupResponse]totalCurrency stringoptionalgrossTechnicalPremium number
requiredlocator stringname stringgrossCommissions numbergrossPremium numbergrossTaxes numbertotal numbercommissions [CommissionResponse]grossCommissionsCurrency stringgrossPremiumCurrency stringgrossTaxesCurrency stringgrossTechnicalPremiumCurrency stringperilPrices [GetPerilPriceResponse]taxGroups [TaxGroupResponse]totalCurrency stringoptionalgrossTechnicalPremium number
requiredlocator stringname stringgrossCommissions numbergrossTaxes numberpremium numbertotal numbercommissions [CommissionResponse]grossCommissionsCurrency stringgrossTaxesCurrency stringpremiumCurrency stringtaxes [TaxGroupResponse]technicalPremiumCurrency stringtotalCurrency stringoptionaltechnicalPremium number
requiredamount numberamountCurrency stringrecipient string
requiredname stringamount numberamountCurrency 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 string
requiredname stringgrossCommissionsChange numbergrossPremiumChange numbergrossTaxesChange numbernewGrossCommissions numbernewGrossPremium numbernewGrossTaxes numbercommissions [CommissionChangeResponse]taxes [TaxChangeResponse]optionallocator string
requiredname stringchange numbernewAmount number
requiredamountChange numbernewAmount numberrecipient string
requiredname stringamountChange numbernewAmount numberoptionallocator string
requiredlocator stringcancellationLocator stringamount numberisReversed booleantype string premium | tax | fee | commission | holdbackoptionalperilName stringperilCharacteristicsLocator stringcommissionRecipient stringfeeLocator stringfeeName stringholdbackMetadata stringtaxLocator stringtaxName string
Invoicing and Financial Transactions
GET /policy/{policyLocator}/checkInvoices
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
CheckInvoicesResponse
POST /policy/{policyLocator}/issueNextInvoice
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
PolicyResponse
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 numberpayments [PaymentResponse]settlementStatus string outstanding | settledstatuses [PolicyInvoiceStatusAndTimeResponse]totalDueCurrency stringoptionalpolicyModificationLocator stringpremiumReportName stringsettlementType string paid | writtenOff | zeroDue | invalidated | carriedForward
requiredstartTimestamp timestampendTimestamp timestamppostedTimestamp timestampamount numberamountCurrency stringpolicyModificationLocator stringtype string premium | tax | fee | commission | holdbackoptionalperilName stringperilCharacteristicsLocator 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 |
PolicySnapshotResponse
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 |
PolicyCoverageSummaryResponse
requiredcoverageReferenceTimestamp timestampoptionalpolicyHistoryTimestamp timestamp
requiredlocator stringpolicyholderLocator stringproductName stringcoverageReferenceTimestamp timestamppolicyHistoryTimestamp timestampexposures [ExposureCoverageSummaryResponse]documents [PolicyDocumentResponse]optionalcharacteristics PolicyCharacteristicsResponse
requiredlocator stringname stringcharacteristics ExposureCharacteristicsResponseperils [PerilCoverageSummaryResponse]
requiredlocator stringname stringcharacteristics PerilCharacteristicsResponserenewalGroup string
Legacy Endpoints
requiredcoverageEndTimestamp timestamp
requiredeffectiveTimestamp timestampmodificationLocator stringmodificationName string
GET /policy/{policyLocator}/cancellationValue
Name | Position | Type | Required |
---|---|---|---|
coverageEndTimestamp | query | timestamp | required |
policyLocator | path | string | required |
CancellationValueResponse
POST /policy/{policyLocator}/withdraw
Name | Position | Type | Required |
---|---|---|---|
policyLocator | path | string | required |
PolicyResponse