Skip to main content
The Field Model V1 Events API allows you to manage events (claims and incidents) with company-configured dynamic fields. Unlike the standard Events API where fields are fixed, Field Model V1 companies define their own fields per entity type — the set of available fields is configured per company. Key Concepts:
  • Events have two types: claim and incident. Permissions are type-specific.
  • Fields are dynamically defined per company. Use the Configuration endpoint to discover available fields and their types.
  • The request body for create and update is a flat JSON object where keys are field referenceIds (e.g., lossDescription, lossDate).
  • Responses include a fieldModelV1Data object containing all field values (including base fields like eventType and eventCoverageType).
  • Updates are full replacements — include all fields you want the event to have, not just the changed ones.

Base Fields

These fields are handled specially by the API:
FieldRequiredDescription
eventTypeYesclaim or incident
eventCoverageTypeYesCoverage type ID
eventInsuredsYesArray of exposure IDs
eventStatusNoopen (default) or closed
eventReferenceIdNoAuto-generated if omitted
policyIdNoAssociated policy ID

Configuration

Call GET /v1/events/configuration to get a JSON Schema of available fields for your company. The schema includes:
  • Field types: string, number, boolean, object
  • Option Set fields: include an enum array of valid values
  • Required fields: listed in the required array

Field Types

FMV1 TypeJSON TypeDescription
TextstringFree-text string
NumbernumberNumeric value
BooleanbooleanTrue/false
Option Setstring or numberConstrained to enum values
ObjectobjectNested object

API Endpoints


Permissions

Permissions are type-specific for create, update, and delete operations.
OperationRequired Permission
Get Configurationcompany.event:export
List Eventscompany.event:export
Get Eventcompany.event:export
Create Eventcompany.claim:create or company.incident:create
Update Eventclaim:update or incident:update
Delete Eventcompany.claim:delete or company.incident:delete

Example Create Request

{
  "eventType": "claim",
  "eventCoverageType": "550e8400-e29b-41d4-a716-446655440050",
  "eventInsureds": ["550e8400-e29b-41d4-a716-446655440200"],
  "policyId": "550e8400-e29b-41d4-a716-446655440100",
  "lossDescription": "Water damage to building"
}

Example Response

{
  "id": "550e8400-e29b-41d4-a716-446655440300",
  "companyId": "550e8400-e29b-41d4-a716-446655440000",
  "policyId": "550e8400-e29b-41d4-a716-446655440100",
  "lawsuitId": null,
  "fieldModelV1Data": {
    "eventType": "claim",
    "eventCoverageType": "General Liability",
    "lossDescription": "Water damage to building"
  },
  "createdAt": "2025-01-15T10:30:00.000Z",
  "createdBy": "google-oauth2|123456789",
  "updatedAt": null,
  "updatedBy": null
}