NAV

BackNine API Documentation

Welcome to BackNine's API documentation! Here you'll learn how to embed Quote & Apply, get quotes via API, pre-fill Quote & Apply with customer data, and more.

Here's a 14 minute video that explains the various topics of our API.

Watch a video walkthrough of BackNine's API documentation

Base URL

Production: https://app.back9ins.com

Development: https://demo.back9ins.com

Quote & Apply Setup

Embed Quote & Apply

The most common method of adding Quote & Apply on your website is by copying and pasting your embed code into the HTML of your website. You can do this by logging into BOSS > Quote & Apply > select your Quote & Apply website > click the "Generate Embed Code" button to copy your unique Quote & Apply code and paste it into the HTML of your website. That's it! Save your changes and open your webpage.

We suggest you make the width at least 980 pixels and don't recommend setting a height for Quote & Apply as the page height is dynamic based on the step.

<!-- Before Quote & Apply -->
<!DOCTYPE html>
<html>
  <head>
    <title>My Website!!!</title>
  </head>
  <body>
    <p>This is my website.</p>
  </body>
</html>
<!-- After Quote & Apply -->
<!DOCTYPE html>
<html>
  <head>
    <title>My Website!!!</title>
  </head>
  <body>
    <p>This is my website.</p>
    <div id="container-id"></div>
    <div>
      <script
        id="strife"
        src="https://cdn.quoteandapply.io/widget.js"
        data-strife-key="GpIZ3clg5x96WPR_"
        data-strife-container-id="container-id"
      ></script>
    </div>
  </body>
</html>

Embed Quote & Apply via a Modal

The following example details how you can use open Quote & Apply by clicking an image and have it appear as a modal.

Place the code for your button where you want it to appear: In this example, clicking the BackNine logo will open Quote & Apply in a modal. Bind the image to launch Quote & Apply by adding the CSS class "strife-button" to the img attribute. remove the data-strife-container-id attribute.

<!DOCTYPE html>
<html>
  <head>
    <title>My Website!!!</title>
  </head>
  <body>
    <p>This is my website.</p>
    <!-- Embed with an image -->
    <img class="strife-button" src="link/to/your/image" />
    <!-- Embed with a button -->
    <button class="strife-button">Get Quotes</button>
    <!-- Embed with an anchor tag -->
    <a href="#" class="strife-button">Get Quote</a>
    <script
      id="strife"
      src="https://cdn.quoteandapply.io/widget.js"
      data-strife-key="GpIZ3clg5x96WPR_"
    ></script>
  </body>
</html>

Embed Quote & Apply via NPN

Using a National Producer Number

If you don't want to create embed codes for each agent, you can paste the code below into the HTML of your website for Quote & Apply to appear. This is the same script as the Embed Code example but without the data-strife-key. You must pass in npn (the agent's national producer number) so we know who the agent is. If the agent's NPN doesn't exist in BackNine's database, a registration page will appear allowing the agent to sign up and then proceed with Quote & Apply.

referrer_type and referrer_id are optional but are typically used when dynamically passing in the agent's NPN. The referrer gets access to the eApp and/or new agent that is created.

<div>
  <script
    id="strife"
    src="https://cdn.quoteandapply.io/widget.js?prefill&npn={Your NPN}&referrer_type={Agent|Agency}&referrer_id={AgentID|AgencyID}"
    data-strife-container-id="container-id"
  ></script>
</div>

WordPress Setup

The following example details how you can setup Quote & Apply using Wordpress.

1. Log in to your WordPress site as admin. You should arrive at the Dashboard.

2. Go to your list of pages.

3. Find the page you wish to use Quote & Apply on. Click “Edit”.

4. You should arrive at on an editor that allows you to edit the content of the page.

5. Find and click on the “Text” mode at the top right of the editor. This will allow you to edit the content using HTML code

6. Paste your unique embed code into the editor where you wish Quote & Apply to appear. Then, go to the “Publish” section and hit “Update”. The screen should refresh with a success message

7. Click on “View page” to see your results

BackNine Webpages

BackNine hosts a webpage for every licensed agent that signs up for an account at BOSS. Here's an example BackNine Webpage: https://app.back9ins.com/apply/ReidTattersall. You can create as many BackNine Webpages as you like and also customize the name (e.g. https://app.back9ins.com/apply/AgencyName). To create a BackNine Webpage, log into BOSS > Quote & Apply > Create a Widget > your BackNine Webpage will be instantly available.

Custom Domain Webpages

For customers with a significant number of agents, Custom Domain Webpages allow your agents to use Quote & Apply with your domain (e.g. https://app.yourdomain.com/AgentName instead of https://app.back9ins.com/apply/AgentName) and don't require you to set up webpages for your agents. To set this up, please email [email protected] the subdomain and domain that you'd like to use. For example, you could choose the subdomain "app" and have a domain "yourdomain.com" so the URL for your agents would be app.yourdomain.com/AgentName. Once you notify [email protected], we'll respond with a value that you'll use to create a CNAME. To create a CNAME, log into your domain's DNS settings (e.g. GoDaddy), create a CNAME record with your subdomain (e.g. app) and point it to the value we provided you via email. Once you've saved your DNS changes you can create links at BOSS > Quote & Apply > Create a Widget with your domain. An example use case is a P&C agency (myagency.com) with 200 agents, rather than embedding Quote & Apply into 200 pages, simply add the agents into BOSS and each agent will be emailed their Quote & Apply website (app.myagency.com/AgentName). There is a one-time charge of $1,000 to setup Custom Domain Webpages (you can then issue as many web pages as you'd like).

Analytics

Google Analytics

To view your session data within your Google Analytics account, log into BOSS > Quote & Apply > select a specific Quote & Apply website and insert your Google Analytics ID. You should immediately see session data within your Google Analytics account.

If you'd like to utilize our pre-built conversion funnel reports (shown in the image below), navigate to the Google Analytics Solutions Gallery > search for "Quote & Apply Conversion Funnels" > click import next to the result authored by reidtattersall.

After 24 hours, you should see data within your Google Analytics reports (see screenshot) which is located in Google Analytics > Conversions > Goals > Funnel Visualization.

Google Tag Manager

To add your Google Tag Manager ID, log into BOSS > Quote & Apply > select a Quote & Apply website and insert your Google Tag Manager ID. Import this container into your GTM account.

We will not report to your Google Analytics account if you insert a Google Tag Manager ID. If you want to utilize Google Analytics and Google Tag Manager, please implement Google Analytics via Google Tag Manager.

Custom Scripts/Pixels

You can add custom scripts (e.g. tracking software like Hotjar, chat widgets like Zendesk, or pixels from social media companies like Meta) through Google Tag Manager. Add your Google Tag Manager ID on the settings of your Quote & Apply website within BOSS, then add your third party scripts within Google Tag Manager.

Prefill Quote & Apply

Customer data can be prefilled within Quote & Apply for a smoother user experience.

You can prefill Quote & Apply by appending query string params to the URL of a page where Quote & Apply is hosted (e.g. https://app.back9ins.com/apply/demo?prefill or to Quote & Apply's src (e.g. src="https://cdn.quoteandapply.io/widget.js?prefill"). The empty param prefill must be a top-level parameter. When Quote & Apply loads and is prefilled with data, an eApp will be created if the user reaches the quote step or if quote information is prefilled.

See Quote & Apply Parameters to learn what can be prefilled.

(Example) Basic

Prefill an application for Mary Sue who was born Jan 1st, 1970, with her phone number and email.

https://app.back9ins.com/apply/demo?prefill&first_name=Mary&last_name=Sue&gender=Female&birthdate=1970-01-01&phone=(800) 790-1951&[email protected]

(Example) Basic with National Producer Number

Set the agent by including the National Producer Number (NPN) of the agent. If the NPN isn't BackNine's BOSS, we'll show a signup page for the agent to create an account.

https://back9ins.com/apply?prefill&first_name=Mary&last_name=Sue&gender=Female&birthdate=1970-01-01&phone=(800) 790-1951&[email protected]&npn={Your NPN}

(Example) Limit Product Types

Limit the available products to only accidental death, set the product category to accidental death, and have the user land on the quote step. For the user to land on the quote step, all previous steps must be valid so we set health to 1 and smoker to Never.

https://app.back9ins.com/apply/demo?prefill&first_name=Mary&last_name=Sue&gender=Female&birthdate=1970-01-01&phone=(800) 790-1951&[email protected]&health=1&smoker=Never&product_types=[accidental_death]&product_category=Accidental Death&step=quote

(Example) Current Smoker

Prefill an application for Mary Sue who was born Jan 1st, 1970, and currently uses cigarettes daily with health of 3. Note that smoking statuses are JSON.

https://app.back9ins.com/apply/demo?prefill&first_name=Mary&last_name=Sue&gender=Female&birthdate=1970-01-01&phone=(800) 790-1951&[email protected]&smoker=Currently&smoking_statuses=[{"frequency": 365, "category": "Cigarettes"}]&health=3

(Example) Previous Smoker

Prefill an application for Mary Sue who was born Jan 1st, 1970, and a previous smoker who used cigarettes daily and quit smoking January 1, 2000 with health of 3. Note that smoking statuses are JSON.

https://app.back9ins.com/apply/demo?prefill&first_name=Mary&last_name=Sue&gender=Female&birthdate=1970-01-01&phone=(800) 790-1951&[email protected]&smoker=Previously&smoking_statuses=[{"frequency": 365, "category": "Cigarettes", "last_use_date": "2000-01-01"}]&health=3

(Example) Metadata

Prefill metadata with URL parameters. The prefill parameter metadata allows you to store arbitrary information that is displayed when viewing the eApp in BOSS, when you export a CSV of your data within BOSS, or when using Webhooks.

When using metadata, or any JSON, make sure to escape the special characters if used in a script src.

https://app.back9ins.com/apply/demo?prefill&metadata={"Agentid":"1234","Campaign":"Quote-Life"}

(Example) Beneficiaries/Owner

Specify who the beneficiaries are and who the owner is. By default, the insured is the owner.

https://app.back9ins.com/apply/demo?prefill&first_name=Grace&last_name=Shields&state=CA&gender=Female&health=5&smoker=Never&height=66&weight=135&birthdate=1987-01-01&[email protected]&phone=1231231234&street_address=310 N Westlake Blvd&city=Westlake Village&zip=91362&years_at_address=3&employer=BackNine&occupation=SE&occupation_years=5&employer_street_address=310 N Westlake Blvd&employer_state=CA&employer_zip=91362&employer_city=Westlake Vilage&income=50000&assets=25000&liabilities=12500&ssn=123-12-1231&birth_state_or_country=CA&us_citizen=yes&drivers_license=f1234567&drivers_license_state=CA&parties=[{"first_name":"Sadie","last_name":"Guardia","relationship":"Wife","gender":"Male","address_street":"310 N Westlake Blvd","address_city":"Westlake Village","address_zip":"91362","address_state":"CA", "address_country": "United States", "beneficiary_amount":"100","type":"Individual", "is_primary_beneficiary": "true", "birthdate": "1990-01-01"}]

(Example) Script Source

As previously stated, you can include parameters via Quote & Apply's scr instead of the previously examples which used URL parameters. Prefill the insured's first and last name by appending parameters to Quote & Apply's src instead of using URL parameters.

<div id="container-id"></div>
<div>
  <script
    id="strife"
    src="https://cdn.quoteandapply.io/widget.js?prefill&first_name=John&last_name=Doe&test=true"
    data-strife-container-id="container-id"
  ></script>
</div>

(Example) Sign up + Connections

If the registration page is shown and you don't include a data-strife-key or a referrer_id and referrer_type, we won't know who is adding the new agent. In this rare case, add yourself into the hierarchy for agents that create accounts by adding your ID into the connections array. Once the agent creates their account, you'll be able to view the agent within your BOSS account.

<div id="container-id"></div>
<div>
  <script
    id="strife"
    src='https://cdn.quoteandapply.io/widget.js?prefill&npn={Your NPN}&connections=[{"parent_type": "Agent", "parent_id": 1, "hierarchy": 1}]'
    data-strife-container-id="container-id"
  ></script>
</div>

Quote & Apply Parameters

The following parameters may be used for Prefilling Quote & Apply or Creating an eApp.

Environment Params

Parameter Description
client_id
string
The key of the Quote & Apply widget that you'd like to use.
npn
string
The NPN of the agent you'd like to use.
test
boolean
Indicate this is a test eApp. Test eApps are deleted nightly, do not schedule a real exam, and use a non-production DocuSign. eApps with an insured first name of Test and last name of Delete will also be deleted nightly.
metadata
object
Add the metadata param to store custom data. Metadata is accessible for your use within BOSS, through CSV export, and webhooks. Limited to 256 characters.
product_types
array
Array of all or some of the following: accidentalDeath, aiul, ltc, linkedBenefit, fex, piul, pvul, ropTerm, term, ul, wholeLife
resume_url
string
Allows you to override where the eApp is resumed from. By default, eApps will be resumed from where they are initiated from. Especially useful if the eapp was initiated from a website that requires authentication and you want to share the eApp with customers. If you do not have a public Quote & Apply website, you can send resume_url=agent-default and the resume URL will be the agent's default Quote & Apply website.
referrer_type
string
Identifies the referring source of the electronic_application or agent signing up. The referrer will be given access to the eApp and will be added as a connection when using Agent Sign Up. This is your user type within BOSS and it can be obtained by emailing [email protected]. The referrer's marketing manager will be used when an agent signs up if a data-strife-key is not provided and a marketing_manager_id is not provided.
referrer_id
number
Identifies the referring source of the electronic_application or agent signing up. The referrer will be given access to the eApp and will be added as a connection when using Agent Sign Up. This is your user ID within BOSS and it can be obtained by emailing [email protected]. The referrer's marketing manager will be used when an agent signs up if a data-strife-key is not provided and a marketing_manager_id is not provided.

Insured Params

Use these prefill params to tell us all about your client.

Parameter Description
first_name
string
The insured's first name.
last_name
string
The insured's last name.
gender
string
The insured's gender. If specified, must be either Male or Female.
health
number
The insured's health with possible values of -1, -2, -3, -4, -5, -6, 1, 2, 3, 4, 5. Negative values represent table ratings (e.g. -3 is Table C/Table 3). 1 and 2 = Standard, 3 = Standard Plus, 4 = Preferred, 5 = Super Preferred.
smoker
string
The insured's smoking status. If specified must be Never, Previously, or Currently.
smoking_statuses
object
The list of user's smoking statuses. See Current Smoker or Previous Smoker for details
height
number
The insured's height in inches from 50 - 83.
weight
number
The insured's weight in lbs.
birthdate
date
The insured's birthdate. Must be in YYYY-MM-DD format.
email
string
The insured's email address
phone
number
The insured's phone number. Must be in (###) ###-#### format.
street_address
string
The insured's street address
city
string
The insured's city
state
string
The insured's state. Must be the two-letter abbreviation. If not specified, Quote & Apply will attempt to get the location by looking at the user's I.P.
zip
number
The insured's zip. Must be 5 numbers long
years_at_address
number
The number of years the insured has been at their address
application_state
string
The state of the application (i.e. the state in which to display quotes for and the state where the owner will be signing). Must be the two-letter abbreviation. If not specified, Quote & Apply will attempt to get the location by looking at the user's I.P. The agent must be licensed in the application_state in order to prefill the value.
income
number
The insured's income
assets
number
The insured's assets
liabilities
number
The insured's liabilities
ssn
string
The insured's social security number with dashes. Formatted as ###-##-####
birth_state_or_country
string
The insured's birth state or country. See birth_state_or_country values below
us_citizen
boolean
The insured's citizenship status
drivers_license
string
The insured's drivers license number. If they do not have a drivers license number, specify none
drivers_license_state
string
The insured's drivers_license_state. Two character state abbreviation capitalized
no_drivers_license_reason
string
The reason the insured does not have a driver's license
bankruptcy
boolean
If the insured has had a bankruptcy
bankruptcy_type
string
The type of bankruptcy the insured had. Must be Chapter 7, Chapter 11, Chapter 12, Chapter 13, or Chapter 15
bankruptcy_discharge_date
date
When the bankrupcy was discharged. Must be formatted YYYY-MM-DD.

Insured Employer / Occupation

Parameter Description
employer
string
The insured's employer. Must be specified or none
occupation
string
The insured's occupation. If employer is none options are disabled, unemployed, retired, student, homemaker otherwise any string
occupation_years
number
The length of time the insured has held their current occupation.
employer_street_address
string
The insured's street employer's address
employer_city
string
The insured's employer's city
employer_state
string
The insured's employer's state. Must be the two character state abbreviation.
employer_zip
number
The insured's employer's zip. Must be 5 characters long

Parties (Beneficiaries/Owner)

Parameter Description
parties
array

Individual

Parameter Description
type required
string
must be set to Individual
first_name
string
The individual's first name.
last_name
string
The individual's last name.
relationship
string
How the individual is related to the insured. Possible values are Brother, Business Partner, Daughter, Domestic Partner, Ex-Spouse, Father, Fiance, Friend, Granddaughter,Grandfather, Grandmother, Grandson, Husband, Mother, Other, Relative, Sister, Son, Spouse, Stepfather, Stepmother, or Wife.
gender
string
The individual's gender. Must be Male or Female
email
string
The individual's email. This is checked via a 3rd party email validator.
phone_mobile
string
The individual's phone number. Must be formatted as (####) ###-####
birthdate
string
The individual's birthdate. Must be formatted as YYYY-MM-DD
address_street
string
The individual's street address
address_city
string
The individual's city
address_zip
number
No
address_state
string
The individual's state. Must be the 2 letter abbreviated state
address_country
string
The individual's country. Must be the Full Country Name
beneficiary_amount
number
The entity's percent of the benefit. Must be 1 <= => 100
is_owner
boolean
This individual is the owner of the policy
is_primary_beneficiary
boolean
This individual is a Primary Beneficiary
is_contingent_beneficiary
boolean
This individual is a Contingent Beneficiary

Trust/Business

Key Description
type required
string
Trust or Business
name
string
The entity's name.
tin
string
The entity's TIN. Must be formatted as ##-#######
phone_work
string
The entity's phone number. Must contain 10 numbers and be formatted as (###) ###-####
email
string
The entity's email. This is checked via a 3rd party email validator.
relationship
string
How the entity individual is related to the insured. Must be Employer or Other. If the entity is the owner, you may specify Creditor
formation_date
date
A Trust's formation date. Must be formatted
address_street
string
The entity's street address
address_city
string
The entity's city
address_zip
number
The entity's zip. Must be 5 digits long
address_state
string
The entity's state. Must be the 2 letter abbreviated state
address_country
string
The entity's state. Must be the full country name
beneficiary_amount
number
The entity's percent of the benefit. 1 <= => 100
responsible_individual_email
string
The signer/trustee's email (if other than insured)
responsible_individual_first_name
string
The signer/trustee's first name (if other than insured)
responsible_individual_last_name
string
The signer/trustee's last name (if other than insured)
responsible_party_relationship
string
If the insured's title if they're the signer
responsible_party_sole_signer
string
If the insured is the only signer
is_owner
boolean
This entity is the owner of the policy
is_primary_beneficiary
boolean
This entity is a Primary Beneficiary
is_contingent_beneficiary
boolean
This entity is a Contingent Beneficiary

Quote Params

Use these prefill params to dial in the quote for you client.

Parameter Description
age_value
number
Target age for cash value at age solves. Only available for universal life products.
benefit_period
number
The policy's benefit period. Options are 2-8 and -1 which represents unlimited.
carriers
array
Limit the carriers. Carrier ID dictionary is available at: https://app.back9ins.com/help-center/articles/128 Example carriers=[28]
cash_value
number
Age to which coverage will last. Only available for Accumulation IUL, Protection IUL, Protection VUL, and UL.
chronic_illness_and_ltc
string
With Chronic Illness/LTC Rider, With Chronic Illness Rider, With LTC Rider, Without Chronic Illness/LTC Rider Filters the quotes.
death_benefit
number
The desired death benefit. Use any number 5000 through 10000000
discount
string
null, Association, Employer, Producer. Used for Long Term Care.
elimination_period
number
The policy's elimination period
guaranteed_issue
boolean
Only available for Final Expense. Only responds to true`. Use when only guaranteed issue final expense is desired.
home_health_care_waiver
boolean
If the quote will include the home health care waiver
income_end_age
number
Only available on Accumulation IUL, Protection IUL, Protection VUL, and Universal Life when income is on. Any number greater than income_start up to 120,
income_solve
string
Only available on Accumulation IUL, Protection IUL, Protection VUL, and Universal Life when income is on. Must be either No or Max.
income_start_age
number
Only available on Accumulation IUL, Protection IUL, Protection VUL, and Universal Life when income is on. Any number greater than the insured's age and less than income_end_age up to 120
inflation_percentage
string
null or 1% Compound - 5% Compound. Used for long term care.
lapse_protection_to_age
number
Age to which the insureds policy is protected from lapsing. Only available for Accumulation IUL, Protection IUL, Protection VUL, and UL. 65 <= => 120
living_benefits
boolean
If you only want to receive term quotes with living benefits. Use chronic_illness_and_ltc for non-term chronic illness filtering.
ltc_rider_percentage
number
Only available when ltc_rider is true. A number between 1-6.
mode
number
How many times per year the premium is due. Must be 1, 2, 4, or 12
monthly_benefit
number
The maximum amount that is available per month for long term care
partner_discount
string
null, One, Both. Used for long term care.
pay_duration
string, number
Duration of premium payments. Only available for Accumulation IUL, Protection IUL, Protection VUL, and UL. 1 <= pay_duration <= 99 or Lifetime
pool_of_money
number
The amount that is available for long term care
premium
number
Desired amount paid according to the mode
products
array
Limit the products. Example products=[105, 270, 323, 472, 2721, 2742, 2499]
return_of_premium_rider
string
null, Limited, Limited Surrender, Full, Full Surrender
save_age
boolean
If save age is requested
selected_type
string
The default product category shown after the birthdate step. Must be accidentalDeath, aiul, fex, linkedBenefit, ltc, piul, pvul, ropTerm, term, ul, or wholeLife
shared_care
boolean
If shared care rider is requested. Used for joint insureds for long term care.
solve
string
See below for solves
term_duration
number
Sets the term duration for Term and Return of Premium Term. Must be 10, 15, 20, 25, 30, 35, or 40
vitality_level
string
John Hancock's Vitality Program. Possible values are null, Bronze, Silver, and Platinum

Premium Solves

selected_type Solve
accidentalDeath Base Premium
aiul Maximum Non-MEC Premium, Target Premium, Premium Solve Cash Value at Age
fex Base Premium
linkedBenefit Base Premium
ltc Base Premium
piul Maximum Non-MEC Premium, Target Premium, Premium Solve Cash Value at Age, Lapse Protection Death Benefit
pvul Maximum Non-MEC Premium, Target Premium, Premium Solve Cash Value at Age, Lapse Protection Death Benefit
ul Maximum Non-MEC Premium, Target Premium, Premium Solve Cash Value at Age, Lapse Protection Death Benefit
wholeLife Base Premium

Death Benefit Solves

selected_type Solve
aiul Min Non-MEC DB, Target, DB Solve Cash Value at Age
piul Min Non-MEC DB, Target, DB Solve Cash Value at Age, Lapse Protection Death Benefit
pvul Min Non-MEC DB, Target, DB Solve Cash Value at Age, Lapse Protection Death Benefit
ul Min Non-MEC DB, Target, DB Solve Cash Value at Age, Lapse Protection Death Benefit
wholeLife Base Death Benefit

No Solves

selected_type Solve
aiul Specify Premium and Death Benefit
piul Specify Premium and Death Benefit
pvul Specify Premium and Death Benefit
ul Specify Premium and Death Benefit

LTC Benefit Solves

selected_type Solve
linkedBenefit LTC Benefit

Smoking Status Object Structure

Use this to populate the smoking statuses array with respect to the smoker prefill option chosen.

Parameter Description
category required
string
The item the user uses or has used. Must be Cigarettes, eCigarettes, Cigars, Pipe, Chew, or Cannabis
frequency required
string
How frequently the user uses or has used. Must be 2, 12, 52, or 365
last_use_date
string, optional
The last use date of this item. Must be formatted as YYYY-MM-DD. This is required if smoker is Previously

User Experience Params

Use these prefill params to customize the user experience.

Parameter Description
active_first_input
boolean
Causes the first input on Quote & Apply to be active when Quote & Apply loads. This can cause the page to scroll (i.e. jump) if Quote & Apply is below the fold.
dark
boolean
Enables/disables dark mode
greeting
string
Override the "greeting" text when asking for first name and last name
new_npn_greeting
string
Override the "greeting" text if the NPN (National Producer Number) doesn't exist in BOSS. Example: An integration partners send their agent's NPN which may or may not exist in BOSS. If it doesn't exist, the greeting can be customized to "Welcome Integration Partner Users! Please enter your National Producer to create your account". The default greeting if an NPN doesn't exist is "Welcome to Quote & Apply. Enter your National Producer Number to Sign Up."
step
string
hearts, compare, quote, contact The step to land on. step=quote and step=contact will create an electronic application when the page loads. You must include selected_type when using contact so the eApp is created for the correct product category. step=contact will create the eApp with the first product. You can specify products so the eApp is created with your desired product.

Agent Sign Up Params (Pre-fill only)

Use these prefill params when agents are signing up with BackNine through Quote & Apply.

Parameter Description
assignment_npn
string
For agents signing up via Quote & Apply, the NPN of the agent or agency which the new agent assigns commission to. This assignment_npn must exist within BOSS.
commission_lock
boolean
For agents signing up via Quote & Apply, disables the new agent's ability to modify commission rates, commission splits, and where commissions are assigned to. Can be used with assignment_npn to set commission assignment and prevent users from changing them.
connections
array
For agents signing up via Quote & Apply, creates a connection for each item in the array when agents sign up using Quote & Apply. parent_type and parent_id can be obtained by emailing [email protected]. Example connections=[{'parent_type': 'Agent', 'parent_id': 1, 'hierarchy': 1}]
marketing_manager_id
number
For agents signing up via Quote & Apply, sets the agent's marketing manager when Agent Sign Up is used and a data-strife-key is not provided. marketing_manager_id can be obtained by emailing [email protected].
referrer_type
string
Identifies the referring source of the electronic_application or agent signing up. The referrer will be given access to the eApp and will be added as a connection when using Agent Sign Up. This is your user type within BOSS and it can be obtained by emailing [email protected]. The referrer's marketing manager will be used when an agent signs up if a data-strife-key is not provided and a marketing_manager_id is not provided.
referrer_id
number
Identifies the referring source of the electronic_application or agent signing up. The referrer will be given access to the eApp and will be added as a connection when using Agent Sign Up. This is your user ID within BOSS and it can be obtained by emailing [email protected]. The referrer's marketing manager will be used when an agent signs up if a data-strife-key is not provided and a marketing_manager_id is not provided.

Get Quotes

Fetch a list of quotes. Each quote contains an ID which can be used when creating an eApp.

Endpoint

POST /api/v1/eapp-quotes

Headers

X-BACKNINE-AUTHENTICATION: your-api-key
Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Request Parameters

See Quote Params for quoting specific parameters, Insured Params for insured specific parameters, or jump to the Request Examples.

Request Examples

(Example) Quotes

Include the required client_id or npn to identify who the agent is. client_id specifies the Quote & Apply website whereas npn will use the the agent's default Quote & Apply website. client_id is the data-client-id (formerly known as the data-strife-key) within the embed code of a Quote & Apply website.

{
  "client_id": "your-client-id",
  "death_benefit": 1000000,
  "insured": {
    "first_name": "John",
    "last_name": "Doe",
    "health": 3,
    "gender": "Male",
    "smoker": "Never",
    "birthdate": "1980-07-04"
  },
  "mode": 2,
  "selected_type": "term",
  "state": "CA",
  "term_duration": 15
}

(Example) Quotes with an NPN

When using npn instead of a client_id, the agent's default Quote & Apply website is used.

{
    "death_benefit": 2000000,
    "insured": {
        "birthdate": "1990-02-14",
        "first_name": "Jane",
        "gender": "Female",
        "health": 4,
        "height": 64,
        "last_name": "Doe",
        "smoker": "Currently",
        "smoking_statuses": [
            {
                "category": "Cigarettes",
                "frequency": 365
            }
        ],
        "weight": 140
    },
    "mode": 4,
    "npn": 12345,
    "selected_type": "ropTerm",
    "state": "CA",
    "term_duration": 30
}

(Example) Whole Life quotes

{
    "client_id": "your-client-id",
    "death_benefit": 500000,
    "insured": {
        "birthdate": "2000-01-20",
        "first_name": "John",
        "gender": "Male",
        "health": 4,
        "last_name": "Doe",
        "smoker": "Never"
    },
    "mode": 1,
    "pay_duration": 10,
    "selected_type": "wholeLife",
    "solve": "Base Premium",
    "state": "CA"
}

(Example) IUL quotes

{
    "client_id": "your-client-id",
    "insured": {
        "birthdate": "1990-01-01",
        "first_name": "Jane",
        "gender": "Female",
        "health": 4,
        "last_name": "Doe",
        "smoker": "Never"
    },
    "mode": 1,
    "pay_duration": 10,
    "premium": 10000,
    "selected_type": "aiul",
    "solve": "Min Non-MEC DB",
    "state": "CA"
}

(Example) LTC quotes

{
    "client_id": "your-client-id",
    "elimination_period": 90,
    "home_health_care_waiver": false,
    "insured": {
        "birthdate": "1980-01-20",
        "first_name": "John",
        "gender": "Female",
        "health": 4,
        "last_name": "Doe",
        "marital_status": "Married",
        "smoker": "Never"
    },
    "joint_insured": {
        "birthdate": "1980-01-20",
        "first_name": "John",
        "gender": "Female",
        "health": 4,
        "last_name": "Doe",
        "marital_status": "Married",
        "smoker": "Never"
    },
    "joint_waiver_of_premium": false,
    "mode": 1,
    "monthly_benefit": 6000,
    "partner_discount": "both",
    "pay_duration": -1,
    "pool_of_money": 200000,
    "selected_type": "ltc",
    "shared_care": false,
    "state": "CA"
}

Response Attributes

Parameter Description
quotes
array<Quote> or null
a list of available quotes matching request parameters
errors
array<string> or null
a list of reasons that must be addressed before getting quotes

Quote Type

Parameter Description
benefit_period
number
The policy's benefit period. Typically the monthly benefit * benefit period will equal the pool of money
carrier
Carrier
Carrier details
chronic_illness_rider
boolean
If a chronic illness rider is enabled
death_benefit
number
The death benefit of the policy
discount
string
null, Association, Employer, Producer
elimination_period
number
The policy's elimination period
exam
ExamDetails
All exam details
expires_at
timestamp
Quotes expire after 24 hours
guaranteed_account_values
array
The yearly guaranteed account values
guaranteed_issue
boolean
If this policy can be issued without exam
home_health_care_waiver
boolean
If the quote includes the home health care waiver
id
string
a unique identifier which may be used during eApp creation
instant_decision
boolean
If an instant decision is available
inflation_percentage
string
null or 1% Compound - 5% Compound
joint_id
string
a unique identifier which may be used during joint eApp creation
joint_waiver_of_premium
boolean
If the quote includes the joint waiver of premium rider
lapse_protection_to_age
number
Up to what age is lapse protection enabled
living_benefits
LivingBenefits
Living Benefits details
ltc_pool_of_money_values
array
The yearly pool of money value
ltc_rider
boolean
If a long term rider is enabled
ltc_rider_percentage
number
Options are null, 1, 2, 3, 4, 5, 6. To be used with chronic_illness_and_ltc.
mode
number
The frequency that the premium must be paid per year. Options are 1, 2, 4, 12.
monthly_benefit
number
The maximum amount that is available per month for long term care
non_guaranteed_account_values
array
The yearly non-guaranteed account values
partner_discount
string
null, One, Both
pay_duration
number
The number of years that premiums are scheduled for
pool_of_money
number
The amount that is available for long term care
preferred
boolean
If this is a preferred product for BackNine
premium
number
The amount per mode to be paid for the policy
product
Product
Product details
rating
Rating
All rating related parameters
return_of_premium_rider
string
null, Limited, Limited Surrender, Full, Full Surrender
save_age
SaveAge
Save Age details
selected_type
string
The type of insurance
shared_care
boolean
If the quote includes the shared care rider
state
string
The two letter state code for which this policy is generated
term_duration
number
The length of the level term
vitality_level
string
John Hancock's Vitality Program. Possible values are null, Bronze, Silver, and Platinum

Carrier Type

Parameter Description
am_best_rating
string
Carrier rating according to AM Best. Possible values are A++, A+, A, A-, B++, B+, B, B-, C++, C+, C, C-, D, E, F, and S
approval_time
number
An estimated amount of time required for policy to be inforce
avatar_url
string
A link to the Carrier's avatar. Standard image formats and SVGs are supported
name
string
The Carrier's name
established_year
string
The year the carrier was established

Exam Details Type

Parameter Description
details
string
Text explanation of exam details
required
string
If the exam is required. Possible values are exam_is_required, exam_not_required, and exam_possibly_required.

Living Benefits Type

Parameter Description
details
string
Text explanation of living benefits
enabled
boolean
If the quote has living benefits

Save Age Type

Parameter Description
details
string
Text explanation of save age
suggested
boolean
If save age is appropriate
enabled
boolean
If save age was used

Product Type

Parameter Description
disclosure
string
Relevant disclosure information
conversion
string
The product's conversion details
e_delivery
boolean
If this product supports eDelivery
name
string
The product's name
require_payment
boolean
If this product requires payment during the application process
types
array
An array. See selected_type for possible values

Rating Type

Parameter Description
error
boolean
If there was an error validating the current quote
max_weight
number or null
The maximum allowed weight for the current rating
min_weight
number or null
The minimum allowed weight for the current rating
rating
string
Assigned rating for the current quote

Response Statuses

Status Description
201 Successful request
401 Unauthorized request. Your API key can be found at https://app.back9ins.com/settings?page=developer-settings
422 Quoting validation (Failed to fetch quotes)
500 Unexpected/Internal Error

Response Example

{
  "errors": null,
  "quotes": [
    {
      "benefit_period": null,
      "carrier": {
        "am_best_rating": "A+",
        "approval_time": 20,
        "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/lga_square.svg",
        "established_year": 1981,
        "name": "Banner"
      },
      "chronic_illness_rider": false,
      "death_benefit": 1000000,
      "discount": null,
      "elimination_period": null,
      "exam": {
        "details": "If you've seen the doctor and completed blood work in the last 18 months you won't need a medical exam. We'll review your medical records and application to confirm.",
        "required": "exam_possibly_required"
      },
      "expires_at": "2024-01-25T12:00:44.000-08:00",
      "guaranteed_account_values": null,
      "guaranteed_issue": null,
      "home_health_care_waiver": null,
      "id": "b421c4ac-2668-44ae-aa12-8d7638c8af6f",
      "inflation_percentage": null,
      "instant_decision": true,
      "joint_id": null,
      "joint_waiver_of_premium": null,
      "lapse_protection_to_age": null,
      "living_benefits": {
        "details": null,
        "enabled": null
      },
      "ltc_pool_of_money_values": null,
      "ltc_rider": false,
      "ltc_rider_percentage": null,
      "mode": 2,
      "monthly_benefit": null,
      "non_guaranteed_account_values": null,
      "partner_discount": null,
      "pay_duration": 15,
      "pool_of_money": null,
      "preferred": null,
      "premium": 559.59,
      "product": {
        "conversion": "Conversions can be requested anytime within the duration of the guaranteed level premium period, up to attained age 70, whichever comes first. Policies issued at age 66 or over are convertible during the first five policy years.",
        "disclosure": "Approval and actual premiums will be based upon the entire underwriting process, including but not limited to, information provided on the application, exam results and specific underwriting requirements and criteria. OPTerm 10 issue ages are 20-75 all classes. OPTerm 15 issue ages are 20-75 all classes. OPTerm 20 issue ages are 20-70 for non-tobacco classes and 20-65 for tobacco classes. OPTerm 25 issue ages are 20-60 for non-tobacco classes and 20-55 for tobacco classes. OPTerm 30 issue ages are 20-55 for non-tobacco classes and 20-50 for tobacco classes. Premium rates vary by coverage amount: $100,000-$249,999, $250,000-$499,999, $500,000-$999,999, $1,000,000 and above. Premiums quoted include $60 annual policy fee. Premiums are guaranteed to stay level for 10,15, 20, 25 or 30 years, respectively, and increase annually after initial guarantee period. OPTerm policies can be issued in preferred plus non-tobacco, preferred non-tobacco, standard plus non-tobacco, standard non-tobacco, preferred tobacco and standard tobacco classes. OPTerm 10, 15, 20, 25 and 30 substandard policies can be issued through Table 12, subject to underwriting discretion. Coverage can be renewed to age 95. Policies can be returned without obligation within 30 days of receipt in most states. Rates as of 05.05.16. Additional Insurance Riders, form AIR (1-11) and state variations, can provide temporary life insurance coverage for 10, 15 or 20 years after which coverage ceases. Term riders are not available in all states; issue ages vary from base plan. Waiver of Premium Benefit Rider, policy form # ICC09 WPTR and state variations, is available. A cost-free Accelerated Death Benefit Rider, policy form # ICC10 ADB and state variations, is included with all policies in states where approved. Children's Life Insurance Rider, form ICC14- CLIR and state variations, can provide life insurance coverage on eligible children. Coverage expires at the earlier of the insured child’s 25th birthday, the base policy insured’s 65th birthday or base policy termination. Forms and policy provisions may vary by state. Policy descriptions provided here are not a statement of contract. Please refer to the policy forms for full disclosure of all benefits and limitations. Two year contestability and suicide provisions apply.",
        "e_delivery": true,
        "name": "OPTerm 15",
        "require_payment": false,
        "types": [
          "term"
        ]
      },
      "rating": {
        "error": null,
        "max_weight": null,
        "min_weight": null,
        "rating": "Standard Plus"
      },
      "return_of_premium_rider": null,
      "save_age": {
        "details": "John's issue age recently changed on 01/03/2024. Enable Save Age to backdate the policy date to reduce John's issue age from 44 to 43. Banner's OPTerm 15 uses an nearest age calculation to determine the insured's age.",
        "enabled": false,
        "suggested": true
      },
      "selected_type": "term",
      "shared_care": null,
      "state": "CA",
      "term_duration": 15,
      "vitality_level": null
    },
    {
      "benefit_period": null,
      "carrier": {
        "am_best_rating": "A",
        "approval_time": null,
        "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/transamerica_square.svg",
        "established_year": 1961,
        "name": "Transamerica"
      },
      "chronic_illness_rider": false,
      "death_benefit": 1000000,
      "discount": null,
      "elimination_period": null,
      "exam": {
        "details": "Based on your answers to underwriting questions, an exam may or may not be required.",
        "required": "exam_possibly_required"
      },
      "expires_at": "2024-01-25T12:00:44.091-08:00",
      "guaranteed_account_values": null,
      "guaranteed_issue": null,
      "home_health_care_waiver": null,
      "id": "b8e73322-a821-464a-8575-ac4d55839fc3",
      "inflation_percentage": null,
      "instant_decision": false,
      "joint_id": null,
      "joint_waiver_of_premium": null,
      "lapse_protection_to_age": null,
      "living_benefits": {
        "details": null,
        "enabled": null
      },
      "ltc_pool_of_money_values": null,
      "ltc_rider": false,
      "ltc_rider_percentage": null,
      "mode": 2,
      "monthly_benefit": null,
      "non_guaranteed_account_values": null,
      "partner_discount": null,
      "pay_duration": 15,
      "pool_of_money": null,
      "preferred": null,
      "premium": 561,
      "product": {
        "conversion": "For the entire term up to age 70 or age 75 for Preferred Plus. Conversions after the first five policy years are can only convert to specific products.",
        "disclosure": null,
        "e_delivery": true,
        "name": "Trendsetter Super (15 Yrs)",
        "require_payment": false,
        "types": [
          "term"
        ]
      },
      "rating": {
        "error": null,
        "max_weight": null,
        "min_weight": null,
        "rating": "Standard Plus"
      },
      "return_of_premium_rider": null,
      "save_age": {
        "details": null,
        "enabled": false,
        "suggested": false
      },
      "selected_type": "term",
      "shared_care": null,
      "state": "CA",
      "term_duration": 15,
      "vitality_level": null
    }
  ]
}

Create eApp by API

Once you have used Get Quotes, you can proceed with Create an eApp via API. Create an eApp via API allows you to create an eApp without loading Quote & Apply in a browser using Prefilling Quote & Apply. The entire application cannot be completed via API so the agent or insured will need to continue the eApp within Quote & Apply to finish the eApp.

Endpoint

POST /api/v1/eapps

Headers

X-BACKNINE-AUTHENTICATION: your-api-key
Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Request Parameters

See Quote & Apply Parameters

Request Examples

(Example) Create an eApp with a quote_id

Learn how to request quotes: Get Quotes

{
  "step": "contact",
  "insured": {
    "quote_id": "your-quote-id"
  }
}

(Example) Create an eApp with a quote_id with insured information

{
  "step": "contact",
  "metadata": {
    "Agentid": "1234",
    "Campaign": "Quote-Life"
  },
  "insured": {
    "quote_id": "08a1c66f-6d29-4f7f-b960-69bbe03d07fa",
    "email": "[email protected]",
    "phone_mobile": "(805) 557-1503",
    "street_address": "310 N Westlake Blvd",
    "city": "Westlake Village",
    "zip": 91362,
    "state": "CA",
    "country": "United States"
  }
}

(Example) Create an eApp with Address, Parties, Employer, Occupation

{
  "step": "contact",
  "insured": {
    "quote_id": "08a1c66f-6d29-4f7f-b960-69bbe03d07fa",
    "email": "[email protected]",
    "phone": 8057070600,
    "street_address": "29130 Cliffside Dr",
    "city": "Malibu",
    "zip": 91362,
    "years_at_address": 2,
    "employer": "BackNine Insurance",
    "occupation": "Engineer",
    "occupation_years": 2,
    "employer_street_address": "310 N. Westlake Blvd. Suite 240",
    "employer_city": "Westlake Village",
    "employer_state": "CA",
    "employer_zip": 91362,
    "income": 100000,
    "assets": 500000,
    "liabilities": 250000,
    "ssn": "111-22-3333",
    "drivers_license": "D5745676",
    "drivers_license_state": "CA",
    "birth_state_or_country": "CA",
    "application_state": "CA",
    "bankruptcy": false,
  },
  "parties": [
    {
      "first_name": "Jane",
      "last_name": "Doe",
      "phone_mobile": "(805) 557-1503",
      "relationship": "Wife",
      "gender": "Female",
      "address_street": "310 N Westlake Blvd",
      "address_city": "Westlake Village",
      "address_zip": 91362,
      "address_state": "CA",
      "address_country": "United States",
      "beneficiary_amount": 34,
      "type": "Individual",
      "is_primary_beneficiary": true,
      "birthdate": "1982-01-01"
    },
    {
      "name": "Giant Trust",
      "tin": "11-3456789",
      "phone_work": "(805) 557-1503",
      "email": "[email protected]",
      "formation_date": "2000-01-01",
      "address_street": "310 N Westlake Blvd",
      "address_city": "Westlake Village",
      "address_zip": 91362,
      "address_state": "CA",
      "address_country": "United States",
      "beneficiary_amount": 34,
      "type": "Trust",
      "is_primary_beneficiary": true
    },
    {
      "name": "Giant Business",
      "tin": "98-7654321",
      "phone_work": "(805) 557-1503",
      "email": "[email protected]",
      "address_street": "310 N Westlake Blvd",
      "address_city": "Westlake Village",
      "address_zip": 91362,
      "address_state": "CA",
      "address_country": "United States",
      "beneficiary_amount": 34,
      "type": "Trust",
      "is_primary_beneficiary": "true",
      "responsible_individual_email": "[email protected]",
      "responsible_individual_first_name": "John",
      "responsible_individual_last_name": "Doe",
      "responsible_party_relationship": "Captain",
      "responsible_party_sole_signer": true
    }
  ]
}

(Example) Create an eApp with only insured information

{
  "metadata": {
    "Agentid": "1234",
    "Campaign": "Quote-Life"
  },
  "insured": {
    "first_name": "John",
    "last_name": "Doe",
    "health": 3,
    "gender": "male",
    "smoker": "never",
    "birthdate": "2000-01-01",
    "email": "[email protected]",
  }
}

Response Attributes

Parameter Description
id
number or null
The eApp's ID
uuid
string or null
The eApp's UUID
apply_link
string or null
The link where users may resume the eApp
warnings
array<string> or null
Post-eApp create warnings. Any messages failing to save after the eApp has been created such as Parties, addresses, etc. These will not prevent the eApp from being resume-able but provided invalid information is not saved.
errors
array<string> or null
Pre-eApp create errors. Messages included here must be addressed before creating the eApp.

Response Example

{
    "apply_link": "https://demo.back9ins.com/apply/TestAgent?eapp_id=35&eapp_uuid=c0104a11-6287-4545-89ea-73f1f71531f3",
    "uuid": "c0104a11-6287-4545-89ea-73f1f71531f3",
    "errors": null,
    "warnings": null
}

Response Statuses

Status Description
201 Successful request
401 Unauthorized request. Your API key can be found at https://app.back9ins.com/settings?page=developer-settings
422 Pre-eApp create validation (Failed to create eApp)
500 Unexpected/Internal Error

Response Errors

Parameter Message
client_id "Please provide npn or client_id"
npn "Please provide npn or client_id"
step "Please specify a valid step: quote, contact"
first_name "Must be at least one character and no more than 50 characters"
last_name "Must be at least one character and no more than 50 characters"
gender "Must be Male or Female"
health "Must be in list -1, -2, -3, -4, -5, -6, 1, 2, 3, 4, 5"
smoker "Must be in list Never, Previously, Currently"
smoking_statuses "required"
smoking_statuses.0.category "Must be in list Cannabis, Chew, Cigarettes, Cigars, eCigarettes, Pipe",
smoking_statuses.0.frequency "Must be in list 365, 52, 12, 2"
smoking_statuses.0.last_use_date "Must be before today"
birthdate "Must be before today"
"May not be older than 90"
state "Please provide a state"
quote "No Quotes Found"

Response Warnings

Parameter Message
parties "Unable to parse"
parties.n any error involving saving parties at index n
insured.owner any error switching the insured as the owner
insured.occupation any error saving the insured's occupation
insured any error saving insured information

Grant Access to eApp

Grant specific advisors access to specific eApps. This is not a necessary action as BOSS provides access to the agent and their connections, but can be used if needed to apply your own logic.

Endpoint

POST /api/v1/eapps/:id/accesses/create

Headers

X-BACKNINE-AUTHENTICATION: your-api-key
Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Request Parameters

One of the following is required to identify the advisor: npn, agent_id, or agency_id

Parameter Description
npn
number
The advisor's NPN
agent_id
number
The agent's id within BOSS
agency_id
number
The agency's id within BOSS
email
boolean, optional
Controls if the advisor will receive eApp emails. Default will be applied if not specified.
additional_case_access
boolean, optional
Controls if the advisor will be given access the case once the eApp is completed. Default will be applied if not specified.

Request Examples

(Example) Create an eApp with a npn

{
  "electronic_application_access":
  {
    "npn": 12345, "email": true, "additional_case_access": true
  }
}

(Example) Create an eApp with a agent_id

{
  "electronic_application_access":
  {
    "agent_id": 12345, "email": true, "additional_case_access": true
  }
}

(Example) Create an eApp with a agency_id

{
  "electronic_application_access":
  {
    "agency_id": 12345, "email": true, "additional_case_access": true
  }
}

Response Statuses

Status Description
201 Successful request
401 Unauthorized request. Your API key can be found at https://app.back9ins.com/settings?page=developer-settings
422 Create validation failed
500 Unexpected/Internal Error

Example Response Errors

"errors" => ["API key not provided"] "errors" => "missing required top level electronic_application_access" "errors" => "cannot find advisor" "errors" => "Electronic application has already been taken"

Get New Quotes for eApp

Get New Quotes for eApp allows you to get quotes for an existing eApp. This will not update the eApp's current quote unless you send a separate request to Update an eApp’s Quote.

Endpoint

POST /api/v1/eapps/:eapp_uuid/quotes

Headers

X-BACKNINE-AUTHENTICATION: your-api-key
Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Request Parameters

See Insured Params and Quote Params for all relevant data. When a quote is set as active, it will save relevant information to the eApp.

Request Examples

(Example) Get Quotes for an existing eApp

No body is needed

(Example) Get Quotes for an existing eApp with a different term_duration

{
  "term_duration": 30
}

Response Attributes

Parameter Description
quotes
array<Quote> or null
a list of available quotes matching request parameters
errors
array<string> or null
a list of reasons that must be addressed before getting quotes

Response Statuses

Status Description
201 Successful request
401 Unauthorized request. Your API key can be found at https://app.back9ins.com/settings?page=developer-settings
422 Quoting validation (Failed to fetch quotes)
500 Unexpected/Internal Error

Response Example

See the example response from Get Quotes

Update an eApp's Quote

Endpoint

PUT /api/v1/eapps/:eapp_uuid/active-quote

Headers

X-BACKNINE-AUTHENTICATION: your-api-key
Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Request Parameters

Parameter Description
quote_id
string
The quote id that you would like to make active

Request Example

(Example) Update with a quote_id

{
  "insured": {
    "quote_id": "some-quote-uuid"
  }
}

Response

Parameter Description
errors
array<string> or null
a list of reasons that must be addressed before getting quotes

Response Statuses

Status Description
200 Successful request
401 Unauthorized request. Your API key can be found at https://app.back9ins.com/settings?page=developer-settings
422 Assignment Validation, please ensure a valid quote ID is sent
500 Unexpected/Internal Error

Response Example

{
  "errors": null
}

Update an eApp's Insured Data

Sometimes in a flow, users want to update an insured's phone number or email after the fact.

Endpoint

PATCH /api/v1/eapps/:eapp_uuid/insured

Headers

X-BACKNINE-AUTHENTICATION: your-api-key
Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Request Parameters

See Insured Params for all updatable information. When updating the insured with non-essential information it is advised to fetch new quotes. Previous quotes will be invalid for the insured. The following values are seen as essential: state, first_name, last_name, gender, health, smoker, smoking_statuses, height, weight, and birthdate.

Request Examples

(Example) Updating Email

{
  "email": "[email protected]"
}

(Example) Updating Phone Number

{
  "phone": "(123) 456-7890"
}

Response Attributes

Parameter Description
errors
Object or null
a object of unsaved insured params or error with a string array of messages or null
insured
Partial<Insured Params>
the requested updated values

Response Statuses

Status Description
200 Successful request
401 Unauthorized request. Your API key can be found at https://app.back9ins.com/settings?page=developer-settings
422 Quoting validation (Failed to fetch quotes)
500 Unexpected/Internal Error

Response Example

Text Messaging

Summary

BackNine's text messaging endpoint allows you to send POST requests which result in a personalized text message to your prospect that contains a customized rate, your name, your Quote & Apply website, and a link to apply. The text message looks like this:

Hi John, this is your insurance agent Reid Tattersall. Did you know you could protect your loved ones with life insurance for as low as $30 per month for $1,000,000? Here's a no obligation quote: https://app.back9ins.com/t/35a77cf5

Clicking the link will launch Quote & Apply with the client's information pre-filled.

This service cannot be used for mass and or blast text messages. The API has a limiter to only accept a certain number of requests per time period.

Endpoint

POST /api/v1/text

Authentication

X-BACKNINE-AUTHENTICATION: your-api-key Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Sample Request

{
  "sender_npn": "1234567",
  "first_name": "John",
  "last_name": "Doe",
  "phone_number": "8056600999",
  "death_benefit": 1000000,
  "gender": "Male",
  "birthdate": "1990-05-11",
  "state": "CA",
  "health": 5,
  "smoker": "Never",
  "mode": 12,
  "product_category": "10 Year Term"
}

Send an HTTPS POST request to the above route along with the request body in order to retrieve send a text message:

Parameter Description
sender_npn required
number
The national producer number of the agent the text will be from. The agent must exist in BOSS and either the NPN and API must belong to the same agent or you must have a connection to the agent.
first_name required
string
The prospect's first name.
last_name required
string
The prospect's last name.
phone_number required
string
The propsect's 10 digit phone number. (###) ###-####
death_benefit required
number
Suggested amount is 1000000 and ranges from 50000 to 10000000.
gender required
string
Either Male or Female.
birthdate required
date
The prospect's birthdate in YYYY-MM-DD format.
state required
string
Two digit state abbreviation.
health required
number
1 - 5 (5 being the best).
smoker required
string
The prospect's smoking status. Can be either Never, Previously, or Currently. More information is below.
usages required
array
A list of smoker information. Leave empty or omit if smoker is Never.
mode required
number
How many times per year the insured will be paying. Must be 1, 2, 4, or 12.
product_category required
string
Accidental Death, 10 Year Term, 15 Year Return of Premium Term, 15 Year Term, 20 Year Return of Premium Term, 20 Year Term, 25 Year Return of Premium Term, 25 Year Term, 30 Year Return of Premium Term, 30 Year Term, To Age 95, To Age 100, To Age 120.

Usages

See Above for Smoking Status Object Structure

Parameter Description
category required
string
The item the user uses or has used. Must be Cigarettes, eCigarettes, Cigars, Pipe, Chew, or Cannabis
frequency required
string
How frequently the user uses or has used. Must be 2, 12, 52, or 365
last_use_date
string, optional
The last use date of this item. Must be formatted as YYYY-MM-DD. This is required if smoker is Previously

Response Format

If the request is successful, you will receive a 204 response.

Error Handling

If the request is not successful due to not having all required fields, you will receive an error message.

Webhooks

Authentication Key

Each webhook request contains the header X-BACKNINE-AUTHENTICATION with a consistent unique secret value you can use to secure your endpoint. This secret value is not your API key and will be unique per webhook (i.e. the value for Case webhooks will be different than Quote & Apply Application webhooks). You can find this value by viewing a webhook response.

Cases and Quote & Apply Applications

Subscribing to our Case or Quote & Apply Application webhooks allows you to integrate Case and Quote & Apply application data with your systems. Once subscribed we'll send a webhook everytime one of your cases or Quote & Apply applications is created or updated.

Example Use Cases

Subscribe via Back9

On the integrations page in BOSS, find the Case or Electronic Application hook via BackNine. Paste in your desired endpoint for us to post data to. This option is completely free for unlimited amount of data transfers but takes some development work on your end to complete the integration.

Subscribe via Zapier

Click this link to view our suite of Zaps. Zapier is free up to a certain amount of tasks performed, but after that threshold is passed each zap accrues charges on your account.

Example Data Structure

An example request to demonstrate the data structure is below. You can also send a GET request to one of the following URL's with X-BACKNINE-AUTHENTICATION as a header with a value of your API key to receive a response on an example Case or Quote & Apply Application.

Example case data struture: https://app.back9ins.com/api/v1/webhook_zapier_test_case Example Quote & Apply Application (aka ElectronicApplication or eApp) data structure:https://app.back9ins.com/api/v1/webhook_zapier_test_electronic_application

Example Quote & Apply application response with nested Case is shown in the example.

[
   {
      "id":116662,
      "uuid":"ae9f4263-95e6-4fab-ab65-7a641bef0e81",
      "approved_domain_id": 1,
      "step":14,
      "named_step": "DocuSign - Final Step",
      "face_amount":1000000.0,
      "premium":44.94,
      "target_premium":null,
      "mode":12,
      "pay_duration":null,
      "state":"CA",
      "url":"https://quoteandapply.io/",
      "apply_link": "https://quoteandapply.io/?strife_id=116662&strife_uuid=a36d5544-5013-43cf-b3e9-58f59dc92fd3",
      "metadata": null,
      "first_name":"John",
      "last_name":"Doe",
      "birthdate":"1987-01-02",
      "gender":"Male",
      "zip":null,
      "cash_value":1.0,
      "age_value":120,
      "ltc_rider_percentage":4,
      "other_pending_insurance_amount_to_be_accepted":null,
      "exam_date":"2020-12-14T07:45:00.000-08:00",
      "order_number":"TestModeConfirmation",
      "smoker":"Currently",
      "health":4,
      "height":69,
      "weight":160,
      "validated_rating":"Preferred NT",
      "referrer_id":null,
      "referrer_type":null,
      "product_category":"20 Year Term",
      "solve":"term",
      "crediting_rate":"Default Rate",
      "ltc_rider":false,
      "income_solve":"No",
      "income_start_age":65,
      "income_end_age":90,
      "lapse_protection_to_age":100,
      "part2":null,
      "test":false,
      "tia":true,
      "eft":true,
      "exam_skip_reason":null,
      "status":"Completed",
      "call_center":true,
      "agent_phone":"(805) 413-7562",
      "agent":{
         "id":1179,
         "name":"Reid Tattersall",
         "avatar":"production/agents/YBOQLRNVVGSIUTAT",
         "email":"[email protected]",
         "type":{
            "model":"Agent",
            "link":"agents"
         },
         "phone_work":"(805) 413-7562",
         "npn":10790698
      },
      "product":{
         "id":105,
         "name":"OPTerm 20",
         "carrier":{
            "id":28,
            "name":"Banner",
            "avatar":"https://d1usw6tyldpxhi.cloudfront.net/591900ff-cece-5ce0-0d1c-4f76313d2f3d.png",
            "scaled_avatar":"https://d1usw6tyldpxhi.cloudfront.net/MZJJPPDV.jpg"
         }
      },
      "carrier":{
         "id":28,
         "name":"Banner",
         "avatar":"https://d1usw6tyldpxhi.cloudfront.net/591900ff-cece-5ce0-0d1c-4f76313d2f3d.png",
         "scaled_avatar":"https://d1usw6tyldpxhi.cloudfront.net/MZJJPPDV.jpg"
      },
      "case":{
         "id":26723,
         "line":"life",
         "policy_number":"Pending",
         "elimination_period":null,
         "inflation":null,
         "benefit_period":null,
         "benefit_amount":null,
         "benefit_mode":null,
         "premium":{
            "premium":44.94,
            "total":539.28
         },
         "tax_type":"Non-Qualified",
         "surrender_charge_expiration":0,
         "tracking_number":null,
         "advisors":[
            {
               "marketing_manager_id":1,
               "id":1179,
               "type":"Agent",
               "ownable":{
                  "id":1179,
                  "name":"Reid Tattersall",
                  "avatar":"production/agents/YBOQLRNVVGSIUTAT",
                  "email":"[email protected]",
                  "type":{
                     "model":"Agent",
                     "link":"agents"
                  },
                  "phone_work":"(805) 413-7562",
                  "npn":10790698
               },
               "appointment":{
                  "id":8247,
                  "name":"W2Q0000 (assigning to BackNine)",
                  "assignment":{
                     "id":2212,
                     "name":"W2Q0000"
                  }
               },
               "appointment_case_id":28073,
               "reports":{
                  "id":8247,
                  "name":"W2Q0000 (assigning to BackNine)",
                  "assignment":{
                     "id":2212,
                     "name":"W2Q0000"
                  }
               },
               "marketing_manager":{
                  "id":1,
                  "name":"Reid Tattersall"
               },
               "percents":{
                  "split_percent":1.0,
                  "renewal_split":1.0
               }
            }
         ],
         "contract_parties":[
            {
               "id":60668,
               "type":"individual",
               "name":"John Doe",
               "first_name":"John",
               "last_name":"Doe",
               "avatar":"production/contract_parties/CXATZRSU",
               "birthdate":"1987-01-02",
               "party_id":"121-65-5465",
               "email":"[email protected]",
               "roles":[
                  {
                     "id":76132,
                     "role":"Insured",
                     "rating_applied":"Preferred NT",
                     "approval_rating":null,
                     "underwriting_rational":null,
                     "occupation_class":null,
                     "beneficiary_qualifier":null,
                     "beneficiary_amount":null
                  },
                  {
                     "id":76133,
                     "role":"Owner",
                     "rating_applied":"Preferred NT",
                     "approval_rating":null,
                     "underwriting_rational":null,
                     "occupation_class":null,
                     "beneficiary_qualifier":null,
                     "beneficiary_amount":null
                  }
               ]
            },
            {
               "id":60669,
               "type":"individual",
               "name":"Jane Doe",
               "first_name":"Jane",
               "last_name":"Doe",
               "avatar":"production/contract_parties/OMSFMFXI",
               "birthdate":"1990-01-02",
               "party_id":"645-54-6546",
               "email":"[email protected]",
               "roles":[
                  {
                     "id":76134,
                     "role":"Primary Beneficiary",
                     "rating_applied":"Preferred NT",
                     "approval_rating":null,
                     "underwriting_rational":null,
                     "occupation_class":null,
                     "beneficiary_qualifier":"Percent",
                     "beneficiary_amount":1.0
                  }
               ]
            },
            {
               "id":60670,
               "type":"entity",
               "name":"BackNine",
               "first_name":null,
               "last_name":null,
               "avatar":"production/contract_parties/ILDVJSRA",
               "birthdate":null,
               "party_id":"65-4564445",
               "email":"[email protected]",
               "roles":[
                  {
                     "id":76135,
                     "role":"Contingent Beneficiary",
                     "rating_applied":"Preferred NT",
                     "approval_rating":null,
                     "underwriting_rational":null,
                     "occupation_class":null,
                     "beneficiary_qualifier":"Percent",
                     "beneficiary_amount":0.5
                  }
               ]
            },
            {
               "id":60671,
               "type":"entity",
               "name":"Family Trust",
               "first_name":null,
               "last_name":null,
               "avatar":"production/contract_parties/MSCASACK",
               "birthdate":"1999-01-02",
               "party_id":"54-5681548",
               "email":"[email protected]",
               "roles":[
                  {
                     "id":76136,
                     "role":"Contingent Beneficiary",
                     "rating_applied":"Preferred NT",
                     "approval_rating":null,
                     "underwriting_rational":null,
                     "occupation_class":null,
                     "beneficiary_qualifier":"Percent",
                     "beneficiary_amount":0.5
                  }
               ]
            }
         ],
         "status":"Closed - Not Submitted to Carrier",
         "face_amount":1000000.0,
         "mode":12,
         "outstanding":3,
         "commission":0.8,
         "case_manager":{
            "id":6567,
            "name":"Carly Ryan",
            "avatar":"production/BQWTXCUCRZJQKWCY",
            "email":"[email protected]",
            "type":{
               "model":"Agent",
               "link":"agents"
            },
            "phone_work":"805-557-1533",
            "npn":null
         },
         "notes":[
            {
               "id":1910706,
               "note":"Reid Tattersall has changed the status to Closed - Not Submitted to Carrier on Pending",
               "email":false,
               "date":"2020-12-09T01:25:58.000-08:00",
               "notable_id":26723,
               "notable_type":"Case",
               "ownable":{
                  "id":1179,
                  "name":"Reid Tattersall",
                  "avatar":"production/agents/YBOQLRNVVGSIUTAT",
                  "type":{
                     "link":"agents",
                     "model":"Agent"
                  }
               },
               "created_at":"2020-12-09T01:25:58.000-08:00",
               "advisor_access":true,
               "carrier_access":false,
               "carrier_email":false,
               "phone_call":false,
               "documents":[

               ]
            },
            {
               "id":1910705,
               "note":"This is a test case for webhooks and should not be deleted.",
               "email":false,
               "date":"2020-12-09T01:25:49.000-08:00",
               "notable_id":26723,
               "notable_type":"Case",
               "ownable":{
                  "id":1179,
                  "name":"Reid Tattersall",
                  "avatar":"production/agents/YBOQLRNVVGSIUTAT",
                  "type":{
                     "link":"agents",
                     "model":"Agent"
                  }
               },
               "created_at":"2020-12-09T01:25:49.000-08:00",
               "advisor_access":true,
               "carrier_access":false,
               "carrier_email":false,
               "phone_call":false,
               "documents":[

               ]
            },
            {
               "id":1910703,
               "note":"Hello Reid, this Banner policy is set for eDelivery so please let me know if you prefer a paper policy. eDelivery emails are sent from DocuSign and your client's access is the first 5 letters of their last name and the last 4 digits of their SSN. You can \u003Ca href='http://www.lgamerica.com/edelivery/'\u003Eclick here\u003C/a\u003E to learn about eDelivery from Banner. ",
               "email":true,
               "date":"2020-12-09T01:25:10.000-08:00",
               "notable_id":26723,
               "notable_type":"Case",
               "ownable":{
                  "id":6567,
                  "name":"Carly Ryan",
                  "avatar":"production/BQWTXCUCRZJQKWCY",
                  "type":{
                     "link":"agents",
                     "model":"Agent"
                  }
               },
               "created_at":"2020-12-09T01:25:10.000-08:00",
               "advisor_access":true,
               "carrier_access":false,
               "carrier_email":false,
               "phone_call":false,
               "documents":[

               ]
            }
         ],
         "policy_date":null,
         "conversion_expiry":null,
         "next_call_at":"2020-12-17T09:00:00.000-08:00",
         "days_pending":0,
         "created_at":"2020-12-09T01:25:08.000-08:00",
         "submitted_date":null,
         "approved_date":null,
         "issue_date":null,
         "sent_to_agent":null,
         "inforce_date":null,
         "app_sign_date":"2020-12-09",
         "delivery_requirements_due_date":null,
         "closed_date":"2020-12-09",
         "ltc_rider":false,
         "state":"CA",
         "exchange_amount":0.0,
         "lump_sum":0.0,
         "tracking_number_type":"USPS",
         "tracking_number_link":"https://tools.usps.com/go/TrackConfirmAction?tLabels=",
         "informal_options":[
            "All Offers In",
            "Informal Formalized",
            "Informal Closed",
            "Awaiting Carrier Offers",
            "Gathering Medical Information",
            "Informal Entered"
         ],
         "commissionable":true,
         "target_premium":null,
         "timeline":[
            {
               "date":"2020-12-09",
               "description":"Application Signed"
            },
            {
               "date":"2020-12-09T01:25:08.000-08:00",
               "description":"Received by BackNine"
            },
            {
               "date":"2020-12-09",
               "description":"Closed"
            }
         ],
         "carrier_e_delivery":true,
         "informal":false,
         "cash_received":44.94,
         "applied_mode":12,
         "applied_premium":44.94,
         "case_concierge":{
            "id":1448,
            "name":"Cindy Smith",
            "avatar":"e25e70a0-3924-4f16-9934-5399b257cf0c",
            "email":"[email protected]",
            "type":{
               "model":"Agent",
               "link":"agents"
            },
            "phone_work":"(805) 413-7564",
            "npn":null
         },
         "tia":true,
         "product":{
            "id":105,
            "name":"OPTerm 20",
            "line":"life",
            "plan_type":"TRM",
            "ltc_rider":null,
            "carrier":{
               "id":28,
               "name":"Banner",
               "avatar":"https://d1usw6tyldpxhi.cloudfront.net/591900ff-cece-5ce0-0d1c-4f76313d2f3d.png",
               "scaled_avatar":"https://d1usw6tyldpxhi.cloudfront.net/MZJJPPDV.jpg"
            }
         },
         "address":{
            "id":7909,
            "name":"310 N. Westlake Blvd., Suite 240, Westlake Village, CA 91362"
         },
         "electronic_application":{
            "id":116662
         },
         "commissions":[

         ],
         "documents":[
            {
               "id":435360,
               "name":"electronic_application.pdf",
               "category":"Electronic Application",
               "ext":"pdf",
               "mime_type":"application/pdf",
               "ownable":{
                  "id":1179,
                  "name":"Reid Tattersall",
                  "type":"Agent"
               },
               "can_delete":false,
               "created_at":"2020-12-09T01:25:10.000-08:00"
            }
         ]
      },
      "individuals":[
         {
            "id":88669,
            "first_name":"John",
            "middle_name":null,
            "last_name":"Doe",
            "gender":"Male",
            "birthdate":"1987-01-02",
            "name":"John Doe",
            "phone_mobile":"(805) 660-0916",
            "email":"[email protected]",
            "ssn":"121-65-5465",
            "income":150000.0,
            "assets":1500000.0,
            "liabilities":500000.0,
            "bankruptcy":false,
            "bankruptcy_type":null,
            "bankruptcy_discharge_date":null,
            "us_citizen":true,
            "birth_location":"CA",
            "visa_type":null,
            "us_entry_date":null,
            "country_of_citizenship":"United States",
            "tobacco":null,
            "humanized":false,
            "drivers_license":{
               "id":45924,
               "state":"CA",
               "number":"D3456789",
               "no_drivers_license_reason":null
            },
            "occupation":{
               "id":40727,
               "occupation":"Developer",
               "start_date":"2008-12-09",
               "employee_id":88669,
               "employee_type":"Individual",
               "employer":{
                  "id":28139,
                  "name":"BackNine",
                  "irrevocable":null,
                  "business_address":{
                     "id":515333,
                     "street_address":"310 N Westlake Blvd",
                     "zip":"91362",
                     "city":"Thousand Oaks",
                     "state":"CA",
                     "country":"United States",
                     "address_type":"business",
                     "raw_address":"310 N Westlake Blvd, Thousand Oaks, CA 91362",
                     "start_date":null
                  }
               }
            },
            "addresses":[
               {
                  "id":515332,
                  "street_address":"123 Paradise Cove Rd",
                  "zip":"90265",
                  "city":"Malibu",
                  "state":"CA",
                  "country":null,
                  "address_type":"home",
                  "raw_address":"123 Paradise Cove Rd, Malibu, CA 90265",
                  "start_date":"2017-12-09"
               },
               {
                  "id":515337,
                  "street_address":"3101 Townsgate Rd",
                  "zip":"91361",
                  "city":"Thousand Oaks",
                  "state":"CA",
                  "country":null,
                  "address_type":"exam",
                  "raw_address":"3101 Townsgate Rd, Thousand Oaks, CA 91361",
                  "start_date":null
               }
            ],
            "application_roles":[
               {
                  "id":114131,
                  "role":"Insured",
                  "beneficiary_amount":null,
                  "beneficiary_qualifier":null,
                  "relationship":null,
                  "electronic_application_id":116662
               },
               {
                  "id":114132,
                  "role":"Owner",
                  "beneficiary_amount":null,
                  "beneficiary_qualifier":null,
                  "relationship":null,
                  "electronic_application_id":116662
               }
            ],
            "efts":[
               {
                  "id":42603,
                  "account_type":"Checking",
                  "routing_number":"122105278",
                  "account_number":"0000000016"
               }
            ],
            "medical_sources":[
               {
                  "id":308,
                  "name":"Starfleet Medical",
                  "health_system":null,
                  "physician":null,
                  "status":"Connected",
                  "created_at":"2020-12-09T01:14:30.000-08:00"
               }
            ],
            "signers":[
               {
                  "id":106795,
                  "role":"insured1/owner1",
                  "electronic_application_id":116662
               }
            ]
         },
         {
            "id":88670,
            "first_name":"Jane",
            "middle_name":null,
            "last_name":"Doe",
            "gender":"Female",
            "birthdate":"1990-01-02",
            "name":"Jane Doe",
            "phone_mobile":"(805) 660-0917",
            "email":"[email protected]",
            "ssn":"645-54-6546",
            "income":0.0,
            "assets":0.0,
            "liabilities":0.0,
            "bankruptcy":null,
            "bankruptcy_type":null,
            "bankruptcy_discharge_date":null,
            "us_citizen":null,
            "birth_location":null,
            "visa_type":null,
            "us_entry_date":null,
            "country_of_citizenship":null,
            "tobacco":null,
            "humanized":false,
            "drivers_license":null,
            "occupation":null,
            "addresses":[
               {
                  "id":515334,
                  "street_address":"123 Paradise Cove Rd",
                  "zip":"90265",
                  "city":"Malibu",
                  "state":"CA",
                  "country":"United States",
                  "address_type":"home",
                  "raw_address":"123 Paradise Cove Rd, Malibu, CA 90265",
                  "start_date":null
               }
            ],
            "application_roles":[
               {
                  "id":114133,
                  "role":"Primary Beneficiary",
                  "beneficiary_amount":1.0,
                  "beneficiary_qualifier":"Percent",
                  "relationship":"Wife",
                  "electronic_application_id":116662
               }
            ],
            "efts":[

            ],
            "medical_sources":[

            ],
            "signers":[

            ]
         }
      ],
      "entities":[
         {
            "id":28140,
            "name":"BackNine",
            "tin":"65-4564445",
            "email":"[email protected]",
            "phone_work":"(805) 660-0918",
            "formation_date":null,
            "irrevocable":null,
            "type":"Entity",
            "address":{
               "id":515335,
               "street_address":"310 N Westlake Blvd",
               "zip":"91362",
               "city":"Thousand Oaks",
               "state":"CA",
               "country":"United States",
               "address_type":"business",
               "raw_address":"310 N Westlake Blvd, Thousand Oaks, CA 91362",
               "start_date":null
            },
            "application_roles":[
               {
                  "id":114134,
                  "role":"Contingent Beneficiary",
                  "beneficiary_amount":0.5,
                  "beneficiary_qualifier":"Percent",
                  "relationship":"Employer",
                  "electronic_application_id":116662
               }
            ],
            "responsible_parties":[

            ]
         },
         {
            "id":28141,
            "name":"Family Trust",
            "tin":"54-5681548",
            "email":"[email protected]",
            "phone_work":"(805) 660-1920",
            "formation_date":"1999-01-02",
            "irrevocable":false,
            "type":"Entity",
            "address":{
               "id":515336,
               "street_address":"495 N Ventu Park Rd",
               "zip":"91320",
               "city":"Thousand Oaks",
               "state":"CA",
               "country":"United States",
               "address_type":"business",
               "raw_address":"495 N Ventu Park Rd, Thousand Oaks, CA 91320",
               "start_date":null
            },
            "application_roles":[
               {
                  "id":114135,
                  "role":"Contingent Beneficiary",
                  "beneficiary_amount":0.5,
                  "beneficiary_qualifier":"Percent",
                  "relationship":"Trust",
                  "electronic_application_id":116662
               }
            ],
            "responsible_parties":[

            ]
         }
      ],
      "electronic_application_cases":[
         {
            "id":6220,
            "status":"Active",
            "policy_number":"MA456789",
            "face_amount":500000.0,
            "policy_date":"2010-01-02",
            "business_insurance":false,
            "replacement_reason":null,
            "carrier":{
               "id":48,
               "name":"MassMutual",
               "avatar":"https://d1usw6tyldpxhi.cloudfront.net/93bc8c34-adc7-4fa6-799e-4f7dd8844e2b.png",
               "scaled_avatar":"https://d1usw6tyldpxhi.cloudfront.net/"
            }
         }
      ],
      "smoking_statuses":[
         {
            "id":33747,
            "category":"Cigars",
            "frequency":2,
            "last_use_date":null,
            "status":"Currently"
         }
      ]
   }
]

Example Case response with a nested Quote & Apply application (electronic_application) is shown in the example.

[
   {
      "id":26723,
      "line":"life",
      "policy_number":"Pending",
      "elimination_period":null,
      "inflation":null,
      "benefit_period":null,
      "benefit_amount":null,
      "benefit_mode":null,
      "premium":{
         "premium":44.94,
         "total":539.28
      },
      "tax_type":"Non-Qualified",
      "surrender_charge_expiration":0,
      "tracking_number":null,
      "advisors":[
         {
            "marketing_manager_id":1,
            "id":1179,
            "type":"Agent",
            "ownable":{
               "id":1179,
               "name":"Reid Tattersall",
               "avatar":"production/agents/YBOQLRNVVGSIUTAT",
               "email":"[email protected]",
               "type":{
                  "model":"Agent",
                  "link":"agents"
               },
               "phone_work":"(805) 413-7562",
               "npn":10790698
            },
            "appointment":{
               "id":8247,
               "name":"W2Q0000 (assigning to BackNine)",
               "assignment":{
                  "id":2212,
                  "name":"W2Q0000"
               }
            },
            "appointment_case_id":28073,
            "reports":{
               "id":8247,
               "name":"W2Q0000 (assigning to BackNine)",
               "assignment":{
                  "id":2212,
                  "name":"W2Q0000"
               }
            },
            "marketing_manager":{
               "id":1,
               "name":"Reid Tattersall"
            },
            "percents":{
               "split_percent":1.0,
               "renewal_split":1.0
            }
         }
      ],
      "contract_parties":[
         {
            "id":60668,
            "type":"individual",
            "name":"John Doe",
            "first_name":"John",
            "last_name":"Doe",
            "avatar":"production/contract_parties/CXATZRSU",
            "birthdate":"1987-01-02",
            "party_id":"121-65-5465",
            "email":"[email protected]",
            "roles":[
               {
                  "id":76132,
                  "role":"Insured",
                  "rating_applied":"Preferred NT",
                  "approval_rating":null,
                  "underwriting_rational":null,
                  "occupation_class":null,
                  "beneficiary_qualifier":null,
                  "beneficiary_amount":null
               },
               {
                  "id":76133,
                  "role":"Owner",
                  "rating_applied":"Preferred NT",
                  "approval_rating":null,
                  "underwriting_rational":null,
                  "occupation_class":null,
                  "beneficiary_qualifier":null,
                  "beneficiary_amount":null
               }
            ]
         },
         {
            "id":60669,
            "type":"individual",
            "name":"Jane Doe",
            "first_name":"Jane",
            "last_name":"Doe",
            "avatar":"production/contract_parties/OMSFMFXI",
            "birthdate":"1990-01-02",
            "party_id":"645-54-6546",
            "email":"[email protected]",
            "roles":[
               {
                  "id":76134,
                  "role":"Primary Beneficiary",
                  "rating_applied":"Preferred NT",
                  "approval_rating":null,
                  "underwriting_rational":null,
                  "occupation_class":null,
                  "beneficiary_qualifier":"Percent",
                  "beneficiary_amount":1.0
               }
            ]
         },
         {
            "id":60670,
            "type":"entity",
            "name":"BackNine",
            "first_name":null,
            "last_name":null,
            "avatar":"production/contract_parties/ILDVJSRA",
            "birthdate":null,
            "party_id":"65-4564445",
            "email":"[email protected]",
            "roles":[
               {
                  "id":76135,
                  "role":"Contingent Beneficiary",
                  "rating_applied":"Preferred NT",
                  "approval_rating":null,
                  "underwriting_rational":null,
                  "occupation_class":null,
                  "beneficiary_qualifier":"Percent",
                  "beneficiary_amount":0.5
               }
            ]
         },
         {
            "id":60671,
            "type":"entity",
            "name":"Family Trust",
            "first_name":null,
            "last_name":null,
            "avatar":"production/contract_parties/MSCASACK",
            "birthdate":"1999-01-02",
            "party_id":"54-5681548",
            "email":"[email protected]",
            "roles":[
               {
                  "id":76136,
                  "role":"Contingent Beneficiary",
                  "rating_applied":"Preferred NT",
                  "approval_rating":null,
                  "underwriting_rational":null,
                  "occupation_class":null,
                  "beneficiary_qualifier":"Percent",
                  "beneficiary_amount":0.5
               }
            ]
         }
      ],
      "status":"Closed - Not Submitted to Carrier",
      "face_amount":1000000.0,
      "mode":12,
      "outstanding":3,
      "commission":null,
      "case_manager":{
         "id":6567,
         "name":"Carly Ryan",
         "avatar":"production/BQWTXCUCRZJQKWCY",
         "email":"[email protected]",
         "type":{
            "model":"Agent",
            "link":"agents"
         },
         "phone_work":"805-557-1533",
         "npn":null
      },
      "notes":[
         {
            "id":1910706,
            "note":"Reid Tattersall has changed the status to Closed - Not Submitted to Carrier on Pending",
            "email":false,
            "date":"2020-12-09T01:25:58.000-08:00",
            "notable_id":26723,
            "notable_type":"Case",
            "ownable":{
               "id":1179,
               "name":"Reid Tattersall",
               "avatar":"production/agents/YBOQLRNVVGSIUTAT",
               "type":{
                  "link":"agents",
                  "model":"Agent"
               }
            },
            "created_at":"2020-12-09T01:25:58.000-08:00",
            "advisor_access":true,
            "carrier_access":false,
            "carrier_email":false,
            "phone_call":false,
            "documents":[

            ]
         },
         {
            "id":1910705,
            "note":"This is a test case for webhooks and should not be deleted.",
            "email":false,
            "date":"2020-12-09T01:25:49.000-08:00",
            "notable_id":26723,
            "notable_type":"Case",
            "ownable":{
               "id":1179,
               "name":"Reid Tattersall",
               "avatar":"production/agents/YBOQLRNVVGSIUTAT",
               "type":{
                  "link":"agents",
                  "model":"Agent"
               }
            },
            "created_at":"2020-12-09T01:25:49.000-08:00",
            "advisor_access":true,
            "carrier_access":false,
            "carrier_email":false,
            "phone_call":false,
            "documents":[

            ]
         },
         {
            "id":1910703,
            "note":"Hello Reid, this Banner policy is set for eDelivery so please let me know if you prefer a paper policy. eDelivery emails are sent from DocuSign and your client's access is the first 5 letters of their last name and the last 4 digits of their SSN. You can \u003Ca href='http://www.lgamerica.com/edelivery/'\u003Eclick here\u003C/a\u003E to learn about eDelivery from Banner. ",
            "email":true,
            "date":"2020-12-09T01:25:10.000-08:00",
            "notable_id":26723,
            "notable_type":"Case",
            "ownable":{
               "id":6567,
               "name":"Carly Ryan",
               "avatar":"production/BQWTXCUCRZJQKWCY",
               "type":{
                  "link":"agents",
                  "model":"Agent"
               }
            },
            "created_at":"2020-12-09T01:25:10.000-08:00",
            "advisor_access":true,
            "carrier_access":false,
            "carrier_email":false,
            "phone_call":false,
            "documents":[

            ]
         }
      ],
      "policy_date":null,
      "conversion_expiry":null,
      "next_call_at":"2020-12-17T09:00:00.000-08:00",
      "days_pending":0,
      "created_at":"2020-12-09T01:25:08.000-08:00",
      "submitted_date":null,
      "approved_date":null,
      "issue_date":null,
      "sent_to_agent":null,
      "inforce_date":null,
      "app_sign_date":"2020-12-09",
      "delivery_requirements_due_date":null,
      "closed_date":"2020-12-09",
      "ltc_rider":false,
      "state":"CA",
      "exchange_amount":0.0,
      "lump_sum":0.0,
      "tracking_number_type":"USPS",
      "tracking_number_link":"https://tools.usps.com/go/TrackConfirmAction?tLabels=",
      "informal_options":[
         "All Offers In",
         "Informal Formalized",
         "Informal Closed",
         "Awaiting Carrier Offers",
         "Gathering Medical Information",
         "Informal Entered"
      ],
      "commissionable":true,
      "target_premium":null,
      "timeline":[
         {
            "date":"2020-12-09",
            "description":"Application Signed"
         },
         {
            "date":"2020-12-09T01:25:08.000-08:00",
            "description":"Received by BackNine"
         },
         {
            "date":"2020-12-09",
            "description":"Closed"
         }
      ],
      "carrier_e_delivery":true,
      "informal":false,
      "cash_received":44.94,
      "profit":0.0,
      "applied_mode":12,
      "applied_premium":44.94,
      "case_concierge":{
         "id":1448,
         "name":"Cindy Smith",
         "avatar":"e25e70a0-3924-4f16-9934-5399b257cf0c",
         "email":"[email protected]",
         "type":{
            "model":"Agent",
            "link":"agents"
         },
         "phone_work":"(805) 413-7564",
         "npn":null
      },
      "tia":true,
      "product":{
         "id":105,
         "name":"OPTerm 20",
         "line":"life",
         "plan_type":"TRM",
         "ltc_rider":null,
         "carrier":{
            "id":28,
            "name":"Banner",
            "avatar":"https://d1usw6tyldpxhi.cloudfront.net/591900ff-cece-5ce0-0d1c-4f76313d2f3d.png",
            "scaled_avatar":"https://d1usw6tyldpxhi.cloudfront.net/MZJJPPDV.jpg"
         }
      },
      "address":{
         "id":7909,
         "name":"310 N. Westlake Blvd., Suite 240, Westlake Village, CA 91362"
      },
      "electronic_application":{
         "id":116662
      },
      "commissions":[

      ],
      "documents":[
         {
            "id":435360,
            "name":"electronic_application.pdf",
            "category":"Electronic Application",
            "ext":"pdf",
            "mime_type":"application/pdf",
            "ownable":{
               "id":1179,
               "name":"Reid Tattersall",
               "type":"Agent"
            },
            "can_delete":false,
            "created_at":"2020-12-09T01:25:10.000-08:00"
         }
      ]
   }
]

Quote & Apply Options Lists

Below is a table of options lists for an electronic_application so you know what values to expect.

Parameter Options
smoker
string
Never, Previously, Currently
status
string
Quote, Lead, Sent, Delivered, Completed, Declined, Voided
named_step
string
Quote - 10% Complete, Name and Contact Information - 20% Complete, Address - 25% Complete, Employer Information - 30% Complete, Ownership - 35% Complete, Primary Beneficiary - 45% Complete, Contingent Beneficiary - 50% Complete, Financial and SSN - 60% Complete, Existing Insurance - 65% Complete, Physician Information - 70% Complete, Underwriting Questions - 80% Complete, Payment Information - 90% Complete, Schedule Exam - 95% Complete, Signing Preference - Final Step, DocuSign - Final Step, Click 'Continue Carrier eApp' to finish on #{carrier.name}'s Website
validated_rating
string
Super Preferred, Preferred NT, Preferred Tobacco, Standard Plus, Standard NT, Standard Tobacco, Level, Level Tobacco, Graded

Cases Options Lists

Parameter Options
status
string
Entered, Submitted, Approved, Issued, Awaiting Reissued Policy, Awaiting Reconsideration, Awaiting Delivery Requirements, Received Delivery Requirements, Awaiting Reconsideration, Active - Pending Requirements, Active, Withdrawn, Postponed, Not Taken, Declined, Lapsed, Grace Period

Set up

Please visit the integrations page in BOSS to subscribe to our hooks. The subscription takes an endpoint URL that will be POSTed to and will contain the following headers.

Key Description
Content-type
string
application/json
X-BACKNINE-AUTHENTICATION
string
Your API Key

Accidental Death API (Legacy)

Endpoint

The endpoint for this action is as follows:

POST /api/v1/apply/accidental_death

Authentication

X-BACKNINE-AUTHENTICATION: your-api-key

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Parameters

{
  "eft": {
    "account_type": "Checking",
    "routing_number": "000000000",
    "account_number": "0"
  },
  "electronic_application": {
    "approved_domain_id": 1,
    "face_amount": 500000,
    "gender": "Male",
    "birthdate": "1990-05-11",
    "state": "CA",
    "mode": 12,
    "product_category": "Accidental Death",
    "application_roles_attributes": [
      {
        "role": "Insured",
        "ownable_attributes": {
          "ownable_type": "Individual",
          "first_name": "John",
          "last_name": "Doe",
          "gender": "Male",
          "birthdate": "1990-05-11",
          "email": "[email protected]",
          "phone_mobile": "(123) 456-7890",
          "ssn": "123-45-6789",
          "birth_location": "FL",
          "addresses_attributes": [
            {
              "address_type": "home",
              "street_address": "1234 My Street",
              "city": "Westlake Village",
              "state": "CA",
              "zip": "91362",
              "country": "United States"
            }
          ]
        }
      },
      {
        "role": "Primary Beneficiary",
        "relationship": "Other",
        "beneficiary_qualifier": "Percent",
        "beneficiary_amount": 1,
        "ownable_attributes": {
          "ownable_type": "Entity",
          "name": "Test Business",
          "tin": "12-3456789",
          "phone_work": "(123) 456-7890"
        }
      },
      {
        "role": "Contingent Beneficiary",
        "relationship": "Grandfather",
        "beneficiary_qualifier": "Percent",
        "beneficiary_amount": 1,
        "ownable_attributes": {
          "ownable_type": "Individual",
          "first_name": "Test",
          "last_name": "Beneficiary",
          "birthdate": "1950-05-11"
        }
      }
    ],
    "electronic_application_cases_attributes": [
      {
        "product_id": 2645,
        "status": "Active"
      }
    ],
    "editors_attributes": [{
      "name": "Test Editor",
      "email": "[email protected]"
    }]
  }
}

Send an HTTPS POST request to the above route along with the request body to generate an eApp session for your client.

Top-level parameters

These are the top-level JSON parameters you will be sending to our endpoint.

Parameter Description
electronic_application required
object
See parameters below.
eft required
object
See parameters below.

Electronic Application parameters

These describe the electronic_application parameter listed above.

Parameter Description
approved_domain_id required
number
The ID of the approved domain. Check BOSS to get the ID of the domain you wish to associate the eApp with.
face_amount required
number
The face amount applied for.
gender required
string
The gender of the applicant. Must be "Male" or "Female".
birthdate required
date
The birthdate in YYYY-MM-DD format.
state required
string
The 2 digit state abbreviation.
mode required
number
A number representing the premium mode. Can be 12 (monthly), 4 (quarterly), 2 (semi-annually), or 1 (annually).
test required
boolean
Indicates whether this is a test eApp or a real eApp. Defaults to the value on the approved domain. Check BOSS to see the value for the domain you pass in.

application_roles_attributes required
array Creates roles such as "insured" on the policy.

Application Roles parameters

These describe the application_roles_attributes parameter listed above. You can use this parameter to pre-fill the insured's info on the eApp. You also use this parameter to determine who will be the beneficiaries. You must have at least one primary beneficiary. The sum of all primary beneficiaries must add up to 1 (or 100%). The sum of all contingent beneficiaries must also add up to 1 (or 100%).

Parameter Description
role required
string
The role of the ownable on the policy. Valid options are: "Insured", "Primary Beneficiary", "Contingent Beneficiary".
relationship required
string
The relationship to the Insured. Can be "Mother", "Father", "Grandfather", "Brother", "Sister", etc. This field must be null for the insured.
beneficiary_qualifier required
string
Must be "Percent". Only used for beneficiaries. Required and reserved for beneficiaries only
beneficiary_amount required
number
A floating-point number representing the percentage the beneficiary will receive if the insured passes. 1 means 100%, 0.5 means 50%, etc. Only used for beneficiaries.
ownable_attributes required
object
Attributes describing the ownable.

Ownable parameters

These describe the ownable_attributes parameter listed above for Application Roles. This is a polymorphic association, but we currently only support parameters describing an individual. You can use this parameter to pre-fill the insured's info on the eApp.

Parameter Description
ownable_type required
string
The type of the ownable. Must be "Individual".
first_name required
string
last_name required
string
phone_mobile required
string
The individual's phone number. It must be in the format (###) ###-####. This is the phone number that shows up on the personal information section (step 2) of the app.
email required
string
Must be in a valid email format.
ssn required
string
Must be in the format ###-##-####.
birthdate required
date
Must be in the format YYYY-MM-DD.
gender required
string
Must be either Male or Female.

Address parameters

This section describes one entry in the addresses_attributes array.

Parameter Description
address_type required
string
Currently can only be "home".
street_address required
string
The ownable's street address, both name and number. For example, "1234 My Street".
city required
string
state required
string
The state's two letter abbreviation, such as "CA" for California.
zip required
number
The 5 digit postal code. Must be in the format "XXXXX".
country required
string
Currently we only support "United States".

Electronic Application Case parameters

This section describes one entry in the electronic_application_cases_attributes array.

Use this section to list the applicants pending and inforce insurance. Only one electronic_application_case per status is necessary.

Parameter Description
product_id required
number
Currently can only be 2645.
status required
string
Can be "Active", "Pending", or "Active - Being Replaced".

EFT parameters

These describe the top-level eft parameter listed above. The EFT must be the insured's EFT.

Parameter Description
account_type required
string
"Checking" or "Savings".
routing_number required
string
A valid routing number (no spaces).
account_number required
string
A valid account number (no spaces).

Get Quotes (Legacy)

Endpoint

POST /api/v1/quotes

Content-Type: application/json

Authentication

X-BACKNINE-AUTHENTICATION: your-api-key Content-Type: application/json

Your API key can be found at https://app.back9ins.com/settings?page=developer-settings

Parameters

Parameter Description
face_amounts required
boolean
A list of the face amounts being quoted
state required
string
two digit state abbreviation
mode required
number
How many times per year the insured will be paying. Possible values are 1, 2, 4, or 12.
product_categories required
array
term.10_year, term.15_year, term.20_year, term.25_year, term.30_year, term.35_year, term.40_year, term.non_med.10_year, term.non_med.15_year, term.non_med.20_year, term.non_med.25_year, term.non_med.30_year, term.return_of_premium.15_year, term.return_of_premium.20_year, term.return_of_premium.25_year, term.return_of_premium.30_year
health required
number
1 - 5 (5 being the best) required unless product_category = 10 Year Non Medical Term, 15 Year Non Medical Term, 20 Year Non Medical Term, 25 Year Non Medical Term, 30 Year Non Medical Term
smoker required
boolean
The smoker status. The prospect's smoking status. Can be either Never, Previously, or Currently. More information is below. Required unless Accidental Death
usages
array
A list of smoker information for the different types of smokable items. Leave empty or omit if smoker status is Never.
npn
boolean
Including npn is required to receive link_to_sms and link_to_share in the response. The npn is the national producer number of the agent the link_to_sms and link_to_share will be from. The agent must exist in BOSS.
first_name
string
Including first_name is required to receive link_to_sms in the response.
last_name
string
Including last_name is required to receive link_to_sms in the response.
phone_number
string
Including phone_number is required to receive link_to_sms in the response.
height
number
The insured's height represented in inches.
weight
number
The insured's weight.

Usages

See Above for Smoking Status Object Structure

Parameter Description
status required
string
The current status. Must be Currently, Previously
category required
string
The item the insured uses or has used. Must be Cigarettes, eCigarettes, Cigars, Pipe, Chew, or Cannabis
frequency required
string
How frequently the insured uses or has used. Must be 2, 12, 52, or 365
last_use_date
string, optional
The last use date of this item. Must be formatted as YYYY-MM-DD. This is required if smoker is Previously

Sample Requests

1. Basic quotes example

{
  "quotes": [{
    "face_amounts": [1000000],
    "gender": "Male",
    "birthdate": "1990-05-11",
    "state": "CA",
    "health": 5,
    "smoker": "Never",
    "mode": 12,
    "product_categories": ["term.10_year"]
  }]
}
{
  "quotes": [{
    "face_amounts": [1000000],
    "gender": "Male",
    "birthdate": "1990-05-11",
    "state": "CA",
    "health": 5,
    "smoker": "Never",
    "mode": 12,
    "product_categories": ["term.10_year"],
    "npn": "1234567",
    "first_name": "John",
    "last_name": "Doe",
    "phone_number": "1234567890"
  }]
}

3. Example to with usages and multiple face_amounts and product_categories


{
  "quotes": [{
    "face_amounts": [500000, 1000000],
    "gender": "Male",
    "birthdate": "1990-05-11",
    "state": "CA",
    "health": 3,
    "height": 69,
    "weight": 170,
    "smoker": "Previously",
    "usages": [
      {
        "status": "Previously",
        "last_use_date": "2018-01-01",
        "frequency": 2,
        "category": "Cigarettes"
      }
    ],
    "mode": 12,
    "product_categories": ["term.10_year", "term.non_med.15_year"],
    "npn": "1234567",
    "first_name": "John",
    "last_name": "Doe",
    "phone_number": "1234567890"
  }]
}

4. Example using Zapier

Response Format - Success

{
  "id": 1234567,
  "quotes": [
    [
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 29.33,
        "annual_premium": 345.11,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": true,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "If you've seen the doctor and completed blood work in the last 18 months you won't need a medical exam. We'll review your medical records and application to confirm.",
          "required": "possibly"
        },
        "carrier": {
          "name": "Banner",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/lga_square.svg",
          "established_year": 1981,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": true,
          "id": 28
        },
        "product": {
          "name": "OPTerm 20",
          "id": 105,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 29.34,
        "annual_premium": 347.2,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "Corebridge Financial",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/FMAOLPFO.png",
          "established_year": 1960,
          "am_best_rating": "A",
          "approval_time": 20,
          "preferred": false,
          "id": 37
        },
        "product": {
          "name": "SAT - 20 Year",
          "id": 11,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 29.5,
        "annual_premium": 347.1,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "Protective",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/protective_square.svg",
          "established_year": 1978,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": false,
          "id": 59
        },
        "product": {
          "name": "Classic Choice Term 20",
          "id": 2612,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 29.69,
        "annual_premium": 349.29,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "If you've seen the doctor and completed blood work in the last 12 months you don't need a medical exam. We'll ask you some questions over the phone and review your medical records.",
          "required": "possibly"
        },
        "carrier": {
          "name": "Pacific Life - Lynchburg",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/pacific_life_square.svg",
          "established_year": 1868,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": true,
          "id": 9
        },
        "product": {
          "name": "Promise Term 20",
          "id": 2774,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 31,
        "annual_premium": 360.44,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "Lincoln National Life",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/lincoln-financial-logo-square.png",
          "established_year": 1905,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": true,
          "id": 18
        },
        "product": {
          "name": "Lincoln LifeElements 20yr Term",
          "id": 38,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 31.45,
        "annual_premium": 370,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "Based on your answers to underwriting questions, an exam may or may not be required.",
          "required": "possibly"
        },
        "carrier": {
          "name": "Transamerica",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/transamerica_square.svg",
          "established_year": 1961,
          "am_best_rating": "A",
          "approval_time": 20,
          "preferred": false,
          "id": 79
        },
        "product": {
          "name": "Trendsetter Super (20 Yrs)",
          "id": 531,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 33.37,
        "annual_premium": 400.43,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "Savings Bank Life Insurance",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/sbli_logo.png",
          "established_year": 1907,
          "am_best_rating": "A",
          "approval_time": 20,
          "preferred": false,
          "id": 3
        },
        "product": {
          "name": "Level Premium Term 20 (guar 20)",
          "id": 145,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 34.76,
        "annual_premium": 395,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "living_benefits_details": {
          "details": "You can accelerate your death benefit for qualifying terminal, chronic, and critical illness."
        },
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "Based on your answers to underwriting questions, an exam may or may not be required.",
          "required": "possibly"
        },
        "carrier": {
          "name": "North American",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/north_american_reduced_size_square.png",
          "established_year": 1886,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": false,
          "id": 72
        },
        "product": {
          "name": "ADDvantage 20 (guar 20)",
          "id": 550,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 35.12,
        "annual_premium": 408.58,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "Protective",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/protective_square.svg",
          "established_year": 1978,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": false,
          "id": 59
        },
        "product": {
          "name": "Custom Choice UL - 20 Year No Lapse",
          "id": 556,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 38.94,
        "annual_premium": 445,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "Based on your answers to underwriting questions, an exam may or may not be required.",
          "required": "possibly"
        },
        "carrier": {
          "name": "Prudential Financial",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/prudential_qa_logo.png",
          "established_year": 1873,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": true,
          "id": 82
        },
        "product": {
          "name": "Term Essential 20",
          "id": 665,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 40.22,
        "annual_premium": 465,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "John Hancock",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/john_hancock_scaled_avatar.png",
          "established_year": 1862,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": true,
          "id": 77
        },
        "product": {
          "name": "Protection Term 20",
          "id": 174,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 41.43,
        "annual_premium": 478.95,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "John Hancock",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/john_hancock_scaled_avatar.png",
          "established_year": 1862,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": true,
          "id": 77
        },
        "product": {
          "name": "Protection Term 20 with Vitality",
          "id": 1899,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 43.5,
        "annual_premium": 500,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "Based on your answers to underwriting questions, an exam may or may not be required.",
          "required": "possibly"
        },
        "carrier": {
          "name": "Assurity",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/assurity-life-insurance-company.png",
          "established_year": 1964,
          "am_best_rating": "A-",
          "approval_time": 20,
          "preferred": false,
          "id": 4
        },
        "product": {
          "name": "20 Year Term",
          "id": 219,
          "carrier_e_delivery": false
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 44.44,
        "annual_premium": 505,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "living_benefits_details": {
          "details": "You can accelerate your death benefit for qualifying terminal, chronic, and critical illness."
        },
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "Based on your answers to underwriting questions, an exam may or may not be required.",
          "required": "possibly"
        },
        "carrier": {
          "name": "Life Insurance Company of the Southwest",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/national-life-group-logo-vector.svg",
          "established_year": 1955,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": false,
          "id": 10
        },
        "product": {
          "name": "Term 20",
          "id": 697,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 53.32,
        "annual_premium": 620,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "living_benefits_details": {
          "details": "You can accelerate your death benefit for qualifying terminal, chronic, and critical illness."
        },
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "Based on your answers to underwriting questions, an exam may or may not be required.",
          "required": "possibly"
        },
        "carrier": {
          "name": "Transamerica",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/square_carrier_avatars/transamerica_square.svg",
          "established_year": 1961,
          "am_best_rating": "A",
          "approval_time": 20,
          "preferred": false,
          "id": 79
        },
        "product": {
          "name": "Trendsetter LB 20",
          "id": 441,
          "carrier_e_delivery": true
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      },
      {
        "face_amount": 1000000,
        "birthdate": "2001-01-01",
        "product_category": "20 Year Term",
        "premium": 61.69,
        "annual_premium": 705,
        "mode": 12,
        "state": "VA",
        "health": 5,
        "instant_decision": false,
        "validated_rating": "Super Preferred",
        "exam_details": {
          "text": "requires a complimentary exam. In a few steps you'll schedule your exam at a time and place convenient for you.",
          "required": true
        },
        "carrier": {
          "name": "Nationwide",
          "avatar_url": "https://d1usw6tyldpxhi.cloudfront.net/nationwide-logo-seo.png",
          "established_year": 1981,
          "am_best_rating": "A+",
          "approval_time": 20,
          "preferred": false,
          "id": 39
        },
        "product": {
          "name": "YourLife 20 Year Term",
          "id": 284,
          "carrier_e_delivery": false
        },
        "link_to_pdf": "http://www.example.com/api/v1/quotes/6kQ3.pdf",
        "link_to_share": "http://www.example.com/e/6kQ3",
        "link_to_sms": "http://www.example.com/api/v1/quotes/6kQ3/sms"
      }
    ]
  ]
}

The details entry is an array of per-requested quote response. This meaning that the array by index will tell you which quote requests by index had parameter errors as well as telling you which were sent correctly displaying the value "valid", otherwise it will contain an array of which parameters caused the error.

Response Format - Error

Error code 400 for malformed JSON

POST "https://app.back9ins.com/api/v1/quotes", params: "{face_amounts[]}", headers: { "Content-Type" => "application/json", "X-BACKNINE-AUTHENTICATION" => API_KEY }

"error": "Failed to parse parameters"

Error code 404 for missing API key

POST "https://app.back9ins.com/api/v1/quotes"

"errors": ["API key not provided"]

Error code 422 when params are missing

POST "https://app.back9ins.com/api/v1/quotes", headers: { "X-BACKNINE-AUTHENTICATION" => API_KEY }

"error": "Missing parameters (:quotes)"

Error code 422 when params are invalid

POST "https://app.back9ins.com/api/v1/quotes", params: { quotes: [{ hello: "world" }] }, headers: { "X-BACKNINE-AUTHENTICATION" => API_KEY }

"details": [{
   "birthdate": ["can't be blank"],
   "face_amounts": ["must include at least one"],
   "gender": ["can't be blank"],
   "mode": ["can't be blank"],
   "product_categories": ["must include at least one"],
   "state": ["can't be blank"]
}],
"error": "One or more of your parameters were invalid"

Sending the SMS

If you included the optional NPN, first_name, last_name, and phone_number, you'll receive link_to_sms in the response. You can use the link_to_sms to have a SMS sent to the customer with a link to the quote.

Send a POST request to the link_to_sms URL provided within the quotes request with your API key in the headers. POST "https://app.back9ins.com/api/v1/quotes/3kTMd/sms", headers: { "X-BACKNINE-AUTHENTICATION" => API_KEY }

Prefilling Quote & Apply

You can use the data from the quotes response to prefill Quote & Apply with your desired quote (potentially chosen by the user). For example, if you wanted the user to land on the quote step and see the same product that they choose from within your application, set step=quote and product_id.