Foresee

ทางการ

Foresee ช่วยให้ผู้ช่วย AI เปรียบเทียบประกันบ้านและรถยนต์ในทุกบริษัทประกันและตัวเลือกความคุ้มครอง โดยให้ประมาณการเบี้ยประกันที่รวดเร็ว แม่นยำ และละเอียดทันที

คุณทำอะไรได้บ้างด้วย Foresee MCP?

  • เปรียบเทียบราคาประกันรถยนต์ — ขอใบเสนอราคาแบบทันทีและแยกรายการจากหลายบริษัทประกันโดยใช้ quote_insurance พร้อมรายละเอียดรถและความคุ้มครองของคุณ
  • ประเมินราคาประกันบ้านหรือผู้เช่า — รับใบเสนอราคาประกันบ้านหรือผู้เช่าโดยละเอียดโดยระบุรายละเอียดทรัพย์สินและวงเงินคุ้มครอง เช่น coverage_a หรือ coverage_c
  • สำรวจการแลกเปลี่ยนความคุ้มครอง — ดูว่าการเปลี่ยนค่าเสียหายส่วนแรกหรือวงเงินคุ้มครองส่งผลต่อเบี้ยประกันรายเดือนอย่างไรผ่านบันไดราคาในคำตอบ
  • ระบุปัจจัยที่ขาดหายไป — ถามว่ารายละเอียดที่ละเว้นใด (เช่น annual_mileage หรือประวัติการขับขี่) จะส่งผลต่อใบเสนอราคาของคุณมากที่สุด โดยอิงจากคำแนะนำ tighten_by
  • ยืนยันประมาณการกับบริษัทประกัน — ใช้ live_carrier_quotes บนเซิร์ฟเวอร์ตัวแทนเพื่อตรวจสอบประมาณการราคากับบริษัทประกันโดยตรง

เซิร์ฟเวอร์ MCP แบบโฮสต์

npx add-mcp 'https://agents.go-foresee.com/mcp'

ติดตั้งลง Claude Code, Codex, Cursor และอื่นๆ

เอกสาร

เอกสาร

Foresee ช่วยให้ผู้ช่วย AI เปรียบเทียบประกันรถยนต์และประกันบ้านจากทุกบริษัทประกันและทุกตัวเลือกความคุ้มครอง โดยให้ประมาณการเบี้ยประกันที่รวดเร็ว แม่นยำ และมีรายละเอียดทันที

การใช้ Foresee

Foresee โฮสต์ MCP servers สองตัว:

ผู้ใช้ที่ต้องการประมาณการเบี้ยประกันแบบง่าย ไม่ยุ่งยาก โดยไม่ต้องให้ข้อมูลส่วนบุคคล (PII) ใช้:

https://mcp.go-foresee.com/mcp

ผู้ใช้ที่ต้องการยืนยันประมาณการเบี้ยประกันกับบริษัทประกันโดยตรง สามารถส่ง agents การใช้คอมพิวเตอร์ของ Foresee ผ่าน:

https://agents.go-foresee.com/mcp

ทั้งสอง server ไม่จำเป็นต้องมีการยืนยันตัวตน

เครื่องมือ

Foresee เผยแพร่เครื่องมือสองตัวบน MCP servers:

เครื่องมือวัตถุประสงค์agents.mcp.
quote_insuranceสร้างประมาณการเบี้ยประกันที่รวดเร็ว แม่นยำ และมีรายละเอียด✅✅
live_carrier_quotesยืนยันประมาณการเบี้ยประกันกับบริษัทประกัน✅❌

เครื่องมือ 1: quote_insurance

วัตถุประสงค์: สร้างประมาณการเบี้ยประกันแบบแยกรายการทันทีจากบริษัทประกันที่ Foresee สนับสนุน ครอบคลุมประเภทประกันและรัฐที่ Foresee ให้บริการอยู่ในปัจจุบัน ในการเรียกครั้งเดียว

พารามิเตอร์นำเข้า

พารามิเตอร์ชนิดจำเป็นรายละเอียด
profileobjectใช่ดู Profile
linesobjectใช่Keys คือประเภทประกันที่จะคิดราคา (auto, home, renters); values คือตัวเลือกความคุ้มครองของประเภทประกันนั้น (ดู Coverage options)
carriersstring[]ไม่ค่าเริ่มต้นคือ "ทุกบริษัทประกัน"
include_partialbooleanไม่false
include_failuresbooleanไม่true

Profile

Profile หลัก

มี input หลัก profile รวมถึงบล็อกเพิ่มเติมสำหรับประกันรถยนต์และประกันบ้าน/ผู้เช่า ฟิลด์ที่จำเป็นเท่านั้นคือ อายุ (หรือ dob), ZIP และ (สำหรับประกันรถยนต์) รายละเอียดรถ

ฟิลด์เสริมที่ไม่ระบุจะกลายเป็น ข้อสมมติที่ประกาศไว้: เราเลือกค่าทดแทนแบบอนุรักษ์นิยม และรายงานกลับเป็น assumptions — เช่น annual_mileage = 12000 พร้อมรายการ tighten_by ที่ระบุข้อสมมติซึ่งจะทำให้ราคาเปลี่ยนแปลงมากที่สุด prior_insurance หมายถึงประกันสำหรับประเภทประกันเดียวกัน; companion_policies หมายถึงประกันสำหรับประเภทประกันที่ต่างกัน

ฟิลด์ชนิดจำเป็น
zip_codestringใช่
ageintegerใช่
dobstring, YYYY-MM-DDทางเลือกที่ยอมรับแทน age
citystringไม่
genderstringไม่
marital_statusstringไม่
educationstringไม่
employment_statusstringไม่
occupationstringไม่
credit_rangestringไม่
home_ownership_statusstringไม่
residence_typestringไม่
military_affiliationstringไม่
membershipsstring[]ไม่
effective_datestringไม่
prior_insuranceobjectไม่
companion_policiesstring[]ไม่

Profile ประกันรถยนต์

ฟิลด์ชนิดจำเป็น
auto.vehicles[].yearintegerใช่
auto.vehicles[].makestringใช่
auto.vehicles[].modelstringใช่
auto.vehicles[].ownershipstringไม่
auto.vehicles[].annual_mileageintegerไม่
auto.vehicles[].primary_usestringไม่
auto.vehicles[].garaging_zipstringไม่
auto.drivers[].relationstringไม่ (self สำหรับคันแรก)
auto.drivers[].dobstringไม่
auto.drivers[].years_licensedintegerไม่
auto.drivers[].accidentsobject[]ไม่
auto.drivers[].violationsobject[]ไม่
auto.drivers[].sr22_requiredbooleanไม่

accidents และ violations คือรายการของ object ที่มีโครงสร้าง โดยรายการว่างหมายถึงประวัติที่สะอาด

Profile ประกันบ้านและผู้เช่า

ฟิลด์ชนิดจำเป็น
property.year_builtintegerไม่
property.construction_typestringไม่
property.roof_typestringไม่
property.square_feetintegerไม่
property.protection_classstringไม่
property.replacement_costintegerไม่
property.devicesstring[]ไม่
property.lossesobject[]ไม่

ตัวเลือกความคุ้มครอง

แต่ละ key ใน lines รับตัวเลือกความคุ้มครองของประเภทประกันนั้น ไม่มีอะไรถูกคิดราคาด้วยค่าเริ่มต้นของ server: ตัวเลือกที่คุณส่งคือสิ่งที่ถูกคิดราคา

รถยนต์

ตัวเลือกชนิดจำเป็นสิ่งที่ครอบคลุม
bistringใช่ความรับผิดต่อการบาดเจ็บทางร่างกาย: การบาดเจ็บที่คุณก่อให้เกิดกับผู้อื่น วงเงินต่อคน/ต่อครั้งในหน่วย $000 เช่น "100/300"
pdintegerใช่ความรับผิดต่อความเสียหายต่อทรัพย์สิน: ความเสียหายที่คุณก่อให้เกิดกับรถยนต์และทรัพย์สินของผู้อื่น วงเงินในหน่วย $000 เช่น 100
coll_deductibleintegerใช่Collision: ความเสียหายต่อรถของคุณเองจากอุบัติเหตุ ไม่ว่าใครเป็นฝ่ายผิด จำนวนเงินที่คุณจ่ายเองต่อการเคลมครั้งหนึ่ง ในหน่วยดอลลาร์
comp_deductibleintegerใช่Comprehensive: ความเสียหายต่อรถของคุณเองจากสิ่งอื่นที่ไม่ใช่อุบัติเหตุ — การโจรกรรม ไฟไหม้ ลูกเห็บ การป่าเถื่อน การชนสัตว์ จำนวนเงินที่คุณจ่ายเองต่อการเคลมครั้งหนึ่ง ในหน่วยดอลลาร์
umstringไม่ผู้ขับขี่ที่ไม่มี/มีประกันไม่เพียงพอ: การบาดเจ็บของคุณเมื่อผู้ที่ผิดไม่มีหรือมีประกันน้อยเกินไป วงเงินต่อคน/ต่อครั้งในหน่วย $000 เช่น "100/300"
medpayintegerไม่ค่ารักษาพยาบาล: ค่าใช้จ่ายทางการแพทย์สำหรับคุณและผู้โดยสาร ไม่ว่าใครเป็นฝ่ายผิด วงเงินในหน่วยดอลลาร์ เช่น 5000

บ้าน

ตัวเลือกชนิดจำเป็นสิ่งที่ครอบคลุม
coverage_aintegerใช่ตัวบ้าน: การสร้างบ้านใหม่ วงเงินในหน่วยดอลลาร์ โดยปกติคือต้นทุนการทดแทน
coverage_eintegerใช่ความรับผิดส่วนบุคคล: การบาดเจ็บหรือความเสียหายที่คุณต้องรับผิดชอบตามกฎหมาย ไม่ว่าจะเกิดในหรือนอกทรัพย์สิน วงเงินในหน่วยดอลลาร์
coverage_fintegerใช่ค่ารักษาพยาบาลสำหรับผู้อื่น: ค่าใช้จ่ายทางการแพทย์ของแขกหลังการบาดเจ็บในทรัพย์สินของคุณ ไม่ว่าใครเป็นฝ่ายผิด วงเงินในหน่วยดอลลาร์
aop_deductibleintegerใช่ค่าเสียหายส่วนแรกสำหรับภัยอื่นๆ ทั้งหมด: จำนวนเงินที่คุณจ่ายต่อการเคลมครั้งหนึ่งสำหรับทุกอย่างยกเว้นภัยที่มีค่าเสียหายส่วนแรกของตัวเอง (เช่น แผ่นดินไหว) ในหน่วยดอลลาร์

ความคุ้มครอง B (สิ่งปลูกสร้างอื่น เช่น โรงรถแยกหรือรั้ว), C (ทรัพย์สินส่วนบุคคล — สิ่งของของคุณ) และ D (การสูญเสียการใช้ประโยชน์ — ค่าครองชีพระหว่างที่บ้านไม่สามารถอยู่อาศัยได้) ไม่ได้ถามเป็นหน่วยดอลลาร์ — จะกลับมาใน sel เป็นอัตราส่วนของความคุ้มครอง A ที่ถูกคิดราคา

ผู้เช่า

ตัวเลือกชนิดจำเป็นสิ่งที่ครอบคลุม
coverage_cintegerใช่ทรัพย์สินส่วนบุคคล: สิ่งของของคุณ วงเงินในหน่วยดอลลาร์
coverage_eintegerใช่ความรับผิดส่วนบุคคล: การบาดเจ็บหรือความเสียหายที่คุณต้องรับผิดชอบตามกฎหมาย วงเงินในหน่วยดอลลาร์
coverage_fintegerใช่ค่ารักษาพยาบาลสำหรับผู้อื่น: ค่าใช้จ่ายทางการแพทย์ของแขกหลังการบาดเจ็บในบ้านของคุณ ไม่ว่าใครเป็นฝ่ายผิด วงเงินในหน่วยดอลลาร์
deductibleintegerใช่จำนวนเงินที่คุณจ่ายต่อการเคลมครั้งหนึ่งก่อนที่ความคุ้มครองจะเริ่ม ในหน่วยดอลลาร์
coverage_dintegerไม่การสูญเสียการใช้ประโยชน์: ค่าใช้จ่ายในการดำรงชีวิตเพิ่มเติมหากคุณต้องย้ายออกระหว่างการซ่อมแซม วงเงินในหน่วยดอลลาร์

รูปแบบการตอบกลับ

คำนำหน้าความถี่ความหมาย
Qครั้งเดียวต่อประเภทประกันสิ่งที่ถูกคิดราคา: รัฐ ประเภทธุรกิจ การเลือกความคุ้มครอง
format: factors:ครั้งเดียวต่อประเภทประกันคำอธิบายสัญลักษณ์ที่อธิบายตัวเองสำหรับทุกอย่างด้านล่าง
assumptions:ครั้งเดียวต่อประเภทประกันข้อสมมติที่ Foresee ตั้ง; high_impact: true หมายความว่าฟิลด์นี้มีผลต่อประมาณการเบี้ยประกันอย่างมีนัยสำคัญ
tighten_by:ครั้งเดียวต่อประเภทประกันข้อสมมติ/ข้อเท็จจริงที่ขาดหายไปซึ่งจะทำให้ราคาเปลี่ยนแปลงมากที่สุด
not_priced:เมื่อมีบริษัทประกันที่ถูกแยกออก พร้อมเหตุผล
Cครั้งเดียวต่อบริษัทประกันบริษัทประกัน นิติบุคคลที่ออกกรมธรรม์ เบี้ยประกันรายเดือน (ค่าประมาณจุดและช่วงความเชื่อมั่น)
Wตามความจำเป็นคำเตือนที่แนบกับบริษัทประกันด้านบน — เช่น "ไม่รับเขียน BI / PD ตามขั้นต่ำของรัฐ"
Lครั้งเดียวต่อบริษัทประกันต้นทุนรายเดือนต่อความคุ้มครองหรือภัย
Fหลายครั้งต่อบริษัทประกันปัจจัยการจัดอันดับหนึ่งรายการต่อประเภทประกัน ระบุชื่อในคำอธิบายสัญลักษณ์ factors: ค่าต่างๆ สอดคล้องแบบหนึ่งต่อหนึ่งกับรหัส L: ว่าง = ไม่เกี่ยวข้องกับความคุ้มครองนั้น ค่าเดียว = ใช้กับทุกความคุ้มครอง วงเล็บคือแถวที่ profile ตกอยู่ (ขั้นเช่น 100/300, ข้อเท็จจริงเช่น 90066, หรือ applied / not applied) คำต่อท้ายค่า: ไม่มี = แม่นยำ, ~ = มาจากการคำนวณ, ? = ประมาณการ
Dต่อบริษัทประกันบันไดราคา: สำหรับแต่ละตัวปรับความคุ้มครอง ทุกขั้นที่เสนอเป็น ±$/เดือน เทียบกับเบี้ยประกันรายเดือนที่อ้างอิง โดยที่อย่างอื่นคงที่ตามที่เลือก +0.00 ระบุขั้นที่เลือก; (asked X) = X ไม่ได้เสนอ และราคาอยู่ที่ขั้นที่เสนอใกล้ที่สุด คิดราคาใหม่จาก D; อย่าเรียกใหม่

ตัวอย่าง: รถยนต์

ชายอายุ 41 ปีใน ZIP 90066 ที่มี Honda Civic ปี 2021

Mercury แสดงเซลล์บริษัทประกันธรรมดา; Travelers คิดราคาผ่านนิติบุคคลที่ออกกรมธรรม์ที่เป็นไปได้สองแห่ง ดังนั้นเซลล์จึงมีส่วน ci (ช่วงการจัดวาง) USAA อยู่ใน not_priced พร้อมเหตุผลของบริษัทเอง

{
  "profile": {
    "zip_code": "90066",
    "age": 41,
    "auto": {"vehicles": [{"year": 2021, "make": "Honda", "model": "Civic"}]}
  },
  "lines": {"auto": {"bi": "100/300", "pd": 100, "coll_deductible": 500, "comp_deductible": 500}},
  "carriers": ["mercury", "travelers", "usaa"]
}

ทุกฟิลด์ profile ที่ไม่ระบุจะกลับมาเป็นข้อสมมติที่ประกาศไว้ — บล็อก assumptions: ขนาดใหญ่ ด้านล่างเกิดจากคำขอแบบบางด้านบน และ tighten_by: ระบุคำตอบเจ็ดข้อ ที่จะทำให้ราคาเปลี่ยนแปลงมากที่สุด Mercury แสดงเซลล์บริษัทประกันธรรมดา; Travelers คิดราคาผ่าน นิติบุคคลที่ออกกรมธรรม์ที่เป็นไปได้สองแห่ง ดังนั้นเซลล์จึงมีส่วน ci (ช่วงการจัดวาง) USAA อยู่ใน not_priced พร้อมเหตุผลของบริษัทเอง

Q CA auto sel={"bi":"100/300","coll_deductible":500,"comp_deductible":500,"pd":100}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead
factors: f0=BI Limit f1=Good Driver f2=Group Placement (Rule G) f3=PD Limit f4=UMBI Limit f5=Medical Payments Limit f6=Comprehensive Deductible f7=Collision Deductible f8=Vehicle Symbol f9=ca_good_driver_pri f10=group f11=UM Limit
assumptions: [{"assumed":"Male","field":"gender","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":12000,"field":"annual_mileage","high_impact":true},{"assumed":0,"field":"accidents_3yr","high_impact":true},{"assumed":0,"field":"violations_3yr","high_impact":true},{"assumed":false,"field":"dui","high_impact":true},{"assumed":false,"field":"currently_insured","high_impact":true},{"assumed":null,"field":"homeowner","high_impact":false},{"assumed":null,"field":"occupation","high_impact":true},{"assumed":null,"field":"memberships","high_impact":true}]
tighten_by: annual_mileage,accidents_3yr,violations_3yr,dui,currently_insured,occupation,memberships
not_priced: usaa:USAA sells only to military members, veterans, and their fam
C mercury|Mercury Insurance Company|235.11
L BI:56.33,PD:44.10,UMBI:16.85,MP:0.97,COMP:17.49,COLL:99.38
F f0(100/300)=1.51,,,,,
F f1(applied)=0.8
F f2(not applied)=1.0
F f3(100)=,1.38,,,,
F f4(30/60)=,,1.65,,,
F f5(1000)=,,,1.0,,
F f6(500)=,,,,0.89,
F f7(500)=,,,,,1.0
D bi 100/300=15/30 *available through December 31, 2024:-19.03,25/50 *available through December 31, 2024:-14.18,30/60 *available on or after January 1, 2025:-9.70,50/100:-6.72,100/300:+0.00,250/500:+12.31,300/300:+12.68,500/500:+23.13
D pd 100=5:-15.34,10:-12.14,15:-9.27,25:-7.99,50:-2.88,100:+0.00,250:+2.56,300:+3.83
D coll_deductible 500=100:+19.87,200:+14.91,250:+12.42,500:+0.00,1000:-9.94,2000:-29.81,2500:-39.75
D comp_deductible 500=25:+25.74,50:+17.88,100:+11.00,200:+6.09,250:+2.75,500:+0.00,1000:-2.75,2000:-5.70,2500:-8.06
C travelers|Travelers Commercial Insurance Company|368.50|ci 327.21-415.00
L BI:149.00,PD:70.17,CP:15.50,CL:114.33,UMBI:19.50
F f0(100000/300000)=1.649,,,,
F f8(symbol AA)=1.009?,1.003?,,,
F f9(applied)=0.8
F f10(not applied)=1.0
F f3(100000)=,1.443,,,
F f6(500)=,,0.627,,
F f8(symbol 12)=,,0.941?,,
F f7(500)=,,,0.801,
F f8(symbol 17)=,,,1.013?,
F f11(30000/60000)=,,,,1.5
F f8(symbol 1)=,,,,1.0?
D pd 100=5:-21.50,10:-10.50,15:-6.67,25:-2.83,50:-0.67,100:+0.00,250:+0.50,300:+0.83,500:+1.17
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.

รหัส L ของรถยนต์คือความคุ้มครองที่บริษัทประกันคิดราคา (รวม BIPD, หรือแยก BI/PD, รวมถึง collision, comprehensive, UM, ค่าธรรมเนียม) ไม่ได้ถูกทำให้เป็นมาตรฐานทั่วทั้งแผง


ตัวอย่าง: บ้าน

ชายอายุ 41 ปีคนเดียวกันกับด้านบน ทำประกันบ้านโครงไม้ที่สร้างในปี 1998 ด้วยต้นทุนการทดแทน $450,000:

{
  "profile": {
    "zip_code": "90066",
    "age": 41,
    "property": {"year_built": 1998, "construction_type": "frame", "replacement_cost": 450000}
  },
  "lines": {"home": {"coverage_a": 450000, "coverage_e": 300000, "coverage_f": 1000, "aop_deductible": 1000}},
  "carriers": ["mercury", "autoclub"]
}

sel สะท้อน B/C/D เป็นอัตราส่วนของความคุ้มครอง A ที่ถูกคิดราคา L ของ Mercury คือ การแยกย่อยตามภัย (ไฟไหม้ น้ำ ไฟป่า ค่าธรรมเนียม); AAA ยื่นเบี้ยประกันแบบเหมารวมแทน ข้อเท็จจริงเกี่ยวกับตัวบ้านอยู่ใน assumptions:/tighten_by: — ที่นี่คือประเภทหลังคา ระดับการป้องกัน และประวัติการเคลมที่สะอาด

Q CA home sel={"aop_deductible":1000,"coverage_a":450000,"coverage_b_pct":0.1,"coverage_c_pct":0.5,"coverage_d_pct":0.2,"coverage_e":300000,"coverage_f":1000}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead
factors: f0=Deductible f1=Coverage A f2=Multiple Policy Discount (Automobile) f3=Personal Property Replacement Cost f4=Additional Replacement Cost f5=Ordinance or Law f6=Reduced Coverage Endorsement f7=Coverage E f8=Coverage F f9=Enhanced Home Package f10=Water Backup Limit f11=Other Perils Deductible (Table 5 relativity, additive) f12=Water Deductible (Table 5 relativity, additive) f13=Coverage A / Amount of Insurance Relativity (Table 5) f14=Package Discount (Exchange auto policy)
assumptions: [{"assumed":"Asphalt Shingle","field":"roof_type","high_impact":false},{"assumed":1,"field":"stories","high_impact":false},{"assumed":2,"field":"bathrooms","high_impact":false},{"assumed":1,"field":"families","high_impact":false},{"assumed":"Primary","field":"residency_type","high_impact":false},{"assumed":5,"field":"protection_class","high_impact":true},{"assumed":"Attached","field":"garage_type","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":[],"field":"home_losses","high_impact":true}]
tighten_by: protection_class,home_losses
C mercury|CALIFORNIA AUTOMOBILE INS CO|123.67
L P1_FIRE:34.69,P2_LIABILITY:6.39,P3_THEFT:6.40,P4_WIND:2.68,P5_WATER:61.56,P6_OTHER:3.57,P7_CAT_WIND:0.97,P10_CAT_WATER:0.04,P12_WILDFIRE:0.43,P13_FFEQ:1.36,WC_RESIDENCE_EMPLOYEES_910:0.67,FEE:3.75,FEE:1.16,FEE:0.01
F f0(1000)=0.95,,0.887,0.963,1.0,0.909,0.963,1.0,0.95,0.95,,,,
F f1(450000)=1.895,1.206,1.142,0.901,2.519,1.176,0.901,2.519,1.518,2.313,,,,
F f2(No)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f3(No)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f4(No)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f5(0.1)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f6(No)=1.0,,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,,,,
F f7(300000)=,1.5,,,,1.0,,,,,,,,
F f8(1000)=,1.5,,,,,,,,,,,,
F f9(No)=,,1.0,1.0,1.0,1.0,1.0,1.0,,,,,,
F f10(No)=,,,,1.0,,,1.0,,,,,,
D aop_deductible 1000=500:+13.38,1000:+0.00,1500:-5.38,2500:-21.45,3500:-26.58,5000:-37.01,10000:-48.28,25000:-63.01,50000:-72.51
D coverage_a 450000=30000:-90.60,65000:-82.94,95000:-76.38,130000:-68.81,165000:-61.24,195000:-54.76,230000:-47.27,265000:-39.79,295000:-33.39,330000:-25.82,365000:-18.34,395000:-11.94,430000:-4.37,445000:-1.17,450000:+0.00,455000:+1.01,465000:+3.20,500000:+10.86,570000:+26.34,630000:+39.88,700000:+56.03,770000:+72.77,830000:+87.49,900000:+105.41,970000:+124.09,2500000:+523.01,6000000:+1464.79
D coverage_e 300000=100000:-1.34,200000:-0.58,300000:+0.00,500000:+0.68,1000000:+4.04
D coverage_f 1000=1000:+0.00,2000:+0.17,5000:+0.42
C autoclub|Interinsurance Exchange of the Automobile Club|146.10
L Package:139.00,MedPayIL:0.00,LiabilityIL:2.08,BrushFire:0.00,FireFollowingEQ:3.42,FEE:1.60
F f11(1000)=0.393,,,,,
F f12(1000)=1.092,,,,,
F f13(450000)=1.485,,,,,
F f14(No)=1.0,,,,,
D aop_deductible 1000=500:+20.98,750:+7.59,1000:+0.00,1500:-11.45,2000:-16.93,3000:-21.06,5000:-25.36,10000:-28.73,15000:-51.90,20000:-63.44,25000:-71.53,30000:-77.34,50000:-90.49
D coverage_a 450000=60000:-120.65,90000:-115.51,110000:-110.96,130000:-105.66,150000:-99.59,170000:-92.85,190000:-86.53,220000:-76.17,250000:-64.54,280000:-54.09,320000:-40.02,350000:-29.15,360000:-26.54,400000:-16.00,440000:-3.62,450000:+0.00,460000:+2.45,480000:+9.44,550000:+32.95,650000:+77.19,750000:+98.00,850000:+116.62,950000:+147.71,2000000:+475.47,4000000:+1099.41,10000000:+2982.24
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.

ตัวอย่าง: ผู้เช่า

ครัวเรือนที่แตกต่างกันที่ ZIP เดียวกัน: ผู้เช่าอายุ 27 ปี:

{
  "profile": {"zip_code": "90066", "dob": "1998-11-11"},
  "lines": {"renters": {"coverage_c": 30000, "coverage_e": 100000, "coverage_f": 1000, "deductible": 500}},
  "carriers": ["farmers", "usaa"]
}
Q CA renters sel={"coverage_c":30000,"coverage_e":100000,"coverage_f":1000,"deductible":500}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead
factors: f0=Coverage C - Personal Property f1=Deductible f2=Coverage D - Loss of Use (% of C) f3=Additional Living Expense Term (months) f4=Contents Loss Settlement (ACV) f5=Enhanced Personal Property Coverage f6=Claims Free Discount f7=Multi-Policy Discount - Renter/auto f8=Multi-Policy Discount - Renter/life f9=Multi-Policy Discount - Renter/umbrella f10=Multi-Policy Discount - Renter/business f11=Multi-Policy Discount - Renter/boat f12=Multi-Policy Discount - Renter/motorhome f13=Multi-Policy Discount - Renter/recreational_vehicle f14=Multi-Policy Discount - Renter/cea f15=ZIP Code f16=Fireline Score f17=Experience Rating (points) f18=Coverage E - Personal Liability f19=Premises Rented to Others Solely Used as a Private Residence
assumptions: [{"assumed":2000,"field":"year_built","high_impact":false},{"assumed":5,"field":"protection_class","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":[],"field":"home_losses","high_impact":true}]
tighten_by: home_losses
not_priced: usaa:USAA sells only to military members, veterans, and their fam
C farmers|Fire Insurance Exchange|29.88
L PC1_PROPERTY:21.00,PC2_LIABILITY:8.17,FEE:0.42,FEE:0.30
F f0(30000)=1.087,,,
F f1(500)=1.0,,,
F f2(20)=1.0,,,
F f3(12)=1.0,,,
F f4(N)=1.0,,,
F f5(N)=1.0,,,
F f6(Y)=0.9,,,
F f7(N)=1.0,1.0,,
F f8(N)=1.0,1.0,,
F f9(N)=1.0,1.0,,
F f10(N)=1.0,1.0,,
F f11(N)=1.0,1.0,,
F f12(N)=1.0,1.0,,
F f13(N)=1.0,1.0,,
F f14(N)=1.0,1.0,,
F f15(90066)=1.423,,,
F f16(0)=1.0,,,
F f17(0)=1.0,,,
F f18(100000)=,1.0,,
F f19({})=,1.0,,
D deductible 500=100:+5.89,250:+1.85,500:+0.00,1000:-2.61,1500:-4.29,2500:-6.73
D coverage_c 30000=4000:-16.33,10000:-11.95,17000:-7.15,23000:-3.87,29000:-0.59,30000:+0.00,31000:+0.51,37000:+3.79,43000:+7.07,49000:+10.36,55000:+13.64,62000:+17.43,68000:+20.71,74000:+23.99,81000:+27.78,87000:+31.06,93000:+34.35,100000:+38.14,106000:+41.42,112000:+44.70,118000:+47.99,125000:+51.77,131000:+55.06,137000:+58.34,144000:+62.13,150000:+65.41
D coverage_e 100000=100000:+0.00,300000:+3.28,500000:+5.56,1000000:+10.69
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.

ตัวอย่าง: ประกันรถยนต์ + ผู้เช่าแบบรวม

ผู้เช่าอายุ 27 ปีคนเดียวกัน ตอนนี้มีรถยนต์ "incidents": [] หมายถึงประวัติที่สะอาด ดังนั้นคำถามเกี่ยวกับประวัติการขับขี่จึงปล่อย assumptions: ทั้งหมด

{
  "profile": {
    "zip_code": "90066",
    "age": 27,
    "incidents": [],
    "prior_insurance": {"insured": true, "carrier": "GEICO", "since": "2019"},
    "auto": {"vehicles": [{"year": 2021, "make": "Honda", "model": "Civic", "annual_mileage": 9000}]},
    "property": {"year_built": 1978, "square_feet": 850}
  },
  "lines": {
    "auto": {"bi": "100/300", "pd": 100, "coll_deductible": 500, "comp_deductible": 500},
    "renters": {"coverage_c": 30000, "coverage_e": 100000, "coverage_f": 1000, "deductible": 500}
  },
  "carriers": ["farmers", "mercury"]
}

เนื่องจากตอนนี้เรามีประวัติ ระยะทาง และประวัติการทำประกัน รหัส assumptions: ของรถยนต์จึงลดเหลือห้ารายการ และ tighten_by: เหลือสองรายการ อย่างไรก็ตาม ส่วนของผู้เช่าประกาศค่าทดแทนตัวบ้านของตัวเอง; Mercury คิดราคาเฉพาะรถยนต์ — แบบเดี่ยว ไม่มี การรวม Farmers คิดราคาทั้งสอง ให้ส่วนลด 20% ระบุไว้ใน B สรุปเดียวกันนี้อยู่ใน structuredContent เป็น bundle: {farmers: {lines, bundle_total, standalone_total, savings}}

Q CA auto sel={"bi":"100/300","coll_deductible":500,"comp_deductible":500,"pd":100}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead ; B carrier|bundled $/mo|standalone $/mo|saves $/mo = this carrier priced the asked lines together; the per-line C prices ARE the bundled prices
factors: f0=BI Limit f1=Good Driver f2=Group Placement (Rule G) f3=PD Limit f4=UMBI Limit f5=Medical Payments Limit f6=Comprehensive Deductible f7=Collision Deductible f8=Business & Professional Group f9=UM Limit
assumptions: [{"assumed":"Male","field":"gender","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":null,"field":"homeowner","high_impact":false},{"assumed":null,"field":"occupation","high_impact":true},{"assumed":null,"field":"memberships","high_impact":true}]
tighten_by: occupation,memberships
C mercury|Mercury Insurance Company|289.94
L BI:66.80,PD:52.55,UMBI:17.38,MP:1.05,COMP:23.50,COLL:128.67
F f0(100/300)=1.51,,,,,
F f1(applied)=0.8
F f2(not applied)=1.0
F f3(100)=,1.38,,,,
F f4(30/60)=,,1.65,,,
F f5(1000)=,,,1.0,,
F f6(500)=,,,,0.89,
F f7(500)=,,,,,1.0
D bi 100/300=15/30 *available through December 31, 2024:-22.56,25/50 *available through December 31, 2024:-16.81,30/60 *available on or after January 1, 2025:-11.50,50/100:-7.96,100/300:+0.00,250/500:+14.60,300/300:+15.04,500/500:+27.43
D pd 100=5:-18.28,10:-14.47,15:-11.04,25:-9.52,50:-3.43,100:+0.00,250:+3.05,300:+4.57
D coll_deductible 500=100:+25.74,200:+19.30,250:+16.09,500:+0.00,1000:-12.87,2000:-38.60,2500:-51.47
D comp_deductible 500=25:+34.59,50:+24.03,100:+14.79,200:+8.19,250:+3.70,500:+0.00,1000:-3.70,2000:-7.66,2500:-10.83
C farmers|Farmers Insurance Exchange|398.00
L BI:111.83,PD:73.33,UMBI:28.33,UMPD:1.50,MED:13.33,COMP:34.00,COLL:133.17,FEE:2.50
F f0(100000/300000)=1.46,,,,,,,
F f1(applied)=0.8,0.8,0.8,0.8,0.8,0.8,0.8,
F f8(not applied)=1.0,1.0,1.0,1.0,1.0,1.0,1.0,
F f3(100000)=,1.2674,,,,,,
F f9(30000/60000)=,,1.2788,,,,,
F f6(500)=,,,,,1.0009,,
F f7(500)=,,,,,,1.1986,
D pd 100=15:-8.83,25:-5.00,50:-1.50,100:+0.00,250:+1.33,500:+3.17
D coll_deductible 500=250:+30.67,500:+0.00,750:-13.67,1000:-23.50,1500:-37.50,2500:-56.33,5000:-87.00
D comp_deductible 500=100:+23.67,250:+9.17,500:+0.00,750:-7.17,1000:-10.67,1500:-13.50,2500:-18.83,5000:-21.17
Q CA renters sel={"coverage_c":30000,"coverage_e":100000,"coverage_f":1000,"deductible":500}
format: Q state [line] sel=<coverage_selection priced, JSON> ; C=carrier|entity|monthly|ci lo-hi ; tighten_by=missing facts that most move the price — offer to re-quote with the user's answers ; L COV:$,.. = monthly $ per coverage ; F fid(selected)=v,v,.. = rating factor, one value per coverage in the L order, blank=not applied, single value=all coverages, suffix ?=estimated ~=derived none=exact ; D lever selected=option:±$/mo vs the carrier's monthly, others held at the selection (selected(asked X) = X is not an option; the price is at the selected rung shown) ; W = warning — e.g. an asked limit is not offered and the price covers the nearest offered rung instead ; B carrier|bundled $/mo|standalone $/mo|saves $/mo = this carrier priced the asked lines together; the per-line C prices ARE the bundled prices
factors: f0=Coverage C - Personal Property f1=Deductible f2=Coverage D - Loss of Use (% of C) f3=Additional Living Expense Term (months) f4=Contents Loss Settlement (ACV) f5=Enhanced Personal Property Coverage f6=Claims Free Discount f7=Multi-Policy Discount - Renter/auto f8=Multi-Policy Discount - Renter/life f9=Multi-Policy Discount - Renter/umbrella f10=Multi-Policy Discount - Renter/business f11=Multi-Policy Discount - Renter/boat f12=Multi-Policy Discount - Renter/motorhome f13=Multi-Policy Discount - Renter/recreational_vehicle f14=Multi-Policy Discount - Renter/cea f15=ZIP Code f16=Fireline Score f17=Experience Rating (points) f18=Coverage E - Personal Liability f19=Premises Rented to Others Solely Used as a Private Residence
assumptions: [{"assumed":5,"field":"protection_class","high_impact":false},{"assumed":"Single","field":"marital_status","high_impact":false},{"assumed":[],"field":"home_losses","high_impact":true}]
tighten_by: home_losses
C farmers|Fire Insurance Exchange|24.06
L PC1_PROPERTY:16.80,PC2_LIABILITY:6.54,FEE:0.42,FEE:0.30
F f0(30000)=1.087,,,
F f1(500)=1.0,,,
F f2(20)=1.0,,,
F f3(12)=1.0,,,
F f4(N)=1.0,,,
F f5(N)=1.0,,,
F f6(Y)=0.9,,,
F f7(Y - Farmers)=0.8,0.8,,
F f8(N)=1.0,1.0,,
F f9(N)=1.0,1.0,,
F f10(N)=1.0,1.0,,
F f11(N)=1.0,1.0,,
F f12(N)=1.0,1.0,,
F f13(N)=1.0,1.0,,
F f14(N)=1.0,1.0,,
F f15(90066)=1.423,,,
F f16(0)=1.0,,,
F f17(0)=1.0,,,
F f18(100000)=,1.0,,
F f19({})=,1.0,,
D deductible 500=100:+4.71,250:+1.48,500:+0.00,1000:-2.09,1500:-3.43,2500:-5.38
D coverage_c 30000=4000:-13.06,10000:-9.56,17000:-5.72,23000:-3.10,29000:-0.47,30000:+0.00,31000:+0.41,37000:+3.03,43000:+5.66,49000:+8.29,55000:+10.91,62000:+13.94,68000:+16.57,74000:+19.19,81000:+22.22,87000:+24.85,93000:+27.48,100000:+30.51,106000:+33.14,112000:+35.76,118000:+38.39,125000:+41.42,131000:+44.05,137000:+46.67,144000:+49.70,150000:+52.33
D coverage_e 100000=100000:+0.00,300000:+2.62,500000:+4.45,1000000:+8.55
B farmers|422.06|427.88|5.82
present: Lead with the best option for this user — its price and a one-line reason — then a comparison sorted cheapest-first (Carrier · Monthly · 6-month total; a markdown table when your surface renders it) and the annual dollar spread between cheapest and priciest — that spread is the reason to compare. A B row's per-line prices assume every bundled line is placed with that carrier; for a cross-carrier mix, compare standalone totals. These are Foresee's estimates of what each carrier will charge; the assumptions and tighten_by blocks say how they were made and how to sharpen them. Foresee never takes payment: when the user settles on a carrier (or asks to buy), give that carrier's carrier_quote_url as a clickable link — the purchase completes on the carrier's own quoting portal.

เครื่องมือ 2: live_carrier_quotes

วัตถุประสงค์: ยืนยันประมาณการเบี้ยประกันบนเว็บไซต์อ้างอิงเบี้ยของบริษัทประกันเอง

เครื่องมือนี้เป็น idempotent: การเรียกครั้งแรกจะมอบหมายงานให้ agents การใช้คอมพิวเตอร์; การเรียกอีกครั้งด้วยอาร์กิวเมนต์เดียวกันจะรวบรวมความคืบหน้าและผลลัพธ์จากการเรียกครั้งแรก

การส่งงานแบบสดจะส่งรายละเอียดจริงของผู้ใช้ไปยังบริษัทประกัน ซึ่งอาจทำการตรวจสอบเครดิตแบบนุ่มนวล (soft credit check) จะขอความยินยอมจากผู้ใช้ก่อนเรียกใช้เครื่องมือ

Foresee เก็บรวบรวมเฉพาะใบเสนอราคาเท่านั้น ไม่รับชำระเงินหรือผูกมัดประกัน

พารามิเตอร์นำเข้า

พารามิเตอร์ชนิดจำเป็นรายละเอียด
profileobjectใช่ฟิลด์เดียวกันกับ quote_insurance — ข้อเท็จจริงสำหรับการจัดอันดับ
linesobjectใช่หนึ่ง key ต่อประเภทประกันที่จะดำเนินการ แต่ละ value คือคำขอของประเภทประกันนั้น (ดูด้านล่าง); หลาย keys จะมอบหมายงานแบบรวม
user_authorizationstringใช่คำยืนยันในแชทของผู้ใช้ ตามตัวอักษร (เช่น yes, go ahead)
identityobjectโดยปกติรายละเอียดของผู้ใช้
carriersstring[]ไม่จำกัดกลุ่มบริษัท; ค่าเริ่มต้นคือทุกบริษัทที่มีขั้นตอนการดำเนินการที่ตรวจสอบแล้วสำหรับประเภทประกัน + รัฐ

lines

LineAskWhy
autoจำเป็น — แกนเดียวกันสี่แกนกับ quote_insurance (bi, pd, coll_deductible, comp_deductible) เป็นตัวเลขจริงวงเงินและค่าเสียหายส่วนแรกที่ตัวแทนขอจากแบบฟอร์มของบริษัทประกัน
homeไม่มี — {"home": null}แบบฟอร์มของบริษัทประกันเองเป็นผู้กำหนดราคาแพ็กเกจ (จำนวนเงินตัวบ้านจากประมาณการต้นทุนทดแทน) ตัวแทนรายงานสิ่งที่บริษัทเลือก หากมีการส่งคำขอเข้ามาจะถูกปฏิเสธอย่างชัดเจน ไม่ใช่ถูกเพิกเฉยเงียบ ๆ
rentersจำเป็น — coverage_c, coverage_e, coverage_f, deductible เป็นจำนวนเงินดอลลาร์จริงตัวแทนพิมพ์ตัวเลขของผู้ใช้ลงในแบบฟอร์มแทนที่จะยอมรับค่าเริ่มต้น Foresee ไม่เคยสร้างตัวเลขเหล่านี้ขึ้นเอง

การกดหลายคีย์พร้อมกันจะเริ่มการเดินแบบหลายรายการรวม: บริษัทประกันแต่ละแห่งที่รับประกันทุกเส้นที่ระบุจะถูกนำผ่านขั้นตอนการเสนอราคาหลายเส้นของตัวเอง และรายงานเบี้ยประกันรายเส้นรวมถึงยอดรวมแพ็กเกจของตัวเอง บริษัทที่รับประกันเพียงบางเส้นจะถูกนำเดินเฉพาะเส้นเหล่านั้น กฎการขอรายเส้นไม่เปลี่ยนแปลงเมื่อมีการรวมแพ็กเกจ

identity

ฟิลด์ประเภทจำเป็นรายละเอียด
first_namestringใช่ชื่อจริงตามกฎหมาย
last_namestringใช่นามสกุลตามกฎหมาย
dobstring, YYYY-MM-DDใช่
streetstringใช่ที่อยู่ถนน (บรรทัดที่ 1)
unitstringไม่อพาร์ตเมนต์/ห้องชุด (บรรทัดที่ 2)
citystringใช่
zip_codestringไม่เฉพาะเมื่อแตกต่างจากในโปรไฟล์
emailstringใช่บริษัทประกันส่งใบเสนอราคามาที่นี่
phonestringไม่

การตอบกลับ

ฟิลด์ความหมาย
statusin_progress / partial / complete — เรียกซ้ำด้วยอาร์กิวเมนต์เดียวกันเพื่อเก็บผลลัพธ์
agentsหนึ่งรายการต่อบริษัทประกัน (ดูด้านล่าง)
noteสิ่งที่ต้องทำต่อไป เช่น จังหวะการเรียกซ้ำ หรือว่าผลลัพธ์จากการรันก่อนหน้าถูกส่งคืน
authorization_recordedในใบเสร็จ: บันทึกความยินยอมถูกจัดเก็บก่อนที่บริษัทประกันใดจะเห็นความเสี่ยง
skippedบริษัทประกันที่ไม่ได้ถูกส่งออกไป แต่ละรายการพร้อมเหตุผล (no_deterministic_walk, missing_facts พร้อมข้อเท็จจริงที่ระบุ)
not_dispatchedบริษัทที่ใช้เครื่องมือกำหนดราคาซึ่งการส่งครั้งนี้จะไม่เดินแบบ พร้อมเหตุผล (held: …, no_walk, not_walked, offline, not_sold) — คำแนะนำที่ช่องทางการเดินแบบไม่สามารถยืนยันได้จะไม่หายไปอย่างเงียบ ๆ
needsเมื่อถูกปฏิเสธแบบ missing_facts: ข้อเท็จจริงรายบริษัทที่ต้องเก็บจากผู้ใช้ พร้อมเส้นทาง schema ที่แน่นอน — และสำหรับฟิลด์ที่มีคำศัพท์ปิด ค่า values ที่ยอมรับ
assumptionsข้อเท็จจริงเล็กน้อยในแบบฟอร์มที่ไม่ได้รับการยืนยันซึ่งการเดินแบบแปลงเป็นคำตอบ "ไม่มีการเคลม" ที่ประกาศ: เส้นทางโปรไฟล์ (field) และค่าที่ส่ง (assumed) — ส่งต่อทุกอันพร้อมกับผลลัพธ์
confirmationต่อบริษัท: ค่าประมาณจากเครื่องมือทันทีเทียบกับเบี้ยประกันที่พิมพ์บนหน้า — ค่าประมาณรวมแพ็กเกจเมื่อมีการเดินหลายเส้น
error / detailทุกการปฏิเสธเป็น dict แบบ {"error", "detail"} ที่มีโครงสร้าง

แต่ละรายการ agents:

ฟิลด์เมื่อใดความหมาย
carrier_key, carrierเสมอคีย์รายชื่อ + ชื่อที่แสดง
statusเสมอin_progress / complete / failed
linesเสมอเส้นที่การเดินนี้ครอบคลุม — หลายเส้นในการเดินแบบรวม
stage, eta_seconds_remainingกำลังดำเนินการการเดินอยู่ที่ไหน; เวลาที่เหลือเทียบกับขั้นตอนทั่วไปของบริษัท
quote.premiumเสนอราคาแล้วตามตัวอักษรที่หน้าของบริษัทพิมพ์ออกมา ("$857.80") — ไม่มีการแยกวิเคราะห์ ปัดเศษ หรือดัดแปลง
quote.term_monthsเสนอราคาแล้วระยะเวลาที่เบี้ยประกันที่พิมพ์ครอบคลุม
quote.premium_by_lineเสนอราคาแล้ว, เดินแบบรวมเบี้ยประกันแต่ละเส้นตามที่หน้าพิมพ์ beside ยอดรวมแพ็กเกจใน quote.premium
quote.breakdownเสนอราคาแล้วรายการบรรทัดของหน้าอง ฉลากของหน้าเอง
quote.boundเสนอราคาแล้ว, การเดินใหม่กว่าความคุ้มครองที่อ่านจากหน้าที่ตั้งราคา — สิ่งที่แบบฟอร์มผูกมัดจริง เทียบกับสิ่งที่ขอ
quote.variantsเสนอราคาแล้วแพ็กเกจเพิ่มเติมที่ตั้งราคาแล้วซึ่งหน้าเสนอ
quote.quote_numberเสนอราคาแล้วหมายเลขการดึงข้อมูลของบริษัท เมื่อหน้าแสดง
quote.evidence_recordedเสนอราคาแล้วมีหลักฐานภาพหน้าจออยู่ฝั่งเซิร์ฟเวอร์ (URI ภายในไม่เคยถูกส่งผ่านสาย)
declined: true + detailปฏิเสธบริษัทตรวจสอบรายละเอียดแล้วปฏิเสธที่จะเสนอราคา เป็นคำตอบ ไม่ใช่ข้อผิดพลาด — ส่งต่อให้
detailล้มเหลวคำพูดของการเดินเองสำหรับจุดที่หยุดและเหตุผล

การปฏิเสธ

ทุกการปฏิเสธเป็นออบเจกต์ {"error", "detail"} ที่มีโครงสร้าง — ไม่มีอะไรถูกส่ง ไปยังบริษัทประกันใดเว้นแต่แถวด้านล่างจะระบุเป็นอย่างอื่น

รหัสเมื่อใดสิ่งที่ต้องทำ
profile_requiredข้อเท็จจริงครัวเรือนถูกส่งที่ระดับบนสุด ไม่มี wrapper แบบ profileเรียกซ้ำโดยห่อข้อเท็จจริงตามที่แสดงใน example_arguments ของการปฏิเสธ
authorization_requiredถูกเรียกโดยไม่ได้รับความยินยอมจากผู้ใช้อธิบายข้อเท็จจริงความยินยอม รับคำว่าใช่ และส่งต่อตามตัวอักษรใน user_authorization
bad_identitydrivers_license_number ที่มีรูปร่างเหมือนเลขประกันสังคมไม่มีการเก็บเลขประกันสังคมเด็ดขาด ส่งเลขใบขับขี่ตามที่พิมพ์บนใบขับขี่
bad_profileฟิลด์โปรไฟล์ไม่ผ่านการตรวจสอบdetail ระบุชื่อฟิลด์
one_line_per_dispatchแผนที่ lines ว่างเปล่าระบุอย่างน้อยหนึ่งเส้นที่จะเดิน
unknown_lineเส้นที่ไม่มีการเดิน (เช่น umbrella)detail แสดงรายการเส้นที่การส่งสดรู้จัก
coverage_selection_requiredการเดินแบบรถยนต์หรือผู้เช่าที่ไม่มีวงเงินและค่าเสียหายส่วนแรกครบถ้วนเรียกซ้ำพร้อมตัวเลข — การเดินพิมพ์ค่าจริง ไม่เคยใช้ค่าเริ่มต้น
bad_askการเดินแบบบ้านที่ได้รับคำขอความคุ้มครองส่ง {"home": null} — แบบฟอร์มของบริษัทเองเป็นผู้กำหนดราคาแพ็กเกจ
missing_factsไม่มีแบบฟอร์มของบริษัทที่ขอใดที่กรอกจากโปรไฟล์ได้ถามผู้ใช้สำหรับข้อเท็จจริง needs[].fields[] (ใช้ values ของพวกเขาที่ให้บริการ) แล้วเรียกซ้ำ — ดูด้านล่าง
no_carriersไม่มีบริษัทใดมีการเดินที่ตรวจสอบแล้วสำหรับเส้น + รัฐนั้นถอยไปใช้ quote_insurance
launch_failedตัวแทนไม่สามารถเริ่มได้ไม่มีอะไรถึงบริษัทใด — การลองใหม่ปลอดภัย

ตัวอย่าง: รถยนต์

ครัวเรือนในเฟรสโนยืนยันตัวเลขของ GEICO เอง โปรไฟล์มีข้อเท็จจริงที่ แบบฟอร์มของ GEICO ยืนยัน (ความเป็นเจ้าของ ช่วงเวลาซื้อ ประกันก่อนหน้า อายุเมื่อได้ใบขับขี่ครั้งแรก…); identity คือผู้สมัครจริง; คำขอคือแกนเดียวกันสี่แกนกับ quote_insurance.

{
  "profile": {
    "zip_code": "93722",
    "dob": "1954-07-02",
    "gender": "Male",
    "marital_status": "Married",
    "education": "Bachelors",
    "employment_status": "Employed",
    "occupation": "Accountant or CPA",
    "home_ownership_status": "Own",
    "prior_insurance": {"insured": true, "limits": "not sure"},
    "auto": {
      "vehicles": [{
        "year": 2024, "make": "Ford", "model": "Maverick",
        "ownership": "Financed", "annual_mileage": 11000,
        "primary_use": "pleasure", "purchase_date": "2026-08"
      }],
      "drivers": [{
        "relation": "self", "age_first_licensed": 16,
        "years_licensed_outside_us": 0, "defensive_driving_course": true,
        "accidents": [], "violations": []
      }]
    }
  },
  "identity": {
    "first_name": "Cornelius", "last_name": "Beaumont", "dob": "1954-07-02",
    "street": "4381 W Spruce Ave", "city": "Fresno", "zip_code": "93722",
    "email": "cornelius.beaumont@example.com", "phone": "559-555-0164"
  },
  "lines": {"auto": {"bi": "100/300", "pd": 100, "coll_deductible": 500, "comp_deductible": 500}},
  "carriers": ["geico"],
  "user_authorization": "yes, go ahead and get me GEICO's real quote"
}
{
  "status": "in_progress",
  "authorization_recorded": true,
  "agents": [
    {
      "carrier_key": "geico",
      "carrier": "GEICO",
      "method": "browser_agent",
      "detail": "deterministic Foresee agent completing the carrier's own quote flow with the user's details",
      "eta_seconds": 480
    }
  ],
  "skipped": [],
  "note": "1 carrier(s) are being quoted live. Collect results by calling this tool again with the same arguments after a few minutes."
}

การเรียกซ้ำด้วยอาร์กิวเมนต์เดียวกันในภายหลังจะเก็บการเดินที่เสร็จสิ้น เบี้ยประกันคือสตริงของหน้าเอง; breakdown คือฉลากของหน้าเอง (GEICO พิมพ์สองแพ็กเกจเคียงข้างกัน); term_months ระบุว่าตัวเลข ครอบคลุมอะไร — $857.80 ต่อ 6 เดือน ไม่ใช่ต่อเดือน

{
  "status": "complete",
  "agents": [
    {
      "carrier_key": "geico",
      "carrier": "GEICO",
      "method": "browser_agent",
      "status": "complete",
      "quote": {
        "premium": "$857.80",
        "currency": "USD",
        "term_months": 6,
        "quote_number": null,
        "breakdown": {
          "Less Coverage": "$857.80",
          "More Coverage": "$870.70"
        },
        "evidence_recorded": true
      }
    }
  ]
}