Fat Agent Standard / Insurance

v1.0

Underwriting

Represents the insurance-specific questions, answers, evidence, requirements, risk findings, and underwriting results used to evaluate an insurance risk.

Underwriting MUST reference other Fat Agent Standard objects rather than duplicate their underlying data. Questions are selected by line, product, carrier, and prior answers. Conditional rules belong on Product.

Identity

underwriting_id and line_of_business are required. carrier_id, product_id, application_id, quote_id, and policy_id are optional so the same structure can attach to a carrier, product, transaction, or issued contract. Health insurance and group insurance are outside Fat Agent Standard v1.0.

FieldTypeRequiredDescription
underwriting_idstringYes

Unique identifier for the Underwriting object

line_of_businessenumYes

Insurance line being evaluated

Allowed: life, annuity, long_term_care, disability, personal_auto, property, personal_umbrella, commercial, other

line_of_business_descriptionstringYes*

Custom value when line_of_business is other. Required when line_of_business is other. MUST NOT be set otherwise.

product_typeenumNo

Standardized product classification. MUST be valid for the selected line_of_business.

Allowed: term_life, whole_life, universal_life, indexed_universal_life, guaranteed_universal_life, final_expense, other, fixed_annuity, myga, fixed_indexed_annuity, spia, variable_annuity, traditional_ltc, hybrid_ltc, short_term_disability, long_term_disability, standard_auto, non_standard_auto, classic_collectible_auto, motorcycle, recreational_vehicle, homeowners, condo, renters, dwelling_fire, mobile_manufactured_home, flood, personal_umbrella, businessowners, commercial_package, commercial_property, general_liability, commercial_auto, workers_compensation, commercial_umbrella, professional_liability, errors_omissions, directors_officers, employment_practices_liability, cyber, inland_marine, builders_risk, equipment_breakdown, crime, bonds

product_type_descriptionstringYes*

Custom value when product_type is other. Required when product_type is other. MUST NOT be set otherwise.

carrier_idstringNo

ID of the issuing Carrier

product_idstringNo

ID of the carrier Product

application_idstringNo

Related Application

quote_idstringNo

Related Quote

policy_idstringNo

Related Policy

Subject

Every Underwriting object evaluates one subject. A transaction MAY contain multiple Underwriting objects when multiple subjects require separate evaluation.

FieldTypeRequiredDescription
subject_typeenumYes

Type of Standard object being evaluated

Allowed: person, organization, vehicle, property, application, policy, other

subject_type_descriptionstringYes*

Custom value when subject_type is other. Required when subject_type is other. MUST NOT be set otherwise.

subject_idstringYes

ID of the Standard object being evaluated

Questions

questions[] stores the questions that were actually asked and the answers received. Conditional follow-up rules belong on Product, not on the completed Underwriting record. answer MUST correspond to answer_type. Existing Person, Vehicle, Property, Claim / Loss, and PriorPolicy facts SHOULD be referenced rather than re-asked.

FieldTypeRequiredDescription
question_idstringYes*

Unique identifier for the question record

question_codestringYes*

Standardized Fat Agent question identifier

carrier_question_codestringNo

Carrier-specific question identifier

categoryenumYes*

Question category

Allowed: medical, tobacco, medication, family_history, driving, financial, occupation, aviation, avocation, criminal_legal, foreign_travel, residency, property_hazard, vehicle_use, commercial_operations, loss_history, prior_insurance, eligibility, replacement, other

category_descriptionstringYes*

Custom value when category is other. Required when category is other. MUST NOT be set otherwise.

question_textstringYes*

Human-readable question

answer_typeenumYes*

Declared type of the answer value

Allowed: boolean, string, number, integer, date, single_select, multi_select, other

answer_type_descriptionstringYes*

Custom value when answer_type is other. Required when answer_type is other. MUST NOT be set otherwise.

answerboolean | string | number | array[string] | nullNo

Answer value. MUST correspond to answer_type.

answer_datestring (date)No

Date the answer was provided

answered_by_typeenumNo

Who supplied the answer

Allowed: applicant, insured, agent, carrier, third_party, system, other

answered_by_type_descriptionstringYes*

Custom value when answered_by_type is other. Required when answered_by_type is other. MUST NOT be set otherwise.

answered_by_idstringNo

ID of the Person, Organization, Producer, system, or other source that supplied the answer

source_typeenumNo

Provenance of the answer

Allowed: applicant, agent, carrier, carrier_api, third_party, report, document, imported_data, calculated, system, other

source_type_descriptionstringYes*

Custom value when source_type is other. Required when source_type is other. MUST NOT be set otherwise.

source_idstringNo

Identifier of the source record or system

source_datestring (date)No

Date the source supplied the answer

notesstringNo

Additional notes about the question or answer

Conditions

conditions[] identifies known underwriting conditions. The Standard identifies the condition. Product rules determine whether it is a knockout, rating, modified benefit, referral, or approval.

FieldTypeRequiredDescription
condition_idstringYes*

Unique identifier for the condition record

condition_codestringYes*

Standardized condition identifier

carrier_condition_codestringNo

Carrier-specific condition identifier

condition_namestringYes*

Human-readable condition name

condition_categoryenumYes*

Condition category

Allowed: cardiovascular, cancer, respiratory, neurological, renal, liver, endocrine, diabetes, mental_behavioral, musculoskeletal, autoimmune, infectious, substance_use, functional_cognitive, other

condition_category_descriptionstringYes*

Custom value when condition_category is other. Required when condition_category is other. MUST NOT be set otherwise.

statusenumYes*

Current condition status

Allowed: active, history, resolved, in_treatment, unknown, other

status_descriptionstringYes*

Custom value when status is other. Required when status is other. MUST NOT be set otherwise.

diagnosis_datestring (date)No

Date of diagnosis

onset_datestring (date)No

Date of onset

treatment_end_datestring (date)No

Date treatment ended

resolved_datestring (date)No

Date the condition resolved

source_typeenumNo

Provenance of the condition

Allowed: applicant, agent, carrier, carrier_api, third_party, report, document, imported_data, calculated, system, other

source_type_descriptionstringYes*

Custom value when source_type is other. Required when source_type is other. MUST NOT be set otherwise.

source_idstringNo

Identifier of the source record or system

source_datestring (date)No

Date the source supplied the condition

notesstringNo

Additional notes about the condition

Evidence / Requirements

requirements[] represents underwriting evidence requested, received, or reviewed. Evidence MAY reference a Document using document_id. Use of credit-based insurance scores remains subject to applicable law and carrier rules.

FieldTypeRequiredDescription
requirement_idstringYes*

Unique identifier for the requirement

requirement_typeenumYes*

Type of evidence or requirement

Allowed: mvr, mib, prescription_history, medical_records, aps, paramed_exam, labs, financial_documentation, inspection, replacement_cost_estimate, loss_runs, insurance_score, credit_based_insurance_score, motor_vehicle_report, identity_verification, proof_of_ownership, proof_of_prior_insurance, questionnaire, supplemental_application, document, other

requirement_type_descriptionstringYes*

Custom value when requirement_type is other. Required when requirement_type is other. MUST NOT be set otherwise.

statusenumYes*

Current requirement status

Allowed: required, requested, ordered, pending, received, reviewed, waived, cancelled, other

status_descriptionstringYes*

Custom value when status is other. Required when status is other. MUST NOT be set otherwise.

requested_datestring (date)No

Date the requirement was requested

received_datestring (date)No

Date the requirement was received

reviewed_datestring (date)No

Date the requirement was reviewed

document_idstringNo

Related Document / Evidence

providerstringNo

Vendor or system that supplied the evidence

reference_idstringNo

Provider or carrier reference for the requirement

notesstringNo

Additional notes about the requirement

Findings

findings[] describes material discoveries from questions, reports, evidence, carrier review, or automated evaluation. A finding does not by itself determine the final underwriting decision.

FieldTypeRequiredDescription
finding_idstringYes*

Unique identifier for the finding

finding_typeenumYes*

Type of finding

Allowed: medical, medication, driving, financial, occupation, property, vehicle, loss_history, prior_insurance, commercial_operations, eligibility, data_discrepancy, other

finding_type_descriptionstringYes*

Custom value when finding_type is other. Required when finding_type is other. MUST NOT be set otherwise.

severityenumNo

Severity of the finding

Allowed: informational, low, moderate, high, critical, other

severity_descriptionstringYes*

Custom value when severity is other. Required when severity is other. MUST NOT be set otherwise.

source_typeenumNo

Provenance of the finding

Allowed: applicant, agent, carrier, carrier_api, third_party, report, document, imported_data, calculated, system, other

source_type_descriptionstringYes*

Custom value when source_type is other. Required when source_type is other. MUST NOT be set otherwise.

source_idstringNo

Identifier of the source record or system

source_datestring (date)No

Date the source supplied the finding

descriptionstringYes*

What was discovered

Decision

decision represents the underwriting result when one exists. Preserve the carrier decision without independently changing or reinterpreting it. risk_class is a string because classes vary by carrier and line.

FieldTypeRequiredDescription
statusenumYes*

Underwriting result

Allowed: pending, approved, approved_with_changes, preferred, standard, rated, modified, referred, ineligible, declined, withdrawn, other

status_descriptionstringYes*

Custom value when status is other. Required when status is other. MUST NOT be set otherwise.

risk_classstringNo

Standardized or carrier-provided risk classification

risk_class_descriptionstringNo

Additional carrier-specific explanation of the risk class

decision_datestring (date)No

Date the decision was made

reason_codesarray[string]No

Carrier or Standard reason codes supporting the decision

notesstringNo

Additional decision notes

Adjustments

adjustments[] represents underwriting modifications applied because of the evaluated risk. They MUST remain distinguishable from Coverage itself. coverage_id MAY identify a specific Coverage affected by the adjustment.

FieldTypeRequiredDescription
adjustment_idstringYes*

Unique identifier for the adjustment

adjustment_typeenumYes*

Type of underwriting modification

Allowed: table_rating, flat_extra, surcharge, credit, discount, exclusion, modified_benefit, modified_limit, modified_deductible, other

adjustment_type_descriptionstringYes*

Custom value when adjustment_type is other. Required when adjustment_type is other. MUST NOT be set otherwise.

valuenumber | stringNo

Numeric or string value describing the adjustment

unitenumNo

Unit for the adjustment value

Allowed: percentage, currency, table, basis_points, text, other

unit_descriptionstringYes*

Custom value when unit is other. Required when unit is other. MUST NOT be set otherwise.

reasonstringNo

Why the adjustment was applied

coverage_idstringNo

Coverage affected by the adjustment

External References

external_references maps the Underwriting object to identifiers from carriers, underwriting engines, AMS records, or third-party report systems.

FieldTypeRequiredDescription
systemstringYes*

External system

reference_idstringYes*

Identifier assigned by that system

reference_typestringNo

Type of reference

Line of Business and Product Types

product_type MUST be valid for the selected line_of_business when supplied. Health insurance and group insurance are outside Fat Agent Standard v1.0. When line_of_business is other, line_of_business_description MUST be supplied.

Line of BusinessAllowed product_type
lifeterm_life, whole_life, universal_life, indexed_universal_life, guaranteed_universal_life, final_expense, other
annuityfixed_annuity, myga, fixed_indexed_annuity, spia, variable_annuity, other
long_term_caretraditional_ltc, hybrid_ltc, other
disabilityshort_term_disability, long_term_disability, other
personal_autostandard_auto, non_standard_auto, classic_collectible_auto, motorcycle, recreational_vehicle, other
propertyhomeowners, condo, renters, dwelling_fire, mobile_manufactured_home, flood, other
personal_umbrellapersonal_umbrella, other
commercialbusinessowners, commercial_package, commercial_property, general_liability, commercial_auto, workers_compensation, commercial_umbrella, professional_liability, errors_omissions, directors_officers, employment_practices_liability, cyber, inland_marine, builders_risk, equipment_breakdown, crime, bonds, other
otherother

Subject Types

subject_type identifies the Fat Agent Standard object being evaluated. Underwriting MUST reference that object rather than duplicate it.

Line of BusinessAllowed product_type
personPerson
organizationOrganization
vehicleVehicle
propertyProperty
applicationApplication
policyPolicy
otherRequires subject_type_description

Validation Rules

  1. underwriting_id, line_of_business, subject_type, and subject_id MUST be supplied.
  2. Questions, conditions, evidence, findings, decisions, and adjustments are optional because an Underwriting record MAY be created before those items exist.
  3. When an enum value is other, the companion {field}_description field is required and MUST be a non-empty string. That companion field MUST NOT be set unless the enum value is other.
  4. product_type MUST be valid for the selected line_of_business when supplied.
  5. Health insurance and group insurance MUST NOT appear on Underwriting.
  6. Each question requires question_id, question_code, category, question_text, and answer_type.
  7. Question answer MUST match the declared answer_type.
  8. Existing Standard-object facts SHOULD be referenced rather than unnecessarily duplicated as underwriting questions.
  9. Conditions identify underwriting facts. They do not contain universal carrier eligibility rules.
  10. Product and carrier rules determine knockouts, eligibility, conditional questions, and required evidence.
  11. Evidence requirements MAY reference Document objects using document_id.
  12. Findings MUST remain distinguishable from the final underwriting decision.
  13. Adjustments MUST remain distinguishable from Coverage itself.
  14. Historical underwriting data MUST NOT be overwritten merely because a later decision, requirement, or finding exists.
  15. Source and provenance SHOULD be preserved when data comes from a report, API, carrier, applicant, agent, calculation, or third party.
  16. Dates MUST use ISO 8601 date format (YYYY-MM-DD).