Skip to main content

Create Disposition Record

Description

Send disposition information for a prospect received from the Bold Penguin Exchange. You must update dispostion information for each discrete coverage type associated with the prospect. New disposition records can be created for any add-on coverage.

A prospect can only have one dispostion record per coverage type. Create calls are idempotent and can be used to update disposition status for each coverage type after every interaction with the prospect.

Endpoint

Staging

https://api-staging.boldpenguin.com/leads/<lead_id>/lead_attributes

Production

https://api.boldpenguin.com/leads/<lead_id>/lead_attributes

Authentication

You authenticate to the dispositioning endpoints using a static bearer token sent via an HTTP header.

Your Account Manager will provide you with a unique static token per environment.

Authorization: Bearer <static_token>

Methods

POST

Request Syntax

POST /leads/<lead_id>/lead_attributes

Request Payload

{
"carrier": "<string>",
"coverage_type_id": <integer enum>,
"history": "<string>",
"premium": <decimal>,
"quoted_at": "<date string>",
"rate": <decimal>,
"sold_at": "<date string>",
"status": "<string enum>"
}

Request Parameters

URL Parameters

  • lead_id
    • Record locator used to retrieve disposition records for this prospect.
    • Type: String
    • Required: Yes
    • NOTE: This is part of the prospect record you receive from the Exchange.

JSON Parameters

  • carrier
    • The name of the carrier for the policy quoted or sold
    • Type: String (maximum length: 255)
    • Required: if status=Sold
  • coverage_type_id
    • The integer ID of the coverage type for the policy
    • Type: Integer Enum
    • Required: Yes
    • Note: There should be one disposition record per coverage_type_id.
  • history
    • A field for text notes, history of prospect
    • Type: String (minimum length: 25)
    • Required: if status=Sold
  • premium
    • The yearly premium for the policy quoted or sold
    • Type: Decimal (greater than 0)
    • Required: if status=Sold
  • quoted_at
    • Date quoted
    • Type: Date (YYYY-MM-DD)
    • Required: No
    • Note: Use only with status=Quote Presented
  • rate
    • The commission rate on the policy
    • Type: Decimal (0 - 25)
    • Required: if status=Sold
  • sold_at
    • Date sold
    • Type: Date (YYYY-MM-DD)
    • Required: No
    • Note: Use only with status=Sold
  • status
    • Current status of the prospect
    • Enum (see table below)
    • Required: Yes
StatusDescription
ActiveDefault
Contact MadeRecord received
Sent App to ClientWaiting on carrier
Quote PresentedCustomer received quote
SoldPolicy sold
Not SoldCustomer quoted, but policy not sold
IneligibleUnable to present quote

Each disposition is tied to a specific coverage type id. As you create dispositions, make sure it's for the correct coverage type. Each coverage type for a given prospect can only have one disposition record.

Response Syntax

  {
"carrier": <string>,
"coverage_type_id": <integer enum>,
"coverage_types": [],
"external_id": <integer>,
"history": <string>,
"id": <integer>,
"lead_id": <integer>,
"premium": <decimal>,
"quoted_at": "<date string>",
"rate": <decimal>,
"sold_at": "<date string>",
"status": "<string enum>"
}

Response Elements

Created dispostion record

  • carrier
    • The name of the carrier for the policy quoted or sold
    • Type: String (maximum length: 255)
    • Required: if status=Sold
  • coverage_type_id
    • The integer ID of the coverage type for the policy
    • Type: Integer Enum
    • Required: Yes
    • Note: There should be one disposition record per coverage_type_id.
  • coverage_types
    • Unused
    • Empty array
    • Required: No
  • external_id
    • Unused
    • Integer
    • Required: No
  • history
    • A field for text notes, history of prospect
    • Type: String (minimum length: 25)
    • Required: if status=Sold
  • id
    • Unique ID for this disposition record
    • Type: Integer
    • Required: Yes
  • lead_id
    • Unique ID for the lead associated with this disposition record
    • Type: Integer
    • Required: Yes
  • premium
    • The yearly premium for the policy quoted or sold
    • Type: Decimal (greater than 0)
    • Required: if status=Sold
  • quoted_at
    • Date quoted
    • Type: Date (YYYY-MM-DD)
    • Required: No
  • rate
    • The commission rate on the policy
    • Type: Decimal (0 - 25)
    • Required: if status=Sold
  • sold_at
    • Date sold
    • Type: Date (YYYY-MM-DD)
    • Required: No
  • status
    • Current status of the prospect
    • Enum (see table below)
    • Required: Yes
StatusDescription
ActiveDefault
Contact MadeRecord received
Sent App to ClientWaiting on carrier
Quote PresentedCustomer received quote
SoldPolicy sold
Not SoldCustomer quoted, but policy not sold
IneligibleUnable to present quote

Note: There can only be one disposition record per coverage_type_id.

Status Codes

  • 201 Created
  • 401 Unauthorized: The necessary authentication credentials are not present in the request or are incorrect.
  • 404 Could not find prospect (verify lead_id)

Examples

Example Requests

Quoted disposition

$ cat quoted_data.json
{
"carrier": "Insurance Carrier",
"coverage_type_id": 5,
"history": "This prospect was quoted to Insurance Carrier but wanted time to think about it."
"premium": "100.00",
"quoted_at": "2019-01-16"
"status": "Quote Presented",
}
$ curl -v -X POST \
--header "Authorization: Bearer <access_token>"
--header "Content-Type: application/json" \
-d @quoted_data.json \
https://api-staging.boldpenguin.com/leads/<lead_id>/lead_attributes

Sold disposition

$ cat sold_data.json
{
"carrier": "Insurance Carrier",
"coverage_type_id": 5,
"history": "This prospect was sold to Insurance Carrier"
"premium": "100.00",
"rate": "5.0",
"sold_at": "2019-01-18"
"status": "Sold",
}
$ curl -v -X POST \
--header "Authorization: Bearer <access_token>"
--header "Content-Type: application/json" \
-d @sold_data.json \
https://api-staging.boldpenguin.com/leads/<lead_id>/lead_attributes

Example Response

{
"id": 4,
"status": "Sold",
"premium": "100.0",
"rate": "5.0",
"history": "This prospect was sold to Insurance Carrier",
"carrier": "Insurance Carrier",
"lead_id":7,
"external_id": null,
"quoted_at": "2019-04-10",
"sold_at": "2019-04-10",
"coverage_type_id": 5,
"coverage_types":[]
}