BrightWrite™ (0.1.7)

Download OpenAPI specification:Download

License: © Cover Genius

BrightWrite API

Authentication

apiKeyHeader

Security scheme type: API Key
header parameter name: x-api-key

partner

Data ingestion for market-neutral pricing benchmark

This endpoint ingests the car quotes, booking and insurance opt-in data to assist with market-neutral pricing analysis.

Authorizations:
Request Body schema: application/json
partnerId
required
string <= 128 characters

Partner identifier. Your business name to differentiate you from other partners

eventType
required
string

The type of event, use "Search" as a fixed value

rentalCarPickUpBranchAddress
string <= 256 characters

Branch address where the rental car will be picked up

rentalCarPickUpBranchCode
string <= 128 characters

Internal branch code where the rental car will be picked up

rentalCarPickUpCity
required
string <= 128 characters

City where the rental car will be picked up

rentalCarPickUpCountry
string <= 128 characters

Country of the rental car will be picked up

rentalCarPickUpState
string <= 128 characters

State name where the rental car will be picked up

rentalCarDropOffBranchAddress
string <= 256 characters

Branch address where the rental car will be dropped off

rentalCarDropOffBranchCode
string <= 128 characters

Internal branch code where the rental car will be dropped off

rentalCarDropOffCity
required
string <= 128 characters

City where the rental car will be dropped off

rentalCarDropOffCountry
string <= 128 characters

Country of the rental car will be dropped off

rentalCarDropOffState
string <= 128 characters

State where the rental car will be dropped off

currencyForExcessAndLiability
string 3 characters

Three character ISO 4217

insurancePrice
number <double>

The price above which the insurance must be sold if the book is to be profitable

insurancePriceCurrency
string 3 characters

Currency used. Three character ISO 4217

partnerQuoteId
string <= 128 characters

Quote identifier in partner's database. This is useful in the future for data consolidation, stitching etc..

policyDestinationCountryCode
string 2 characters

ISO 3166 Two Character standard

policyEffectiveDateTime
string <date-time>

Effective date and time for the policy (use 00:00:00 time if coverage starts beginning of day)

policyExcess
number <double>

Excess that the underwriter has quoted

policyExpirationDateTime
string <date-time>

Expiration date and time of the policy (use 23:59:59 if date is inclusive OR 00:00:00 time of next day if date is exclusive.

policyLiability
number <double>

Liability that the underwriter has quoted

policyType
string <= 128 characters

Requested policy type [ ExcessReduction, CDW, Comprehensive, RoadsideAssistance, FullProtection ]. This is the policy type code agreed with Partner in advance.

requestedLiability
number <double>

This is the max payout for the policy requested by the partner (the Cover Amount in RC.com API)

cookieId
required
string <= 128 characters

Cookie identifier

ipAddress
string <= 45 characters

Client IP Address, v4 or v6

sessionId
string <= 128 characters

Session identifier

userAgent
string <= 256 characters

The device user agent string

Responses

201

The data is successfully loaded

post /events
https://app.brightwrite.com/api/v1/events

Request samples

application/json
Copy
Expand all Collapse all
{
  • "partnerId": "ABCRent",
  • "eventType": "BrightwriteSearchEvent",
  • "rentalCarPickUpBranchAddress": "string",
  • "rentalCarPickUpBranchCode": "string",
  • "rentalCarPickUpCity": "string",
  • "rentalCarPickUpCountry": "string",
  • "rentalCarPickUpState": "string",
  • "rentalCarDropOffBranchAddress": "string",
  • "rentalCarDropOffBranchCode": "string",
  • "rentalCarDropOffCity": "string",
  • "rentalCarDropOffCountry": "string",
  • "rentalCarDropOffState": "string",
  • "currencyForExcessAndLiability": "str",
  • "insurancePrice": 0,
  • "insurancePriceCurrency": "str",
  • "partnerQuoteId": "81a2ffeb-2231-4aea-8fc5-190c25ec9e0a",
  • "policyDestinationCountryCode": "st",
  • "policyEffectiveDateTime": "2018-09-10T08:26:59Z",
  • "policyExcess": 0,
  • "policyExpirationDateTime": "2018-09-10T08:26:59Z",
  • "policyLiability": 0,
  • "policyType": "string",
  • "requestedLiability": 0,
  • "cookieId": "string",
  • "ipAddress": "string",
  • "sessionId": "string",
  • "userAgent": "string"
}

internal

Pricing request for a car rental policy

Accepts information about quoted policy and related booking information and returns price recommendation for a given policy

Authorizations:
Request Body schema: application/json
partnerPrimaryInsuredId
string <= 128 characters

Insured Person ID of the policy holder

partnerQuoteId
string <= 128 characters

Quote identifier in partner's database

effectiveDateTime
required
string <date-time>

Effective date and time for the policy (use 00:00:00 time if coverage starts beginning of day)

requestDateTime
required
string <date-time>

Timestamp of the quote request when it was first received by the distributor

expirationDateTime
required
string <date-time>

Expiration date and time of the policy (use 23:59:59 if date is inclusive OR 00:00:00 time of next day if date is exclusive.

currency
required
string 3 characters

Currency used. Three character ISO 4217

insuredPersons
required
Array of object (InsuredPerson)

List of people who are insured/covered by this policy

partnerId
required
string <= 128 characters

Partner identifier. Human and machine readable so we can use in tagging

pricingRequestOrigin
string <= 512 characters

Identifier, which partner use to specify pricing request origin

partnerPrice
required
number <double>

The price above which the insurance must be sold if the book is to be profitable

appId
string <= 128 characters

Optinal field to identify source of traffic. For example website name or mobile app identifier.

appEnv
string <= 128 characters

Optinal field which can be used to distinguish production and staging or any other test environments which partners can use as part of their processes.

purchaser
object (Purchaser)
brightwriteCookieId
string <= 128 characters

BrightWrite cookie identifier

experimentGroup
string

The experimentGroup (only turned on for RentalCars)

policyDestinationCountryCode
required
string 2 characters

ISO 3166 Two Character standard

policyType
required
string <= 128 characters

Requested policy type [ ExcessReduction, CDW, Comprehensive, RoadsideAssistance, FullProtection ]. This is the policy type code agreed with Partner in advance.

requestedLiability
number <double>

This is the max payout for the policy requested by the partner (the Cover Amount in RC.com API)

policyExcess
required
number <double>

Excess that the underwriter has quoted

policyLiability
required
number <double>

Liability that the underwriter has quoted

currencyForExcessAndLiability
required
string 3 characters

Three character ISO 4217

rentalCarBooking
required
object (BookingRentalCar)

Responses

201

Pricing request has been succesfully processed

400

Invalid pricing request has been sent

post /pricingRequestCarRental
https://app.brightwrite.com/api/v1/pricingRequestCarRental

Request samples

application/json
Copy
Expand all Collapse all
{
  • "partnerPrimaryInsuredId": "string",
  • "partnerQuoteId": "string",
  • "effectiveDateTime": "2018-09-10T08:26:59Z",
  • "requestDateTime": "2018-09-10T08:26:59Z",
  • "expirationDateTime": "2018-09-10T08:26:59Z",
  • "currency": "str",
  • "insuredPersons":
    [
    ],
  • "partnerId": "string",
  • "pricingRequestOrigin": "string",
  • "partnerPrice": 0,
  • "appId": "string",
  • "appEnv": "string",
  • "purchaser":
    {
    },
  • "brightwriteCookieId": "string",
  • "experimentGroup": "string",
  • "policyDestinationCountryCode": "st",
  • "policyType": "string",
  • "requestedLiability": 0,
  • "policyExcess": 0,
  • "policyLiability": 0,
  • "currencyForExcessAndLiability": "str",
  • "rentalCarBooking":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "partnerId": "string",
  • "pricingRequestId": "string",
  • "price": 0,
  • "currency": "string",
  • "segment": "string",
  • "pricingRule": "string",
  • "group": "string",
  • "modifier": 0
}

Pricing request for car rental business

Takes in information about insurance quote conversion along with some other info

Authorizations:
Request Body schema: application/json
partnerQuoteId
string <= 128 characters

Quote ID used by the distributor. Required if we are also collecting quote info with java script from the distributor's website. Optional if we are not getting info from javasript

pricingRequestId
string <= 256 characters

If it's impossible to use any type of quote IDs, we need to report conversions based on prcing request ID privdied in pricing request endpoint

purchaser
required
object (Purchaser)
rentalCarBooking
object (BookingRentalCar)

Responses

200

Quote conversion ahs been successfully reported

put /quoteConversion
https://app.brightwrite.com/api/v1/quoteConversion

Request samples

application/json
Copy
Expand all Collapse all
{
  • "partnerQuoteId": "string",
  • "pricingRequestId": "string",
  • "purchaser":
    {
    },
  • "rentalCarBooking":
    {
    }
}

misc

Health check endpoint

Return 200 and OK string for load balancer health check

Authorizations:

Responses

200

Success

get /status
https://app.brightwrite.com/api/v1/status