BriteCore offers a fully headless policy administration system used to execute core processes such as rating, underwriting, binding, issuing, endorsing, canceling/rescinding cancelation, reinstating, and renewing policies.
This tutorial walks you through the Britecore Classic API endpoints handling policy transactional services, including:
- Create policy revision
- Update policy effective dates
- Retrieve policy related information: Policy terms, revision details, property details etc.
- Update policy with rating information
- Add coverages
- Rate the revision
- Bind the policy
- Cancel a policy
- Reinstating a cancellation
We also cover the key concepts to understand policies in BriteCore, including policies process flow, policy revisions and status.
Note: For auto-related policy information, refer to the Endorse, renew, cancel and reinstate your policy.
Key concepts
- Cancellation: A coverage that’s no longer in effect.
- Cancellation pending: An increase in risk/failure to pay on time.
- Commit date: The date a revision (endorsement) is put into force.
- Coverage: A guarantee of financial restoration in the event of a loss.
- Endorsement: A change to a policy, such as increasing coverage, decreasing coverage, or changing the mortgagee. Within BriteCore, endorsements are referred to as revisions.
- Endorsement transactions: Revisions to in-force policies.
- Effective date: The date an insurance policy becomes active.
- Expiration: End of term without a renewal offer.
- In-force policies: Insurance policies that are currently under contract
- Non-renewal: No offer to extend coverage for another term.
- Policy: A contract that guarantees insurance coverage for a given duration of time.
- Premium: Money paid by a policyholder to an insurance carrier in exchange for insurance.
- Reinstatement: A previously canceled coverage now back in effect.
- Renewal: An offer to extend coverage for another term.
- Revision: A BriteCore-specific term referring to a point-in-time snapshot of a policy contract created when there is a substantive change to the contract.
- Risk: An asset protected by insurance.
- State: Describes a step in a particular transactional workflow process, usch as In Progress, Approved, Rejected, Abandoned, etc.
- Status: The current status of a policy contract in relation to specific workflows, such as Active, Canceled, or Expired.
- Transaction: A point-in-time action that results in a document exchange among parties, such as agents, insureds, underwriters. Not all transactions are revisions.
- Straight-trough processing (STP): Electronically streamlines and processes information across multiple points.
Policies process flow
In BriteCore, a policy’s status depends on where it is in the policy lifecycle. Figure 1 outlines a policy’s flow from application submission to active policies, including possible transactions on an active policy.

Policy revisions in BriteCore
A revision is the foundation of a policy and tracks the changes to a policy over time, including written premium. Revision states indicate whether the revision’s information is in effect; see Table 1.
Table 1: Revision states.
Revision state | Description |
Committed | The data associated with the revision is in effect and can be reported on. |
Open | The data associated with the revision is in progress and, therefore, isn't in effect and can’t be reported on. |
Pending | The data associated with the revision is in progress; it isn't in effect and can’t be reported on. |
Archived | The data associated with the revision was at one time in effect and can be reported on. |
Use BriteAPIs to set up a Policies dashboard
This section will walk you through specific API endpoints to select for your Policies dashboard.
Step 1: Get a security token
You will need to request an ID and Secret to use OAuth 2.0.
For more information, refer to How do I get started?
Step 2: Search policies
Pass a string to the Search endpoint to retrieve a list of matching policies.
Sample request
curl --location --request POST '/api/v2/policies/search' \
|
Sample response
"data": {
|
Step 3: Create policy revision
The new_revision endpoint allows you to create a new policy revision for a policy change (endorsement) or renewal date.
Sample request
curl --location --request POST '/api/v2/policies/new_revision' \
|
Sample response
{
|
Step 4: Update policy effective dates
Use the update_effective_and_expiration_date endpoint to update the effective date, expiration date, and policy term.
Sample request
curl --location --request POST '/api/v2/policies/update_effective_and_expiration_date' \
|
Sample response
{
|
Step 5: Retrieve policy terms
Use retrieve_policy_terms to obtain policy terms identifiers and their revisions for a policy. policy_number is required.
Sample request
curl --location --request POST '/api/v2/policies/retrieve_policy_terms' \
|
Sample response
{
|
Step 6: Retrieve policy details
The endpoint retrieve_policy retrieves top-level information about a policy, such as named insured, agency, mortgagee, inspector, etc.
Sample request
curl –location –request POST ‘/api/v2/policies/retrieve_policy’ \ –header ‘Content-Type: application/json’ \ –data-raw ‘{ “api_key”: “”, “policy_number”: “10-2019-181” }’ |
Sample response
{
|
Step 7: Retrieve a list of properties
The retrieve_risks retrieves a paginated/filtered property risks for a revision. revision_id is a required field.
Sample request
curl --location --request POST '/api/v2/policies/retrieve_risks' \
|
Sample response
{
\n123456\n123456\nIWS\n02\nY\nN\nC\n\n\n\nLOCATION\nPropertyType\nP\n\n\n
|
Step 8: Retrieve property details
The retrieve_risk_details obtains more details on the property (e.g. mortgagee information and rating information). risk_id from Step 7 is required.
Sample request
curl --location --request POST '/api/v2/policies/retrieve_risk_details' \
|
Sample response
{
\n123456\n123456\nIWS\n02\nY\nN\nC\n\n\n\nLOCATION\nPropertyType\nP\n\n\n
|
Step 9: Retrieve revision details
The retrieve_revision_details endpoint retrieves liability coverage and rating information specific to a revision. revision_id is required.
Sample request
curl --location --request POST '/api/v2/policies/retrieve_revision_details' \
}’ |
Sample response
{
|
Step 10: Update policy with property rating information
The update_rating_information updates an existing property or revision’s rating information.
Sample request
curl --location --request POST '/api/v2/policies/update_rating_information' \
|
Sample response
{
|
Step 11: Add coverage
The add_line_item adds a line item to a revision or property.
Sample request
curl --location --request POST '/api/v2/policies/add_line_item' \
|
Sample response
{
|
Step 12: Rate revision
The endpoint rate_revision calculates a rate for the given revision.
Sample request
curl --location --request POST '/api/v2/policies/rate_revision' \
|
Sample response
{
|
Step 13: Bind the policy
Use the endpoint bind to bind the quote and issue a Policy. This endpoint also generates Declarations and creates a Billing Schedule.
Sample request
curl --location --request POST '/api/v2/policies/bind' \
|
Sample response
{
|
Step 14: Cancel a policy
Note that the underlying process affects the following:
- policy_accounting
- update_invoice_print_state
- creates revision row for (policy_id, policy_term_id) with policyStatusReasonID set to cancellation_reason_id and cancel date
- updates cancelDate of other future committed revisions for this (policy_id, policy_term_id)
- creates account_history row
- creates a cancellation notice deliverable
- adds a system note to audit the change
You must send the following payload:
{ "cancel_reason_id": "string", "policy_term_id": "string", "cancel_date": "string", "cancel_pending_date": "string", "policy_id": "string" } |
Sample request
curl --location --request POST '/api/v2/policies/cancel_policy' \
|
Sample response
{
|
You have successfully carried out common policy transactions through BriteAPIs.