Skip to main content

Claim schema

The Claim document (packages/shared/src/claim.ts) is the contract between the generator, the stores, the claim screens, the chat tools and every embedding host. This is its input shape: what a host or the generator must supply. Fields marked required must be present; everything else is filled with an empty, honest default when the document is parsed, so every consumer still receives a complete claim.

Money is a plain number in the claim's currency. Dates are YYYY-MM-DD strings. "Required" inside an optional section means required when that section is supplied. See The Claim contract for why it is shaped this way.

Generated from the code

This page is generated by docusaurus/scripts/generate-reference.ts from the source it describes. Edit the source, then run npm run docs:reference.

Top-level sections​

SectionRequiredWhat it holds
idyesClaim reference, e.g. CP-AUT-260381
lineOfBusinessyesauto · property · workers_compensation · general_liability
titleyesBanner title, e.g. "Priya Natarajan v Halden Logistics Ltd"
statusyesfiled · under_review · approved · paid · denied · closed · reopened · reclosed
currencyyesGBP · USD
claimantyesobject
incidentyesobject
policyyesobject
scenarioShort slug naming the demo scenario this claim exists to exercise
restrictedboolean
productProduct hierarchy shown under KEY FACTS
clientobject
lossobject
diagnosisobject
adjusterobject
statusHistorylist
datesobject
financialsobject
paymentslist
reimbursementslist
recoveryobject
involvementslist
serviceProviderslist
litigationobject
investigationobject
riskFlagslist
complianceobject
feedbackobject
diarylist
taskslist
documentslist
miobject
metadataobject

Sections in detail​

id​

Required. Claim reference, e.g. CP-AUT-260381

Type: string.

lineOfBusiness​

Required.

Type: auto · property · workers_compensation · general_liability.

title​

Required. Banner title, e.g. "Priya Natarajan v Halden Logistics Ltd"

Type: string.

status​

Required.

Type: filed · under_review · approved · paid · denied · closed · reopened · reclosed.

currency​

Required.

Type: GBP · USD.

claimant​

Required.

FieldTypeRequiredNotes
claimant.namestringyes
claimant.typeindividual · organisationyes
claimant.dateOfBirthdate (YYYY-MM-DD)
claimant.contactobject
claimant.contact.phonestring
claimant.contact.emailstring
claimant.contact.addressobject
claimant.contact.address.line1string
claimant.contact.address.line2string
claimant.contact.address.citystring
claimant.contact.address.regionstring
claimant.contact.address.postalCodestring
claimant.contact.address.countrystring
claimant.relationshipToPolicyholderstringDefault "".
claimant.representationobject
claimant.representation.firmstring
claimant.representation.contactstring
claimant.wageobject
claimant.wage.weeklyWagenumber
claimant.wage.occupationstring
claimant.wage.employerstring
claimant.wage.hoursPerWeeknumber
claimant.injuryobject
claimant.injury.bodyPartstring
claimant.injury.natureOfInjurystring
claimant.injury.severityminor · moderate · severe · catastrophic
claimant.injury.descriptionstring
claimant.returnToWorkobject
claimant.returnToWork.statusnot_applicable · off_work · light_duties · returned · unable
claimant.returnToWork.expectedDatedate (YYYY-MM-DD)
claimant.returnToWork.actualDatedate (YYYY-MM-DD)
claimant.returnToWork.restrictionsstring

incident​

Required.

FieldTypeRequiredNotes
incident.dateOfLossdate (YYYY-MM-DD)yes
incident.timeOfLossstring
incident.dateReporteddate (YYYY-MM-DD)yes
incident.dateReceivedstringDefault "".
incident.occurrenceNumberstringDefault "".
incident.locationobject
incident.location.descriptionstringDefault "".
incident.location.addressobject
incident.location.address.line1string
incident.location.address.line2string
incident.location.address.citystring
incident.location.address.regionstring
incident.location.address.postalCodestring
incident.location.address.countrystring
incident.descriptionstringyesNarrative of what happened
incident.causestringDefault "".
incident.policeReferencestring
incident.weatherstring
incident.witnessesobject[]
incident.witnesses[].namestring
incident.witnesses[].contactstring
incident.witnesses[].statementstring

policy​

Required.

FieldTypeRequiredNotes
policy.policyNumberstringyes
policy.insuranceTypestringInsurance Types: health, life, auto, property, liability … Default "".
policy.policyTypestringPolicy Types: individual, group, commercial, fleet … Default "".
policy.insurerstringDefault "".
policy.policyholderobjectyes
policy.policyholder.namestringyes
policy.policyholder.typeindividual · organisationyes
policy.policyholder.contactobject
policy.policyholder.contact.phonestring
policy.policyholder.contact.emailstring
policy.policyholder.contact.addressobject
policy.policyholder.contact.address.line1string
policy.policyholder.contact.address.line2string
policy.policyholder.contact.address.citystring
policy.policyholder.contact.address.regionstring
policy.policyholder.contact.address.postalCodestring
policy.policyholder.contact.address.countrystring
policy.policyholder.dateOfBirthdate (YYYY-MM-DD)
policy.effectiveFromdate (YYYY-MM-DD)yes
policy.effectiveTodate (YYYY-MM-DD)yes
policy.stateactive · lapsed · cancelled · expired · pending_renewalyes
policy.policyClassstringPolicy Class: rating class / occupation class / property class Default "".
policy.coveragesobject[]
policy.coverages[].codestring
policy.coverages[].namestring
policy.coverages[].limitnumber or nullDefault null.
policy.coverages[].deductiblenumber or nullDefault null.
policy.coverages[].descriptionstring
policy.exclusionsstring[]Default [].
policy.endorsementsstring[]Default [].
policy.additionalInsuredstring[]Default [].
policy.scheduleItemsobject[]
policy.scheduleItems[].itemstring
policy.scheduleItems[].descriptionstring
policy.scheduleItems[].sumInsurednumber
policy.premiumobject
policy.premium.annualnumber
policy.premium.paidToDatenumber
policy.premium.outstandingnumber
policy.premium.paymentFrequencystring
policy.conditionsstring[]Policy conditions that could affect this claim (e.g. notification within 30 days) Default [].

scenario​

Short slug naming the demo scenario this claim exists to exercise

Type: string.

restricted​

Type: boolean.

product​

Product hierarchy shown under KEY FACTS

Type: string[].

client​

FieldTypeRequiredNotes
client.idstring
client.namestring
client.abbreviationstring
client.programmestringThe programme / scheme this claim is handled under
client.contactobject
client.contact.phonestring
client.contact.emailstring
client.contact.addressobject
client.contact.address.line1string
client.contact.address.line2string
client.contact.address.citystring
client.contact.address.regionstring
client.contact.address.postalCodestring
client.contact.address.countrystring
client.handlingRulesstring[]
client.slaDaysobject
client.slaDays.acknowledgenumber
client.slaDays.firstContactnumber
client.slaDays.reserveReviewnumber
client.authorityLimitnumberHandler authority limit set by this client

loss​

FieldTypeRequiredNotes
loss.typestring
loss.descriptionstring
loss.estimatedValuenumber
loss.itemsobject[]
loss.items[].descriptionstring
loss.items[].categorystring
loss.items[].amountnumber
loss.items[].coverageCodestring

diagnosis​

FieldTypeRequiredNotes
diagnosis.icd10object[]
diagnosis.icd10[].codestring
diagnosis.icd10[].descriptionstring
diagnosis.drgCodestring
diagnosis.treatingProviderstring
diagnosis.treatmentPlanstring
diagnosis.prognosisstring
diagnosis.maximumMedicalImprovementdate (YYYY-MM-DD)

adjuster​

FieldTypeRequiredNotes
adjuster.idstring
adjuster.firstNamestring
adjuster.lastNamestring
adjuster.teamstring
adjuster.teamLeaderstring
adjuster.dateAssigneddate (YYYY-MM-DD)
adjuster.authorityLimitnumber

statusHistory​

FieldTypeRequiredNotes
statusHistory[].statusfiled · under_review · approved · paid · denied · closed · reopened · reclosed
statusHistory[].datedate (YYYY-MM-DD)
statusHistory[].notestring

dates​

FieldTypeRequiredNotes
dates.madestringDefault "".
dates.receivedstringDefault "".
dates.assignedstringDefault "".
dates.instructionstringDefault "".
dates.closeddate (YYYY-MM-DD)
dates.denieddate (YYYY-MM-DD)
dates.reopeneddate (YYYY-MM-DD)

financials​

FieldTypeRequiredNotes
financials.reservesobject
financials.reserves.indemnitynumber
financials.reserves.expensenumber
financials.reserves.legalnumber
financials.paidobject
financials.paid.indemnitynumber
financials.paid.expensenumber
financials.paid.legalnumber
financials.byCoverageobject[]
financials.byCoverage[].coverageCodestring
financials.byCoverage[].reservenumber
financials.byCoverage[].paidnumber
financials.byCoverage[].recoverednumber
financials.byCoverage[].firstPaymentDatedate (YYYY-MM-DD)
financials.byCoverage[].lastPaymentDatedate (YYYY-MM-DD)

payments​

FieldTypeRequiredNotes
payments[].idstring
payments[].datedate (YYYY-MM-DD)
payments[].typeindemnity · expense · legal · reimbursement · reversal
payments[].coverageCodestring
payments[].payeestring
payments[].amountnumber
payments[].statuspending · issued · cleared · voided
payments[].methodstring
payments[].descriptionstring
payments[].approvedBystring
payments[].approvedDatedate (YYYY-MM-DD)

reimbursements​

FieldTypeRequiredNotes
reimbursements[].idstring
reimbursements[].providerstring
reimbursements[].invoiceReferencestring
reimbursements[].serviceStartdate (YYYY-MM-DD)
reimbursements[].serviceEnddate (YYYY-MM-DD)
reimbursements[].billednumber
reimbursements[].ppoDiscountnumber
reimbursements[].allowednumber
reimbursements[].paidnumber
reimbursements[].billStatusreceived · in_review · paid · disputed · unpaid

recovery​

FieldTypeRequiredNotes
recovery.subrogationobject
recovery.subrogation.potentialboolean
recovery.subrogation.targetstring
recovery.subrogation.amountSoughtnumber
recovery.subrogation.statusstring
recovery.salvageobject
recovery.salvage.potentialboolean
recovery.salvage.estimatedValuenumber
recovery.amountRecoverednumber

involvements​

FieldTypeRequiredNotes
involvements[].idstring
involvements[].roleclaimant · defendant · policyholder · insurer · solicitor · repairer · physician · hospital · pharmacy · expert · witness · court · employer · broker · contractor · loss_adjuster · other
involvements[].namestring
involvements[].organisationstring
involvements[].referencestring
involvements[].contactobject
involvements[].contact.phonestring
involvements[].contact.emailstring
involvements[].contact.addressobject
involvements[].contact.address.line1string
involvements[].contact.address.line2string
involvements[].contact.address.citystring
involvements[].contact.address.regionstring
involvements[].contact.address.postalCodestring
involvements[].contact.address.countrystring
involvements[].statusactive · settled · closed
involvements[].notesstring

serviceProviders​

FieldTypeRequiredNotes
serviceProviders[].idstring
serviceProviders[].typestring
serviceProviders[].namestring
serviceProviders[].registrationNumberstringNPI / licence / company number
serviceProviders[].contactobject
serviceProviders[].contact.phonestring
serviceProviders[].contact.emailstring
serviceProviders[].contact.addressobject
serviceProviders[].contact.address.line1string
serviceProviders[].contact.address.line2string
serviceProviders[].contact.address.citystring
serviceProviders[].contact.address.regionstring
serviceProviders[].contact.address.postalCodestring
serviceProviders[].contact.address.countrystring
serviceProviders[].onPanelboolean

litigation​

FieldTypeRequiredNotes
litigation.statusnone · pre_litigation · proceedings_issued · defended · trial_listed · settled · judgment
litigation.proceedingsobject[]
litigation.proceedings[].claimNumberstring
litigation.proceedings[].typestring
litigation.proceedings[].claimantstring
litigation.proceedings[].defendantstring
litigation.proceedings[].courtstring
litigation.proceedings[].issuedDatedate (YYYY-MM-DD)
litigation.proceedings[].nextHearingdate (YYYY-MM-DD)
litigation.proceedings[].nextHearingTypestring
litigation.appearancesobject[]
litigation.appearances[].datedate (YYYY-MM-DD)
litigation.appearances[].typestring
litigation.appearances[].outcomestring
litigation.counselstring

investigation​

FieldTypeRequiredNotes
investigation.coverageconfirmed · pending · disputed · declined
investigation.liabilityaccepted · denied · split · pending · not_applicable
investigation.liabilitySplitnumberPercentage attributed to the insured, when split
investigation.employmentconfirmed · pending · not_applicable
investigation.companyRecordsreceived · requested · not_applicable
investigation.medicalreceived · requested · not_applicable
investigation.findingsobject[]
investigation.findings[].datedate (YYYY-MM-DD)
investigation.findings[].summarystring
investigation.outstandingstring[]

riskFlags​

FieldTypeRequiredNotes
riskFlags[].codeLATE_REPORTING · PRIOR_CLAIMS_HISTORY · INCONSISTENT_STATEMENTS · DUPLICATE_INVOICE · PROVIDER_WATCHLIST · POLICY_INCEPTION_PROXIMITY · SOCIAL_MEDIA_CONTRADICTION · UNUSUAL_TREATMENT_PATTERN · REPAIR_COST_ABOVE_MARKET · NO_POLICE_REPORT
riskFlags[].severitylow · medium · high
riskFlags[].descriptionstring
riskFlags[].raisedOndate (YYYY-MM-DD)
riskFlags[].sourcestring

compliance​

FieldTypeRequiredNotes
compliance.jurisdictionstring
compliance.regulatoryDeadlinesobject[]
compliance.regulatoryDeadlines[].namestring
compliance.regulatoryDeadlines[].duedate (YYYY-MM-DD)
compliance.regulatoryDeadlines[].metboolean or null
compliance.sanctionsCheckobject
compliance.sanctionsCheck.performedboolean
compliance.sanctionsCheck.datedate (YYYY-MM-DD)
compliance.sanctionsCheck.flaggedboolean
compliance.auditNotesstring[]

feedback​

FieldTypeRequiredNotes
feedback.satisfactionScorenumber or null
feedback.complaintsobject[]
feedback.complaints[].datedate (YYYY-MM-DD)
feedback.complaints[].summarystring
feedback.complaints[].statusopen · resolved

diary​

FieldTypeRequiredNotes
diary[].idstring
diary[].datedate (YYYY-MM-DD)
diary[].authorstring
diary[].typenote · call · email · letter · meeting · system
diary[].contentstring

tasks​

FieldTypeRequiredNotes
tasks[].idstring
tasks[].dueDatedate (YYYY-MM-DD)
tasks[].categorystring
tasks[].namestring
tasks[].ownerstring
tasks[].statusopen · done · overdue
tasks[].criticalboolean

documents​

FieldTypeRequiredNotes
documents[].idstring
documents[].datedate (YYYY-MM-DD)
documents[].directioninbound · outbound
documents[].typestring
documents[].titlestring
documents[].fromstring
documents[].tostring
documents[].summarystringWhat the document says — the chat reads this in place of the file

mi​

FieldTypeRequiredNotes
mi.initialReportedboolean
mi.resolutionReportedboolean
mi.costsReportedboolean

metadata​

FieldTypeRequiredNotes
metadata.generatedBystringDefault "".
metadata.generatedAtstringDefault "".
metadata.taxonomyVersionstringDefault "".
metadata.scenarioNotesstringWhat this claim is designed to demonstrate in Claimpilot Chat Default "".
metadata.demoobject
metadata.demo.hintstringOne sentence shown as a floating hint on the claim screen, e.g. "Try Validate policy — cover lapsed a week before the loss."
metadata.demo.showcasesstring[]Capability ids this claim is built to demonstrate
metadata.demo.gotchasstring[]The traps planted in the record, in plain words, so a presenter knows what the assistant should find