Create Disposition Record (inbound)

Description

Create a disposition record for a specific coverage type of a prospect. Disposition records are typically auto-generated at match time, but can be updated using idempotent create calls after every interaction with the prospect. New records can be created for any add-on coverage.

Endpoint

Staging

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

Production

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

Authentication

The inbound Receive Side API use bearer authentication via an HTTP header.

Your Account Manager will provide you with a unique bearer token used for all Receive Side API.

Methods

POST

Request Syntax

{
    "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: Retrieved from the initial POST of the prospect data into your system.

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
Status Description
Active Default
Contact Made Record received
Sent App to Client Waiting on carrier
Quote Presented Customer received quote
Sold Policy sold
Not Sold Customer quoted, but policy not sold
Ineligible Unable 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
Status Description
Active Default
Contact Made Record received
Sent App to Client Waiting on carrier
Quote Presented Customer received quote
Sold Policy sold
Not Sold Customer quoted, but policy not sold
Ineligible Unable to present quote

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

Status Codes

  • 200 Success
  • 401 Unauthorized (verify Authorization header)
  • 404 Could not find prospect (verify lead_id)
  • 500 Internal server error

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_url>/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_url>/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":[]
}

results matching ""

    No results matching ""