Renewals API

See the Renewals Feature Guide for more information about using this feature.

Endpoint Index

ActionEndpoint
Create a renewalPOST /policies/{policyLocator}/renewals
List renewals for a policyGET /policies/{policyLocator}/renewals
Fetch a renewalGET /renewals/{renewalLocator}
Fetch a renewal's underwriting decisionGET /renewals/{renewalLocator}/automatedUnderwritingResult
Fetch a renewal's pricing changesGET /renewals/{renewalLocator}/price
Update a renewalPATCH /renewals/{renewalLocator}/update
Quote a renewalPATCH /renewals/{renewalLocator}/quote
Accept a renewalPATCH /renewals/{renewalLocator}/accept
Invalidate a renewalPATCH /renewals/{renewalLocator}/invalidate
Discard a renewalPATCH /renewals/{renewalLocator}/discard
Issue a renewalPATCH /renewals/{renewalLocator}/issue
Get policy as if the renewal were issuedGET /renewals/{renewalLocator}/policyWhenIssued
Edit, accept, or issue a renewalPATCH /renewals/{renewalLocator}

Details

Create a renewal
POST /policies/{policyLocator}/renewals
RenewalCreateRequest
required
renewalEndTimestamp timestamp

optional
state string application | quoted | accepted | issued
overrideResourcesAsOfTimestamp timestamp
fieldValues map<string,[string]>
addFieldGroups [FieldGroupCreateRequest]
updateFieldGroups [FieldGroupUpdateRequest]
removeFieldGroups [string]
addExposures [ExposureCreateRequest]
updateExposures [RenewalExposureUpdateRequest]
endExposures [string]
autofill [string]
newPaymentScheduleName string
List renewals for a policy
GET /policies/{policyLocator}/renewals
    Request:
    NamePositionTypeRequired
    perilPricesquerystringoptional
    policyLocatorpathstringrequired
    renewalStatesquerystringoptional
    Response: [RenewalResponse]

The perilPrices and renewalStates query parameters control filtering of data in RenewalResponse, allowing you to retrieve just the information you need for the policy’s set of renewals.

renewalStates takes a comma-delimited list of renewal states for inclusion in the set of renewals that the endpoint returns. If the parameter is omitted, the response includes renewals in any state.

perilPrices, when set to none, allows you to suppress inclusion of the perilPrices array in the exposurePrices collection of each renewal’s renewalResponse.price. If this parameter is omitted, perilPrices are included.

For example, given the following request:

GET /policies/{policyLocator}/renewals?renewalStates=accepted,issued&perilPrices=none

  • The response will only contain renewals in the accepted or issued states.

  • Each RenewalResponse will omit the perilPrices array under the exposure prices data.

RenewalResponse
required
locator string
policyholderLocator string
policyLocator string
productLocator string
state string application | quoted | accepted | issued | invalidated | discarded
createdTimestamp timestamp
updatedTimestamp timestamp
renewalEndTimestamp timestamp
renewalStartTimestamp timestamp
fieldValues map<string,[string]>
addFieldGroups [FieldGroupCreateRequest]
updateFieldGroups [FieldGroupUpdateRequest]
removeFieldGroups [string]
addExposures [ExposureCreateRequest]
updateExposures [RenewalExposureUpdateRequest]
endExposures [string]

optional
issuedTimestamp timestamp
overrideResourcesAsOfTimestamp timestamp
resourcesAsOfTimestamp timestamp
automatedUnderwritingResult AutomatedUnderwritingResultResponse
newPaymentScheduleName string
plannedInvoices [FutureInvoiceResponse]

Note

Installment fees are not visible in the planned invoices set for renewals that have not yet been issued.

Fetch a renewal
GET /renewals/{renewalLocator}
    Request:
    NamePositionTypeRequired
    renewalLocatorpathstringrequired
    Response: RenewalResponse
Fetch a renewal's underwriting decision
GET /renewals/{renewalLocator}/automatedUnderwritingResult
Fetch a renewal's pricing changes
GET /renewals/{renewalLocator}/price

Note: All pricing or underwriting rules run before acceptance are non-final.

Update a renewal
PATCH /renewals/{renewalLocator}/update
Quote a renewal
PATCH /renewals/{renewalLocator}/quote
Accept a renewal
PATCH /renewals/{renewalLocator}/accept
Invalidate a renewal
PATCH /renewals/{renewalLocator}/invalidate
Discard a renewal
PATCH /renewals/{renewalLocator}/discard
    Request:
    NamePositionTypeRequired
    renewalLocatorpathstringrequired
    Response: RenewalResponse
Issue a renewal
PATCH /renewals/{renewalLocator}/issue
RenewalActionRequest
optional
action string discard | quote | accept | issue | invalidate | update
renewalUpdate RenewalUpdateRequest
conflictHandling string block | invalidate
RenewalUpdateRequest
required
addFieldGroups [FieldGroupCreateRequest]
updateFieldGroups [FieldGroupUpdateRequest]
removeFieldGroups [string]

optional
overrideResourcesAsOfTimestamp timestamp
renewalEndTimestamp timestamp
fieldValues map<string,[string]>
addExposures [ExposureCreateRequest]
updateExposures [RenewalExposureUpdateRequest]
endExposures [string]
autofill [string]
newPaymentScheduleName string
resetOverrideResourcesAsOfTimestamp boolean
Get policy as if the renewal were issued
GET /renewals/{renewalLocator}/policyWhenIssued
    Request:
    NamePositionTypeRequired
    renewalLocatorpathstringrequired
    Response: PolicyResponse

This endpoint will return what the policy will look like, including pricing and characteristics, assuming the renewal is issued. It will only work on accepted renewals.

Legacy Renewals

Edit, accept, or issue a renewal
PATCH /renewals/{renewalLocator}

This endpoint consolidating all renewal actions into a single PATCH call is considered legacy. The same functionality has been split out into individual actions, listed above, and will afford more granular control when using Roles & Permissions.

See the Legacy Renewals topic for information on older renewal functionality.