Fat Agent Standard / Insurance

v1.0

Product

Represents a carrier's insurance product and the standardized characteristics, availability, coverages, benefits, underwriting program, and contractual product features associated with it.

One Product object represents one identifiable carrier product or version. Product describes what the insurance product is. It does not calculate a price for a specific applicant.

Identity

product_id, carrier_id, product_name, line_of_business, product_type, and status are required. product_code is a carrier identifier, not an Adapter Layer mapping. Health insurance and group insurance are outside Fat Agent Standard v1.0.

FieldTypeRequiredDescription
product_idstringYes

Unique Fat Agent Standard identifier

carrier_idstringYes

Carrier that offers the product

product_namestringYes

Carrier-facing or market-facing product name

product_codestringNo

Optional carrier product code

line_of_businessenumYes

Insurance line

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_typeenumYes

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.

versionstringNo

Carrier or product version identifier

statusenumYes

Current product status

Allowed: draft, active, closed_to_new_business, discontinued, replaced, suspended, other

status_descriptionstringYes*

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

Availability

Availability describes where and to whom the product is offered. jurisdictions SHOULD use ISO 3166-2 subdivision codes such as US-OH. This does not represent producer licensing or appointment.

FieldTypeRequiredDescription
jurisdictionsarray[string]No

Jurisdictions where the product is available

minimum_issue_ageintegerNo

Minimum whole-number issue age

maximum_issue_ageintegerNo

Maximum whole-number issue age

effective_datestring (date)No

Date the product became available

discontinue_datestring (date)No

Date the product was or will be discontinued

Product Parameters

These fields describe broad contractual product boundaries, not rating calculations. currency MUST use ISO 4217 and is required when any monetary Product Parameter is supplied. premium_types describe how the product accepts premium. They do not calculate premium.

FieldTypeRequiredDescription
minimum_face_amountnumberNo

Minimum face amount. Primarily Life.

maximum_face_amountnumberNo

Maximum face amount. Primarily Life.

minimum_premiumnumberNo

Minimum premium accepted by the product

maximum_premiumnumberNo

Maximum premium accepted by the product

currencystringNo

ISO 4217 currency code. Required when any monetary Product Parameter is supplied.

premium_typesarray[enum]No

How the product accepts or structures premium

Allowed: recurring, single_premium, flexible, limited_pay, level, other

premium_type_descriptionstringYes*

Custom value when premium_types contains other. Required when premium_types contains other. MUST NOT be set otherwise.

Coverages

coverages[] describes which standardized Coverage types the Product supports. It does not embed issued Coverage objects. Use the Coverage v1.0 coverage_type taxonomy. Carrier proprietary names belong in external mappings.

FieldTypeRequiredDescription
coverage_typestringYes*

Standardized Coverage type supported by the Product

coverage_type_descriptionstringYes*

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

availabilityenumYes*

Whether the coverage is required, optional, conditional, or included

Allowed: required, optional, conditional, included, other

availability_descriptionstringYes*

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

minimum_limitnumberNo

Minimum supported limit

maximum_limitnumberNo

Maximum supported limit

minimum_deductiblenumberNo

Minimum supported deductible

maximum_deductiblenumberNo

Maximum supported deductible

Underwriting Program

Product identifies the underwriting program and question sets. Completed questions, answers, evidence, findings, and decisions belong in Underwriting. Product v1.0 does not embed a proprietary rules engine.

FieldTypeRequiredDescription
underwriting_typeenumYes*

Underwriting program used by the product

Allowed: fully_underwritten, accelerated_underwriting, simplified_issue, guaranteed_issue, knockout, automated, manual, hybrid, other

underwriting_type_descriptionstringYes*

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

underwriting_question_set_idsarray[string]No

Standardized underwriting question sets associated with the product

Life

life SHOULD be supplied only when the product is Life. term_periods are available term durations in years. premium_structure describes product design; it does not calculate premium.

FieldTypeRequiredDescription
term_periodsarray[integer]No

Available term durations in years

death_benefit_optionsarray[enum]No

Available death-benefit designs

Allowed: level, increasing, return_of_premium, other

death_benefit_option_descriptionstringYes*

Custom value when death_benefit_options contains other. Required when death_benefit_options contains other. MUST NOT be set otherwise.

cash_value_productbooleanNo

Whether the product builds cash value

premium_structureenumNo

Product premium design

Allowed: level, flexible, single_premium, limited_pay, other

premium_structure_descriptionstringYes*

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

Annuity

annuity SHOULD be supplied only when the product is an Annuity. Declared rates describe product terms. They are not quote calculations. Percentages use percentage-point values: 9 means 9%.

FieldTypeRequiredDescription
bonus_percentagenumberNo

Optional product premium bonus. 5 means 5%.

income_optionsarray[enum]No

Available income options

Allowed: guaranteed_lifetime_income, single_life, joint_life, period_certain, systematic_withdrawal, annuitization, other

income_option_descriptionstringYes*

Custom value when income_options contains other. Required when income_options contains other. MUST NOT be set otherwise.

Surrender Schedule

surrender_schedule[] describes declared surrender charges by contract year. Percentages use percentage-point values.

FieldTypeRequiredDescription
yearintegerYes*

Contract year

surrender_charge_percentagenumberYes*

Surrender charge for that year. 9 means 9%.

Strategies

strategies[] describe declared crediting terms for indexed or fixed accounts. Rates are product terms, not calculated quotes.

FieldTypeRequiredDescription
strategy_idstringYes*

Unique identifier for the strategy

strategy_namestringYes*

Carrier strategy name

strategy_typeenumYes*

Strategy classification

Allowed: indexed, fixed, other

strategy_type_descriptionstringYes*

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

index_namestringNo

Index name when strategy_type is indexed

index_identifierstringNo

External index identifier or ticker

crediting_methodenumNo

Declared crediting method

Allowed: annual_point_to_point, multi_year_point_to_point, monthly_point_to_point, monthly_sum, monthly_average, daily_average, fixed_interest, other

crediting_method_descriptionstringYes*

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

participation_ratenumberNo

Declared participation rate. 100 means 100%.

cap_ratenumberNo

Declared cap rate

spread_ratenumberNo

Declared spread rate

floor_ratenumberNo

Declared floor rate

declared_ratenumberNo

Declared fixed interest rate

Property & Casualty

property_casualty SHOULD be supplied when relevant to Personal Auto, Property, Personal Umbrella, or Commercial. supported_limits and supported_deductibles are product options, not selected Coverage values.

FieldTypeRequiredDescription
supported_limitsarray[number]No

Numeric limits the product supports

supported_deductiblesarray[number]No

Numeric deductibles the product supports

Eligibility Characteristics

Lightweight product-level eligibility descriptors. Use this only for genuine product characteristics. Detailed underwriting questions belong in Underwriting. Proprietary rating factors belong in FatQuote.

FieldTypeRequiredDescription
namestringYes*

Characteristic name

valuestring | number | boolean | array[string]Yes*

Characteristic value

External References

external_references preserve carrier or platform identifiers without putting Adapter Layer mapping logic into the Standard.

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. 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

Validation Rules

  1. One Product object represents one identifiable carrier product or version.
  2. product_id, carrier_id, product_name, line_of_business, product_type, and status MUST be supplied.
  3. product_type MUST be valid for the selected line_of_business.
  4. 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.
  5. Health insurance and group insurance MUST NOT appear on Product.
  6. currency MUST use ISO 4217 and is required when any monetary Product Parameter is supplied.
  7. Product availability describes where a product is offered. It does not represent producer licensing or appointment.
  8. Product Coverage configuration describes what the product supports. Selected or issued protection belongs in Coverage objects.
  9. Underwriting configuration identifies the program and question sets. Completed answers belong in Underwriting.
  10. Product MAY describe declared contractual rates such as participation rates, caps, spreads, floors, fixed rates, bonuses, and surrender schedules.
  11. Product MUST NOT contain proprietary quote calculations, rating tables, rating factors, carrier credentials, API request mappings, or Adapter Layer transformation logic.
  12. life SHOULD be supplied only for Life products. annuity SHOULD be supplied only for Annuity products. property_casualty SHOULD be supplied only for Personal Auto, Property, Personal Umbrella, or Commercial.
  13. Percentage fields use percentage-point values: 9 means 9%.
  14. Dates MUST use ISO 8601 date format (YYYY-MM-DD).