Fat Agent Standard / Core Objects

v1.0

Application

Represents an insurance application or submission — the transaction layer that connects people, organizations, products, coverages, risks, underwriting, producers, and documents.

Application MUST reference other Fat Agent Standard objects rather than duplicate their underlying data.

Identity

FieldTypeRequiredDescription
application_idstringYes

Unique identifier for the Application

application_numberstringNo

Carrier, agency, or system-assigned application number

quote_idstringNo

ID of the Quote that led to this Application

application_typeenumYes

Type of insurance transaction

Allowed: new_business, replacement, renewal, rewrite, endorsement, reinstatement, other

application_type_descriptionstringYes*

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

statusenumYes

Current status of the Application

Allowed: draft, in_progress, ready_to_submit, submitted, received, under_review, requirements_outstanding, approved, approved_with_changes, declined, withdrawn, issued, not_taken, closed

created_datestring (date-time)No

Date/time the Application was created

submitted_datestring (date-time)No

Date/time the Application was submitted

effective_datestring (date)No

Requested or assigned effective date

expiration_datestring (date)No

Expiration date when applicable

Products

products is a required array containing one or more insurance products being applied for. Multiple products on one Application MAY issue as multiple Policy objects. Each Policy represents exactly one issued insurance contract or policy number. Risk-specific information MUST NOT be duplicated inside Application. Products reference risk objects with risk_ids and Underwriting objects with underwriting_ids. The referenced objects contain the actual data.

FieldTypeRequiredDescription
line_of_businessenumYes

Broad insurance line

Allowed: life, annuity, long_term_care, disability, health, 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_typestringYes

Standardized product classification within the line of business. MUST be valid for the selected line_of_business.

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 Carrier

product_idstringNo

ID of the specific carrier Product

coverage_idsarray[string]No

Coverage objects associated with this product

risk_idsarray[string]No

Risk objects associated with this product, such as Vehicle, Property, Person, or Organization

underwriting_idsarray[string]No

Underwriting objects associated with this product

Parties

parties is an optional array connecting Person or Organization objects to the Application. Each party MUST contain person_id OR organization_id, but MUST NOT contain both. A Person or Organization MUST NOT be embedded inside Application.

FieldTypeRequiredDescription
person_idstringNo

ID of related Person. Required when organization_id is not supplied.

organization_idstringNo

ID of related Organization. Required when person_id is not supplied.

roleenumYes

Party's role in the Application

Allowed: applicant, insured, named_insured, additional_insured, owner, payer, beneficiary, annuitant, joint_insured, driver, excluded_driver, claimant, authorized_signer, other

role_descriptionstringYes*

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

Producers

producers is an optional array connecting Producer and Agency objects to the Application. At least producer_id or agency_id MUST be supplied for each entry.

FieldTypeRequiredDescription
producer_idstringNo

ID of the Producer

agency_idstringNo

ID of the Agency

roleenumYes

Producer/agency role

Allowed: writing_agent, servicing_agent, broker, agency, other

role_descriptionstringYes*

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

Documents

documents is an optional array referencing Document/Evidence objects associated with the Application. The actual document metadata and file information belong in the Document/Evidence object.

FieldTypeRequiredDescription
document_idstringYes

ID of related Document/Evidence object

External References

external_references is an optional array used to map the Application to identifiers from outside systems, such as carrier application numbers, policy administration IDs, AMS IDs, CRM IDs, or third-party platform identifiers.

FieldTypeRequiredDescription
systemstringYes

External system or source

reference_idstringYes

Identifier assigned by that system

reference_typestringNo

Type of external reference

Line of Business and Product Types

product_type MUST be valid for the selected line_of_business. When line_of_business is other, line_of_business_description MUST be supplied, product_type SHOULD be other, and product_type_description MUST describe the product.

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
healthindividual_health, group_health, medicare_supplement, medicare_advantage, supplemental_health, accident, critical_illness, 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. application_id MUST be a non-empty string.
  2. application_type MUST contain one of its defined values.
  3. status MUST contain one of its defined values.
  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. products MUST contain at least one Product.
  6. Multiple products and multiple lines of business MAY exist within one Application.
  7. Application MUST NOT require a one-to-one relationship with Policy. Application MUST NOT include policy_id or policy_number.
  8. Each resulting Policy represents exactly one issued insurance contract or policy number.
  9. One Application MAY result in multiple Policy objects when multiple products or contracts are issued.
  10. quote_id, when supplied, MUST be a non-empty string and MUST reference a Quote object.
  11. The lifecycle is Quote → Application → Policy. Each Policy will later reference application_id and quote_id for traceability.
  12. Every Product MUST contain a valid line_of_business.
  13. Every Product MUST contain a product_type valid for its selected line_of_business.
  14. When line_of_business is other, line_of_business_description MUST be supplied and product_type SHOULD be other.
  15. carrier_id MUST reference a Carrier object when supplied.
  16. product_id MUST reference a Product object when supplied.
  17. Every coverage_id MUST reference a Coverage object.
  18. Every risk_id MUST reference a valid Fat Agent Standard risk object.
  19. Every underwriting_id MUST reference an Underwriting object.
  20. Every Application party MUST reference either a Person OR an Organization, but not both.
  21. Every producer entry MUST contain at least producer_id or agency_id.
  22. Every document_id MUST reference a Document/Evidence object.
  23. Dates MUST use ISO 8601 formats: date-time for created_date and submitted_date, date (YYYY-MM-DD) for effective_date and expiration_date.
  24. Application MUST NOT duplicate data belonging to referenced Standard objects.
  25. Line-specific underwriting questions MUST remain in Underwriting rather than Application.