curl https://portal.bridgelinepf.com/api/v1/quotes \
-H "Authorization: Bearer $BRIDGELINE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"broker_email": "maria@lonestarrisk.example",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"insured": {
"name": "Lone Star Fabrication LLC",
"fein": "74-0000000",
"address": {
"line1": "1200 Industrial Blvd",
"city": "Houston",
"state": "TX",
"postal_code": "77002"
}
},
"policies": [
{
"premium": "46100.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "2235.85",
"earned": false
},
{"description": "Stamping fee (0.075%)", "amount": "34.58", "earned": false},
{"description": "Policy fee", "amount": "250.00"}
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Scottsdale Insurance Company", "naic_code": "41297"},
"coverages": [
{"type": "general_liability"},
{
"type": "commercial_property",
"description": "Commercial Property (Ex-Wind)"
}
],
"auditable": false,
"document_type": "binder",
"policy_number": "CPS7712045",
"metadata": {"ams_policy_id": "POL-889213"}
},
{
"premium": "13000.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "630.50",
"earned": false
}
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Blue Mesa Specialty Insurance Co"},
"coverages": [{"type": "windstorm", "description": "Named Storm"}],
"document_type": "quote",
"metadata": {"ams_policy_id": "POL-889214"}
}
]
}'
const res = await fetch('https://portal.bridgelinepf.com/api/v1/quotes', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.BRIDGELINE_API_KEY}`,
'Content-Type': 'application/json',
'Idempotency-Key': crypto.randomUUID(),
},
body: JSON.stringify({
broker_email: 'maria@lonestarrisk.example',
client_reference_id: 'EPIC-PROP-2026-0412',
metadata: { ams_account_id: 'ACCT-10442' },
insured: {
name: 'Lone Star Fabrication LLC',
fein: '74-0000000',
address: { line1: '1200 Industrial Blvd', city: 'Houston', state: 'TX', postal_code: '77002' },
},
policies: [
{
premium: '46100.00',
taxes_and_fees: [
{ description: 'Surplus lines tax (4.85%)', amount: '2235.85', earned: false },
{ description: 'Stamping fee (0.075%)', amount: '34.58', earned: false },
{ description: 'Policy fee', amount: '250.00' },
],
minimum_earned: { rate: 0.25 },
effective_date: '2026-10-15',
expiration_date: '2027-10-15',
carrier: { name: 'Scottsdale Insurance Company', naic_code: '41297' },
coverages: [
{ type: 'general_liability' },
{ type: 'commercial_property', description: 'Commercial Property (Ex-Wind)' },
],
auditable: false,
document_type: 'binder',
policy_number: 'CPS7712045',
metadata: { ams_policy_id: 'POL-889213' },
},
{
premium: '13000.00',
taxes_and_fees: [{ description: 'Surplus lines tax (4.85%)', amount: '630.50', earned: false }],
minimum_earned: { rate: 0.25 },
effective_date: '2026-10-15',
expiration_date: '2027-10-15',
carrier: { name: 'Blue Mesa Specialty Insurance Co' },
coverages: [{ type: 'windstorm', description: 'Named Storm' }],
document_type: 'quote',
metadata: { ams_policy_id: 'POL-889214' },
},
],
}),
})
const quote = await res.json()
import os
import uuid
import requests
res = requests.post(
"https://portal.bridgelinepf.com/api/v1/quotes",
headers={
"Authorization": f"Bearer {os.environ['BRIDGELINE_API_KEY']}",
"Idempotency-Key": str(uuid.uuid4()),
},
json={
"broker_email": "maria@lonestarrisk.example",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"insured": {
"name": "Lone Star Fabrication LLC",
"fein": "74-0000000",
"address": {
"line1": "1200 Industrial Blvd",
"city": "Houston",
"state": "TX",
"postal_code": "77002",
},
},
"policies": [
{
"premium": "46100.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "2235.85",
"earned": False,
},
{
"description": "Stamping fee (0.075%)",
"amount": "34.58",
"earned": False,
},
{"description": "Policy fee", "amount": "250.00"},
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Scottsdale Insurance Company", "naic_code": "41297"},
"coverages": [
{"type": "general_liability"},
{
"type": "commercial_property",
"description": "Commercial Property (Ex-Wind)",
},
],
"auditable": False,
"document_type": "binder",
"policy_number": "CPS7712045",
"metadata": {"ams_policy_id": "POL-889213"},
},
{
"premium": "13000.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "630.50",
"earned": False,
},
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Blue Mesa Specialty Insurance Co"},
"coverages": [{"type": "windstorm", "description": "Named Storm"}],
"document_type": "quote",
"metadata": {"ams_policy_id": "POL-889214"},
},
],
},
timeout=30,
)
quote = res.json()
{
"id": "qte_2lo4LFk5rf8toDFJM99oES",
"object": "quote",
"livemode": true,
"status": "active",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"broker": {"email": "maria@lonestarrisk.example"},
"created_at": "2026-10-04T15:04:05Z",
"expires_at": "2026-11-03T15:04:05Z",
"hosted_url": "https://portal.bridgelinepf.com/q/p98_xZUO2zaltiX49vC59BgOE1EUoRZSpIGtWjFUs0M",
"selected_option_id": null,
"interest": null,
"totals": {
"premium": "59100.00",
"taxes_and_fees": "3150.93",
"total": "62250.93",
"weighted_minimum_earned_rate": 0.25,
"financing_start_date": "2026-10-15"
},
"policies": [
{
"id": "pol_4Hq8Zt2m",
"total": "48620.43",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Scottsdale Insurance Company",
"am_best": {"rating": "A+", "source": "am_best"}
},
"metadata": {"ams_policy_id": "POL-889213"}
},
{
"id": "pol_9Rk3Wv7c",
"total": "13630.50",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Blue Mesa Specialty Insurance Co",
"am_best": {"rating": "A-", "source": "assumed"}
},
"metadata": {"ams_policy_id": "POL-889214"}
}
],
"eligibility": {
"status": "eligible",
"checks": [
{"code": "INPUT_VALID", "passed": true},
{"code": "INSURED_STATE", "passed": true, "limit": "TX", "actual": "TX"},
{"code": "PREMIUM_MIN", "passed": true, "limit": "4500.00", "actual": "62250.93"},
{"code": "PREMIUM_MAX", "passed": true, "limit": "175000.00", "actual": "62250.93"},
{"code": "AM_BEST_MIN", "passed": true, "limit": "A-", "basis": "partially_assumed"},
{"code": "ISSUER", "passed": true},
{"code": "COVERAGE", "passed": true},
{"code": "POLICY_BACKDATE", "passed": true, "limit": "30 days"},
{"code": "DATE_UNIFORMITY", "passed": true},
{"code": "POLICY_TERM", "passed": true, "limit": "3 months", "actual": "12 months"},
{"code": "MINIMUM_EARNED_MAX", "passed": true, "limit": "90%", "actual": "25.3%"}
],
"reasons": []
},
"assumptions": [
{
"code": "EARNED_ASSUMED",
"param": "policies[0].taxes_and_fees[2].earned",
"message": "Not marked; treated as earned (not refunded on cancellation)."
},
{
"code": "AM_BEST_UNVERIFIED",
"param": "policies[1].carrier",
"message": "We couldn't verify this carrier's AM Best rating; assumed A-. Confirm before binding."
},
{
"code": "AUDITABLE_ASSUMED",
"param": "policies[1].auditable",
"message": "Not provided; assumed auditable (the conservative choice)."
}
],
"warnings": [
{
"code": "VERIFY_MINIMUM_EARNED",
"param": "policies[1].minimum_earned",
"message": "Windstorm policies are often fully earned or carry a hurricane-season MEP. Confirm the MEP before binding."
}
],
"binding_readiness": {
"ready": false,
"issues": [
{
"code": "QUOTE_ONLY_DOCUMENT",
"param": "policies[1].document_type",
"message": "This is still a quote; binding needs the binder or policy, or an attestation."
},
{
"code": "AM_BEST_UNRESOLVED",
"param": "policies[1].carrier",
"message": "The carrier's AM Best rating must be confirmed before binding."
}
]
},
"recommended_option_id": "opt_25_10",
"options": [
{
"id": "opt_25_10",
"down_payment_rate": 0.25,
"term_months": 10,
"apr": 0.1185,
"down_payment": "15562.73",
"amount_financed": "46688.20",
"monthly_payment": "4926.21",
"finance_charge": "2573.90",
"total_of_payments": "49262.10",
"total_cost": "64824.83",
"spread_clamped": false
}
// ...29 more options
]
}
{
"id": "qte_2lo4LFk5rf8toDFJVWUIca",
"object": "quote",
"livemode": true,
"status": "active",
"client_reference_id": null,
"metadata": {},
"broker": {"email": "maria@lonestarrisk.example"},
"created_at": "2026-10-04T15:04:05Z",
"expires_at": "2026-11-03T15:04:05Z",
"hosted_url": "https://portal.bridgelinepf.com/q/p98_xZUO2zaltiX49vC59BgOE1EUoRZSpIGtWjFUs0M",
"selected_option_id": null,
"interest": null,
"totals": {
"premium": "240000.00",
"taxes_and_fees": "0.00",
"total": "240000.00",
"weighted_minimum_earned_rate": 0.25,
"financing_start_date": "2026-10-15"
},
"policies": [
{
"id": "pol_4Hq8Zt2m",
"total": "240000.00",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Scottsdale Insurance Company",
"am_best": {"rating": "A+", "source": "am_best"}
},
"metadata": {}
}
],
"eligibility": {
"status": "ineligible",
"checks": [
{"code": "INPUT_VALID", "passed": true},
{"code": "INSURED_STATE", "passed": true, "limit": "TX", "actual": "TX"},
{"code": "PREMIUM_MIN", "passed": true, "limit": "4500.00", "actual": "240000.00"},
{"code": "PREMIUM_MAX", "passed": false, "limit": "175000.00", "actual": "240000.00"},
{"code": "AM_BEST_MIN", "passed": true, "limit": "A-"},
{"code": "ISSUER", "passed": true},
{"code": "COVERAGE", "passed": true},
{"code": "POLICY_BACKDATE", "passed": true, "limit": "30 days"},
{"code": "DATE_UNIFORMITY", "passed": true},
{"code": "POLICY_TERM", "passed": true, "limit": "3 months", "actual": "12 months"},
{"code": "MINIMUM_EARNED_MAX", "passed": true, "limit": "90%", "actual": "25%"}
],
"reasons": [
{
"code": "PREMIUM_TOO_HIGH",
"param": "policies",
"message": "The total to finance ($240000.00) is above the $175000.00 maximum. Contact Bridgeline about larger deals."
}
]
},
"assumptions": [
{
"code": "TAXES_AND_FEES_NOT_PROVIDED",
"param": "policies[0].taxes_and_fees",
"message": "No taxes or fees provided; the amount financed is the premium only."
},
{
"code": "AUDITABLE_ASSUMED",
"param": "policies[0].auditable",
"message": "Not provided; assumed auditable (the conservative choice)."
}
],
"warnings": [],
"binding_readiness": {
"ready": false,
"issues": [
{
"code": "DOCUMENT_TYPE_REQUIRED",
"param": "policies[0].document_type",
"message": "Say whether this is a quote, binder or policy."
},
{
"code": "MISSING_POLICY_NUMBER",
"param": "policies[0].policy_number",
"message": "A real policy number is required before binding."
},
{
"code": "INSURED_ADDRESS_INCOMPLETE",
"param": "insured.address",
"message": "The insured's full mailing address is required before binding (statutory notices are mailed to it)."
}
]
},
"recommended_option_id": null,
"options": []
}
{
"error": {
"type": "invalid_request",
"code": "VALIDATION_FAILED",
"message": "Invalid request body: policies[0].premium: Send money as a decimal string, e.g. \"46100.00\", not a JSON number. (and 1 more; see details)",
"param": "policies[0].premium",
"details": [
{
"code": "INVALID_TYPE",
"param": "policies[0].premium",
"message": "Send money as a decimal string, e.g. \"46100.00\", not a JSON number."
},
{
"code": "UNKNOWN_FIELD",
"param": "policies[0].polcy_number",
"message": "\"polcy_number\" is not a field here. Did you mean \"policy_number\"?"
}
],
"doc_url": "https://docs.bridgelinepf.com/errors#VALIDATION_FAILED",
"request_id": "req_8fJ2kQ9xLm4TzW7nB3cY5pDv"
}
}
Create a quote
Prices one or more policies financed together as one loan and returns every down payment × term option we can offer. A deal we cannot finance still returns 201, with eligibility.status “ineligible”, its reasons and no options; 422 is only for malformed input. hosted_url is returned only here.
curl https://portal.bridgelinepf.com/api/v1/quotes \
-H "Authorization: Bearer $BRIDGELINE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"broker_email": "maria@lonestarrisk.example",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"insured": {
"name": "Lone Star Fabrication LLC",
"fein": "74-0000000",
"address": {
"line1": "1200 Industrial Blvd",
"city": "Houston",
"state": "TX",
"postal_code": "77002"
}
},
"policies": [
{
"premium": "46100.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "2235.85",
"earned": false
},
{"description": "Stamping fee (0.075%)", "amount": "34.58", "earned": false},
{"description": "Policy fee", "amount": "250.00"}
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Scottsdale Insurance Company", "naic_code": "41297"},
"coverages": [
{"type": "general_liability"},
{
"type": "commercial_property",
"description": "Commercial Property (Ex-Wind)"
}
],
"auditable": false,
"document_type": "binder",
"policy_number": "CPS7712045",
"metadata": {"ams_policy_id": "POL-889213"}
},
{
"premium": "13000.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "630.50",
"earned": false
}
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Blue Mesa Specialty Insurance Co"},
"coverages": [{"type": "windstorm", "description": "Named Storm"}],
"document_type": "quote",
"metadata": {"ams_policy_id": "POL-889214"}
}
]
}'
const res = await fetch('https://portal.bridgelinepf.com/api/v1/quotes', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.BRIDGELINE_API_KEY}`,
'Content-Type': 'application/json',
'Idempotency-Key': crypto.randomUUID(),
},
body: JSON.stringify({
broker_email: 'maria@lonestarrisk.example',
client_reference_id: 'EPIC-PROP-2026-0412',
metadata: { ams_account_id: 'ACCT-10442' },
insured: {
name: 'Lone Star Fabrication LLC',
fein: '74-0000000',
address: { line1: '1200 Industrial Blvd', city: 'Houston', state: 'TX', postal_code: '77002' },
},
policies: [
{
premium: '46100.00',
taxes_and_fees: [
{ description: 'Surplus lines tax (4.85%)', amount: '2235.85', earned: false },
{ description: 'Stamping fee (0.075%)', amount: '34.58', earned: false },
{ description: 'Policy fee', amount: '250.00' },
],
minimum_earned: { rate: 0.25 },
effective_date: '2026-10-15',
expiration_date: '2027-10-15',
carrier: { name: 'Scottsdale Insurance Company', naic_code: '41297' },
coverages: [
{ type: 'general_liability' },
{ type: 'commercial_property', description: 'Commercial Property (Ex-Wind)' },
],
auditable: false,
document_type: 'binder',
policy_number: 'CPS7712045',
metadata: { ams_policy_id: 'POL-889213' },
},
{
premium: '13000.00',
taxes_and_fees: [{ description: 'Surplus lines tax (4.85%)', amount: '630.50', earned: false }],
minimum_earned: { rate: 0.25 },
effective_date: '2026-10-15',
expiration_date: '2027-10-15',
carrier: { name: 'Blue Mesa Specialty Insurance Co' },
coverages: [{ type: 'windstorm', description: 'Named Storm' }],
document_type: 'quote',
metadata: { ams_policy_id: 'POL-889214' },
},
],
}),
})
const quote = await res.json()
import os
import uuid
import requests
res = requests.post(
"https://portal.bridgelinepf.com/api/v1/quotes",
headers={
"Authorization": f"Bearer {os.environ['BRIDGELINE_API_KEY']}",
"Idempotency-Key": str(uuid.uuid4()),
},
json={
"broker_email": "maria@lonestarrisk.example",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"insured": {
"name": "Lone Star Fabrication LLC",
"fein": "74-0000000",
"address": {
"line1": "1200 Industrial Blvd",
"city": "Houston",
"state": "TX",
"postal_code": "77002",
},
},
"policies": [
{
"premium": "46100.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "2235.85",
"earned": False,
},
{
"description": "Stamping fee (0.075%)",
"amount": "34.58",
"earned": False,
},
{"description": "Policy fee", "amount": "250.00"},
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Scottsdale Insurance Company", "naic_code": "41297"},
"coverages": [
{"type": "general_liability"},
{
"type": "commercial_property",
"description": "Commercial Property (Ex-Wind)",
},
],
"auditable": False,
"document_type": "binder",
"policy_number": "CPS7712045",
"metadata": {"ams_policy_id": "POL-889213"},
},
{
"premium": "13000.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "630.50",
"earned": False,
},
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Blue Mesa Specialty Insurance Co"},
"coverages": [{"type": "windstorm", "description": "Named Storm"}],
"document_type": "quote",
"metadata": {"ams_policy_id": "POL-889214"},
},
],
},
timeout=30,
)
quote = res.json()
{
"id": "qte_2lo4LFk5rf8toDFJM99oES",
"object": "quote",
"livemode": true,
"status": "active",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"broker": {"email": "maria@lonestarrisk.example"},
"created_at": "2026-10-04T15:04:05Z",
"expires_at": "2026-11-03T15:04:05Z",
"hosted_url": "https://portal.bridgelinepf.com/q/p98_xZUO2zaltiX49vC59BgOE1EUoRZSpIGtWjFUs0M",
"selected_option_id": null,
"interest": null,
"totals": {
"premium": "59100.00",
"taxes_and_fees": "3150.93",
"total": "62250.93",
"weighted_minimum_earned_rate": 0.25,
"financing_start_date": "2026-10-15"
},
"policies": [
{
"id": "pol_4Hq8Zt2m",
"total": "48620.43",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Scottsdale Insurance Company",
"am_best": {"rating": "A+", "source": "am_best"}
},
"metadata": {"ams_policy_id": "POL-889213"}
},
{
"id": "pol_9Rk3Wv7c",
"total": "13630.50",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Blue Mesa Specialty Insurance Co",
"am_best": {"rating": "A-", "source": "assumed"}
},
"metadata": {"ams_policy_id": "POL-889214"}
}
],
"eligibility": {
"status": "eligible",
"checks": [
{"code": "INPUT_VALID", "passed": true},
{"code": "INSURED_STATE", "passed": true, "limit": "TX", "actual": "TX"},
{"code": "PREMIUM_MIN", "passed": true, "limit": "4500.00", "actual": "62250.93"},
{"code": "PREMIUM_MAX", "passed": true, "limit": "175000.00", "actual": "62250.93"},
{"code": "AM_BEST_MIN", "passed": true, "limit": "A-", "basis": "partially_assumed"},
{"code": "ISSUER", "passed": true},
{"code": "COVERAGE", "passed": true},
{"code": "POLICY_BACKDATE", "passed": true, "limit": "30 days"},
{"code": "DATE_UNIFORMITY", "passed": true},
{"code": "POLICY_TERM", "passed": true, "limit": "3 months", "actual": "12 months"},
{"code": "MINIMUM_EARNED_MAX", "passed": true, "limit": "90%", "actual": "25.3%"}
],
"reasons": []
},
"assumptions": [
{
"code": "EARNED_ASSUMED",
"param": "policies[0].taxes_and_fees[2].earned",
"message": "Not marked; treated as earned (not refunded on cancellation)."
},
{
"code": "AM_BEST_UNVERIFIED",
"param": "policies[1].carrier",
"message": "We couldn't verify this carrier's AM Best rating; assumed A-. Confirm before binding."
},
{
"code": "AUDITABLE_ASSUMED",
"param": "policies[1].auditable",
"message": "Not provided; assumed auditable (the conservative choice)."
}
],
"warnings": [
{
"code": "VERIFY_MINIMUM_EARNED",
"param": "policies[1].minimum_earned",
"message": "Windstorm policies are often fully earned or carry a hurricane-season MEP. Confirm the MEP before binding."
}
],
"binding_readiness": {
"ready": false,
"issues": [
{
"code": "QUOTE_ONLY_DOCUMENT",
"param": "policies[1].document_type",
"message": "This is still a quote; binding needs the binder or policy, or an attestation."
},
{
"code": "AM_BEST_UNRESOLVED",
"param": "policies[1].carrier",
"message": "The carrier's AM Best rating must be confirmed before binding."
}
]
},
"recommended_option_id": "opt_25_10",
"options": [
{
"id": "opt_25_10",
"down_payment_rate": 0.25,
"term_months": 10,
"apr": 0.1185,
"down_payment": "15562.73",
"amount_financed": "46688.20",
"monthly_payment": "4926.21",
"finance_charge": "2573.90",
"total_of_payments": "49262.10",
"total_cost": "64824.83",
"spread_clamped": false
}
// ...29 more options
]
}
{
"id": "qte_2lo4LFk5rf8toDFJVWUIca",
"object": "quote",
"livemode": true,
"status": "active",
"client_reference_id": null,
"metadata": {},
"broker": {"email": "maria@lonestarrisk.example"},
"created_at": "2026-10-04T15:04:05Z",
"expires_at": "2026-11-03T15:04:05Z",
"hosted_url": "https://portal.bridgelinepf.com/q/p98_xZUO2zaltiX49vC59BgOE1EUoRZSpIGtWjFUs0M",
"selected_option_id": null,
"interest": null,
"totals": {
"premium": "240000.00",
"taxes_and_fees": "0.00",
"total": "240000.00",
"weighted_minimum_earned_rate": 0.25,
"financing_start_date": "2026-10-15"
},
"policies": [
{
"id": "pol_4Hq8Zt2m",
"total": "240000.00",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Scottsdale Insurance Company",
"am_best": {"rating": "A+", "source": "am_best"}
},
"metadata": {}
}
],
"eligibility": {
"status": "ineligible",
"checks": [
{"code": "INPUT_VALID", "passed": true},
{"code": "INSURED_STATE", "passed": true, "limit": "TX", "actual": "TX"},
{"code": "PREMIUM_MIN", "passed": true, "limit": "4500.00", "actual": "240000.00"},
{"code": "PREMIUM_MAX", "passed": false, "limit": "175000.00", "actual": "240000.00"},
{"code": "AM_BEST_MIN", "passed": true, "limit": "A-"},
{"code": "ISSUER", "passed": true},
{"code": "COVERAGE", "passed": true},
{"code": "POLICY_BACKDATE", "passed": true, "limit": "30 days"},
{"code": "DATE_UNIFORMITY", "passed": true},
{"code": "POLICY_TERM", "passed": true, "limit": "3 months", "actual": "12 months"},
{"code": "MINIMUM_EARNED_MAX", "passed": true, "limit": "90%", "actual": "25%"}
],
"reasons": [
{
"code": "PREMIUM_TOO_HIGH",
"param": "policies",
"message": "The total to finance ($240000.00) is above the $175000.00 maximum. Contact Bridgeline about larger deals."
}
]
},
"assumptions": [
{
"code": "TAXES_AND_FEES_NOT_PROVIDED",
"param": "policies[0].taxes_and_fees",
"message": "No taxes or fees provided; the amount financed is the premium only."
},
{
"code": "AUDITABLE_ASSUMED",
"param": "policies[0].auditable",
"message": "Not provided; assumed auditable (the conservative choice)."
}
],
"warnings": [],
"binding_readiness": {
"ready": false,
"issues": [
{
"code": "DOCUMENT_TYPE_REQUIRED",
"param": "policies[0].document_type",
"message": "Say whether this is a quote, binder or policy."
},
{
"code": "MISSING_POLICY_NUMBER",
"param": "policies[0].policy_number",
"message": "A real policy number is required before binding."
},
{
"code": "INSURED_ADDRESS_INCOMPLETE",
"param": "insured.address",
"message": "The insured's full mailing address is required before binding (statutory notices are mailed to it)."
}
]
},
"recommended_option_id": null,
"options": []
}
{
"error": {
"type": "invalid_request",
"code": "VALIDATION_FAILED",
"message": "Invalid request body: policies[0].premium: Send money as a decimal string, e.g. \"46100.00\", not a JSON number. (and 1 more; see details)",
"param": "policies[0].premium",
"details": [
{
"code": "INVALID_TYPE",
"param": "policies[0].premium",
"message": "Send money as a decimal string, e.g. \"46100.00\", not a JSON number."
},
{
"code": "UNKNOWN_FIELD",
"param": "policies[0].polcy_number",
"message": "\"polcy_number\" is not a field here. Did you mean \"policy_number\"?"
}
],
"doc_url": "https://docs.bridgelinepf.com/errors#VALIDATION_FAILED",
"request_id": "req_8fJ2kQ9xLm4TzW7nB3cY5pDv"
}
}
201: eligibility.status is ineligible, eligibility.reasons says why, and options is empty. A 422 means only that the request was malformed, and it lists every problem at once in details.
hosted_urlis returned only in this response (and an idempotent replay of it). Store it, or get a new one later.- Quotes expire 30 days after they’re created. Each call counts toward your daily quote limits.
- Guides: quote in one call, choosing an option in code, coverage types.
curl https://portal.bridgelinepf.com/api/v1/quotes \
-H "Authorization: Bearer $BRIDGELINE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"broker_email": "maria@lonestarrisk.example",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"insured": {
"name": "Lone Star Fabrication LLC",
"fein": "74-0000000",
"address": {
"line1": "1200 Industrial Blvd",
"city": "Houston",
"state": "TX",
"postal_code": "77002"
}
},
"policies": [
{
"premium": "46100.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "2235.85",
"earned": false
},
{"description": "Stamping fee (0.075%)", "amount": "34.58", "earned": false},
{"description": "Policy fee", "amount": "250.00"}
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Scottsdale Insurance Company", "naic_code": "41297"},
"coverages": [
{"type": "general_liability"},
{
"type": "commercial_property",
"description": "Commercial Property (Ex-Wind)"
}
],
"auditable": false,
"document_type": "binder",
"policy_number": "CPS7712045",
"metadata": {"ams_policy_id": "POL-889213"}
},
{
"premium": "13000.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "630.50",
"earned": false
}
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Blue Mesa Specialty Insurance Co"},
"coverages": [{"type": "windstorm", "description": "Named Storm"}],
"document_type": "quote",
"metadata": {"ams_policy_id": "POL-889214"}
}
]
}'
const res = await fetch('https://portal.bridgelinepf.com/api/v1/quotes', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.BRIDGELINE_API_KEY}`,
'Content-Type': 'application/json',
'Idempotency-Key': crypto.randomUUID(),
},
body: JSON.stringify({
broker_email: 'maria@lonestarrisk.example',
client_reference_id: 'EPIC-PROP-2026-0412',
metadata: { ams_account_id: 'ACCT-10442' },
insured: {
name: 'Lone Star Fabrication LLC',
fein: '74-0000000',
address: { line1: '1200 Industrial Blvd', city: 'Houston', state: 'TX', postal_code: '77002' },
},
policies: [
{
premium: '46100.00',
taxes_and_fees: [
{ description: 'Surplus lines tax (4.85%)', amount: '2235.85', earned: false },
{ description: 'Stamping fee (0.075%)', amount: '34.58', earned: false },
{ description: 'Policy fee', amount: '250.00' },
],
minimum_earned: { rate: 0.25 },
effective_date: '2026-10-15',
expiration_date: '2027-10-15',
carrier: { name: 'Scottsdale Insurance Company', naic_code: '41297' },
coverages: [
{ type: 'general_liability' },
{ type: 'commercial_property', description: 'Commercial Property (Ex-Wind)' },
],
auditable: false,
document_type: 'binder',
policy_number: 'CPS7712045',
metadata: { ams_policy_id: 'POL-889213' },
},
{
premium: '13000.00',
taxes_and_fees: [{ description: 'Surplus lines tax (4.85%)', amount: '630.50', earned: false }],
minimum_earned: { rate: 0.25 },
effective_date: '2026-10-15',
expiration_date: '2027-10-15',
carrier: { name: 'Blue Mesa Specialty Insurance Co' },
coverages: [{ type: 'windstorm', description: 'Named Storm' }],
document_type: 'quote',
metadata: { ams_policy_id: 'POL-889214' },
},
],
}),
})
const quote = await res.json()
import os
import uuid
import requests
res = requests.post(
"https://portal.bridgelinepf.com/api/v1/quotes",
headers={
"Authorization": f"Bearer {os.environ['BRIDGELINE_API_KEY']}",
"Idempotency-Key": str(uuid.uuid4()),
},
json={
"broker_email": "maria@lonestarrisk.example",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"insured": {
"name": "Lone Star Fabrication LLC",
"fein": "74-0000000",
"address": {
"line1": "1200 Industrial Blvd",
"city": "Houston",
"state": "TX",
"postal_code": "77002",
},
},
"policies": [
{
"premium": "46100.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "2235.85",
"earned": False,
},
{
"description": "Stamping fee (0.075%)",
"amount": "34.58",
"earned": False,
},
{"description": "Policy fee", "amount": "250.00"},
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Scottsdale Insurance Company", "naic_code": "41297"},
"coverages": [
{"type": "general_liability"},
{
"type": "commercial_property",
"description": "Commercial Property (Ex-Wind)",
},
],
"auditable": False,
"document_type": "binder",
"policy_number": "CPS7712045",
"metadata": {"ams_policy_id": "POL-889213"},
},
{
"premium": "13000.00",
"taxes_and_fees": [
{
"description": "Surplus lines tax (4.85%)",
"amount": "630.50",
"earned": False,
},
],
"minimum_earned": {"rate": 0.25},
"effective_date": "2026-10-15",
"expiration_date": "2027-10-15",
"carrier": {"name": "Blue Mesa Specialty Insurance Co"},
"coverages": [{"type": "windstorm", "description": "Named Storm"}],
"document_type": "quote",
"metadata": {"ams_policy_id": "POL-889214"},
},
],
},
timeout=30,
)
quote = res.json()
{
"id": "qte_2lo4LFk5rf8toDFJM99oES",
"object": "quote",
"livemode": true,
"status": "active",
"client_reference_id": "EPIC-PROP-2026-0412",
"metadata": {"ams_account_id": "ACCT-10442"},
"broker": {"email": "maria@lonestarrisk.example"},
"created_at": "2026-10-04T15:04:05Z",
"expires_at": "2026-11-03T15:04:05Z",
"hosted_url": "https://portal.bridgelinepf.com/q/p98_xZUO2zaltiX49vC59BgOE1EUoRZSpIGtWjFUs0M",
"selected_option_id": null,
"interest": null,
"totals": {
"premium": "59100.00",
"taxes_and_fees": "3150.93",
"total": "62250.93",
"weighted_minimum_earned_rate": 0.25,
"financing_start_date": "2026-10-15"
},
"policies": [
{
"id": "pol_4Hq8Zt2m",
"total": "48620.43",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Scottsdale Insurance Company",
"am_best": {"rating": "A+", "source": "am_best"}
},
"metadata": {"ams_policy_id": "POL-889213"}
},
{
"id": "pol_9Rk3Wv7c",
"total": "13630.50",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Blue Mesa Specialty Insurance Co",
"am_best": {"rating": "A-", "source": "assumed"}
},
"metadata": {"ams_policy_id": "POL-889214"}
}
],
"eligibility": {
"status": "eligible",
"checks": [
{"code": "INPUT_VALID", "passed": true},
{"code": "INSURED_STATE", "passed": true, "limit": "TX", "actual": "TX"},
{"code": "PREMIUM_MIN", "passed": true, "limit": "4500.00", "actual": "62250.93"},
{"code": "PREMIUM_MAX", "passed": true, "limit": "175000.00", "actual": "62250.93"},
{"code": "AM_BEST_MIN", "passed": true, "limit": "A-", "basis": "partially_assumed"},
{"code": "ISSUER", "passed": true},
{"code": "COVERAGE", "passed": true},
{"code": "POLICY_BACKDATE", "passed": true, "limit": "30 days"},
{"code": "DATE_UNIFORMITY", "passed": true},
{"code": "POLICY_TERM", "passed": true, "limit": "3 months", "actual": "12 months"},
{"code": "MINIMUM_EARNED_MAX", "passed": true, "limit": "90%", "actual": "25.3%"}
],
"reasons": []
},
"assumptions": [
{
"code": "EARNED_ASSUMED",
"param": "policies[0].taxes_and_fees[2].earned",
"message": "Not marked; treated as earned (not refunded on cancellation)."
},
{
"code": "AM_BEST_UNVERIFIED",
"param": "policies[1].carrier",
"message": "We couldn't verify this carrier's AM Best rating; assumed A-. Confirm before binding."
},
{
"code": "AUDITABLE_ASSUMED",
"param": "policies[1].auditable",
"message": "Not provided; assumed auditable (the conservative choice)."
}
],
"warnings": [
{
"code": "VERIFY_MINIMUM_EARNED",
"param": "policies[1].minimum_earned",
"message": "Windstorm policies are often fully earned or carry a hurricane-season MEP. Confirm the MEP before binding."
}
],
"binding_readiness": {
"ready": false,
"issues": [
{
"code": "QUOTE_ONLY_DOCUMENT",
"param": "policies[1].document_type",
"message": "This is still a quote; binding needs the binder or policy, or an attestation."
},
{
"code": "AM_BEST_UNRESOLVED",
"param": "policies[1].carrier",
"message": "The carrier's AM Best rating must be confirmed before binding."
}
]
},
"recommended_option_id": "opt_25_10",
"options": [
{
"id": "opt_25_10",
"down_payment_rate": 0.25,
"term_months": 10,
"apr": 0.1185,
"down_payment": "15562.73",
"amount_financed": "46688.20",
"monthly_payment": "4926.21",
"finance_charge": "2573.90",
"total_of_payments": "49262.10",
"total_cost": "64824.83",
"spread_clamped": false
}
// ...29 more options
]
}
{
"id": "qte_2lo4LFk5rf8toDFJVWUIca",
"object": "quote",
"livemode": true,
"status": "active",
"client_reference_id": null,
"metadata": {},
"broker": {"email": "maria@lonestarrisk.example"},
"created_at": "2026-10-04T15:04:05Z",
"expires_at": "2026-11-03T15:04:05Z",
"hosted_url": "https://portal.bridgelinepf.com/q/p98_xZUO2zaltiX49vC59BgOE1EUoRZSpIGtWjFUs0M",
"selected_option_id": null,
"interest": null,
"totals": {
"premium": "240000.00",
"taxes_and_fees": "0.00",
"total": "240000.00",
"weighted_minimum_earned_rate": 0.25,
"financing_start_date": "2026-10-15"
},
"policies": [
{
"id": "pol_4Hq8Zt2m",
"total": "240000.00",
"minimum_earned": {"rate": 0.25},
"carrier": {
"name": "Scottsdale Insurance Company",
"am_best": {"rating": "A+", "source": "am_best"}
},
"metadata": {}
}
],
"eligibility": {
"status": "ineligible",
"checks": [
{"code": "INPUT_VALID", "passed": true},
{"code": "INSURED_STATE", "passed": true, "limit": "TX", "actual": "TX"},
{"code": "PREMIUM_MIN", "passed": true, "limit": "4500.00", "actual": "240000.00"},
{"code": "PREMIUM_MAX", "passed": false, "limit": "175000.00", "actual": "240000.00"},
{"code": "AM_BEST_MIN", "passed": true, "limit": "A-"},
{"code": "ISSUER", "passed": true},
{"code": "COVERAGE", "passed": true},
{"code": "POLICY_BACKDATE", "passed": true, "limit": "30 days"},
{"code": "DATE_UNIFORMITY", "passed": true},
{"code": "POLICY_TERM", "passed": true, "limit": "3 months", "actual": "12 months"},
{"code": "MINIMUM_EARNED_MAX", "passed": true, "limit": "90%", "actual": "25%"}
],
"reasons": [
{
"code": "PREMIUM_TOO_HIGH",
"param": "policies",
"message": "The total to finance ($240000.00) is above the $175000.00 maximum. Contact Bridgeline about larger deals."
}
]
},
"assumptions": [
{
"code": "TAXES_AND_FEES_NOT_PROVIDED",
"param": "policies[0].taxes_and_fees",
"message": "No taxes or fees provided; the amount financed is the premium only."
},
{
"code": "AUDITABLE_ASSUMED",
"param": "policies[0].auditable",
"message": "Not provided; assumed auditable (the conservative choice)."
}
],
"warnings": [],
"binding_readiness": {
"ready": false,
"issues": [
{
"code": "DOCUMENT_TYPE_REQUIRED",
"param": "policies[0].document_type",
"message": "Say whether this is a quote, binder or policy."
},
{
"code": "MISSING_POLICY_NUMBER",
"param": "policies[0].policy_number",
"message": "A real policy number is required before binding."
},
{
"code": "INSURED_ADDRESS_INCOMPLETE",
"param": "insured.address",
"message": "The insured's full mailing address is required before binding (statutory notices are mailed to it)."
}
]
},
"recommended_option_id": null,
"options": []
}
{
"error": {
"type": "invalid_request",
"code": "VALIDATION_FAILED",
"message": "Invalid request body: policies[0].premium: Send money as a decimal string, e.g. \"46100.00\", not a JSON number. (and 1 more; see details)",
"param": "policies[0].premium",
"details": [
{
"code": "INVALID_TYPE",
"param": "policies[0].premium",
"message": "Send money as a decimal string, e.g. \"46100.00\", not a JSON number."
},
{
"code": "UNKNOWN_FIELD",
"param": "policies[0].polcy_number",
"message": "\"polcy_number\" is not a field here. Did you mean \"policy_number\"?"
}
],
"doc_url": "https://docs.bridgelinepf.com/errors#VALIDATION_FAILED",
"request_id": "req_8fJ2kQ9xLm4TzW7nB3cY5pDv"
}
}
Authorizations
bl_live_… or bl_test_… API key.
Headers
API version (a date). Defaults to 2026-09-23; echoed on every response.
^\d{4}-\d{2}-\d{2}$Retrying with the same key and body within 24h replays the original response.
1 - 255Body
Show child attributes
Show child attributes
1Show child attributes
Show child attributes
^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$1 - 255Show child attributes
Show child attributes
Response
The quote, eligible or not.
An indicative quote: a stored snapshot, not a price lock.
qte_…
"quote"active, interested, expired Show child attributes
Show child attributes
Show child attributes
Show child attributes
Returned when the quote is created; null when retrieved.
The insured's response on the hosted page; null unless status is interested. This object is also the payload the Phase 3 quote.interest_expressed webhook will reuse.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes