Product updates
New updates and improvements to the AI Insurance REST API.April 13 2026
FMV1 Policy Transaction API — Read Endpoints
AddedGET /api/v1/external/companies/{companyId}/policies/list— List policies with segment scope filtering, JSONB field filters, time travel, and paginationGET /api/v1/external/companies/{companyId}/policies/versions— Search across all policy versions (cross-version search)GET /api/v1/external/companies/{companyId}/policies/{policyId}/versions— List all versions for a single policy
segmentScope to filter by date range, filters for field-level JSONB queries, and detail=full to include complete segment data.
Configuration Rating Presets API
AddedGET /api/external/companies/{companyId}/configuration/rating/presets— List coverage limit presets with optional filtering by coverage type key or preset ID, sorting, and paginationPOST /api/external/companies/{companyId}/configuration/rating/presets— Create a coverage limit preset for a coverage type, with support for limits, defense settings, deductibles, and rating engine default amount configurationsDELETE /api/external/companies/{companyId}/configuration/rating/presets/{presetId}— Soft-delete a coverage limit preset by ID
Exposure Types API
AddedDELETE /api/external/companies/{companyId}/exposure-types/{exposureTypeId}— Permanently delete an exposure type and remove it from the company’s enabled types. Validates the type is not referenced by insureds (409) before deletion.
Coverage Types API
AddedDELETE /api/external/companies/{companyId}/coverage-types/{coverageTypeId}— Permanently delete a company-specific coverage type. Validates the type is not global (403), not enabled (409), and has no field associations (409) before deletion.
April 10 2026
Coverage Types API
AddedGET /api/external/companies/{companyId}/coverage-types— List all coverage types (global and company-specific) with optional label filteringPOST /api/external/companies/{companyId}/coverage-types— Create a company-specific coverage typePUT /api/external/companies/{companyId}/coverage-types/enabled— Replace the company’s enabled coverage types list wholesale
Exposure Types API
AddedGET /api/external/companies/{companyId}/exposure-types— List exposure types with optional label filteringPOST /api/external/companies/{companyId}/exposure-types— Create an exposure type and add it to the company’s enabled exposure types
Configuration Rating Outputs API
AddedGET /api/external/companies/{companyId}/configuration/rating/outputs— List rating output fields with filtering by ID, sorting, and paginationDELETE /api/external/companies/{companyId}/configuration/rating/outputs/{fieldId}— Delete a rating output field and soft-delete its associated smart tag
April 9 2026
FMV1 Policy Transaction API
The FMV1 Policy API has been rebuilt around an immutable transaction model. Policies are now managed through transaction endpoints rather than direct CRUD operations. AddedPOST /api/v1/external/companies/{companyId}/policies/transaction/new-business— Create a new policy via a NEW_BUSINESS transaction
POST /v1/policies, DELETE /v1/policies/{policyId})
are deprecated and will be removed in a future release. See Policy CRUD (Deprecated).
Configuration Rating Outputs API
AddedPOST /api/external/companies/{companyId}/configuration/rating/outputs— Create a rating output field (rating_engine_display) with auto-created smart tag
Configuration Rating Fields API
AddedDELETE /api/external/companies/{companyId}/configuration/rating/fields/{fieldId}— Delete a rating input field, its application field association, and its entry in the rating engine revision configGET /api/external/companies/{companyId}/configuration/rating/fields— List rating input fields with filtering by ID and entity type, sorting, and pagination
April 8 2026
Configuration Rating Fields API
AddedPOST /api/external/companies/{companyId}/configuration/rating/fields— Create a rating input field and associate it with an entity type and rating engine revision
Field Model V1 Quote Lifecycle Endpoints
AddedPOST /api/v1/external/companies/{companyId}/quotes/{quoteId}/bind— Bind a quote, creating a policyPOST /api/v1/external/companies/{companyId}/quotes/{quoteId}/send— Send a quote, transitioning status to “sent”
April 7 2026
Configuration Fields API
AddedGET /api/external/companies/{companyId}/configuration/fields— List entity fields with filtering by ID and entity name, sorting, and paginationPOST /api/external/companies/{companyId}/configuration/fields— Create a field definition and associate it with an entity type (events, insureds, policies)DELETE /api/external/companies/{companyId}/configuration/fields/{fieldId}— Delete a field and its entity association
/configuration/rating/ endpoints.
Field Model V1 Quotes API
AddedGET /api/v1/external/companies/{companyId}/quotes— List quotes with pagination, sorting, and submission filteringPOST /api/v1/external/companies/{companyId}/quotes— Create a quote with policy and exposure dataGET /api/v1/external/companies/{companyId}/quotes/{quoteId}— Get a single quotePUT /api/v1/external/companies/{companyId}/quotes/{quoteId}— Update a quote (full replacement of policy and exposures)DELETE /api/v1/external/companies/{companyId}/quotes/{quoteId}— Soft-delete a quoteGET /api/v1/external/companies/{companyId}/quotes/configuration— Get JSON Schemas for policy and exposure fields
quoteType, quoteStatus, quoteNumber, quoteBindErrors, quoteSubmissionId) are read-only in responses and rejected on create/update.
March 31 2026
FMV1 Configuration Management API
AddedPOST /api/v1/external/companies/{companyId}/configuration/generate— Generate a blank FMV1 configuration template spreadsheetPOST /api/v1/external/companies/{companyId}/configuration/export— Export FMV1 configuration to an existing Google SpreadsheetPOST /api/v1/external/companies/{companyId}/configuration/validate— Validate a configuration spreadsheetPOST /api/v1/external/companies/{companyId}/configuration/compare— Compare spreadsheet against databasePOST /api/v1/external/companies/{companyId}/configuration/import— Import configuration from a spreadsheet
company.configuration:export and company.configuration:import.
March 30 2026
Coverage Type Fields API
AddedPOST /api/external/companies/{companyId}/coverage-types/{coverageTypeId}/fields- Set fields on a company-specific coverage type
GET /api/external/companies/{companyId}/coverage-types/{coverageTypeId}/fields- Response now includes ametadataobject withcoverageTypeScope(global or company) andfieldSources(database, static, or both)
March 27 2026
Coverage Type Fields API
AddedGET /api/external/companies/{companyId}/coverage-types/{coverageTypeId}/fields- Get fields associated with a coverage type
Field Model V1 Events API
Changed- Event responses no longer include
lawsuitId— lawsuits are now managed via entity relationships, not auto-created on event creation fieldModelV1Datais now always present (non-nullable) in event responses- List endpoint now filters
typeandstatusviafieldModelV1DataJSONB fields instead of legacy columns - Creating an event no longer auto-creates a lawsuit record
Field Model V1 Exposures API
Changed- Exposures now read and write exclusively from
fieldModelV1Data. Legacy columns (name,entity_type) are no longer populated on create or update. - List endpoint filtering and sorting now operate on JSONB fields (
exposureType,exposureName) instead of legacy columns.
March 23 2026
Assignees API
AddedGET /api/external/companies/{companyId}/{entityType}/{entityId}/assignees- List assignees for an entityPUT /api/external/companies/{companyId}/{entityType}/{entityId}/assignees- Set assignees for an entity (full replace)
March 16 2026
Field Model V1 Custom Objects API
AddedGET /api/v1/external/companies/{companyId}/custom-objects- List custom object typesGET /api/v1/external/companies/{companyId}/custom-objects/{objectType}/configuration- Get field schema and relationship metadataGET /api/v1/external/companies/{companyId}/custom-objects/{objectType}- List custom objects (paginated)GET /api/v1/external/companies/{companyId}/custom-objects/{objectType}/{objectId}- Get custom object by IDPOST /api/v1/external/companies/{companyId}/custom-objects/{objectType}- Create custom objectPUT /api/v1/external/companies/{companyId}/custom-objects/{objectType}/{objectId}- Update custom object (full replacement)DELETE /api/v1/external/companies/{companyId}/custom-objects/{objectType}/{objectId}- Delete custom objectPUT /api/v1/external/companies/{companyId}/custom-objects/{objectType}/{objectId}/relationships/{fieldRefId}/{targetId}- Add relationshipDELETE /api/v1/external/companies/{companyId}/custom-objects/{objectType}/{objectId}/relationships/{fieldRefId}/{targetId}- Remove relationship
February 27 2026
Insureds Configuration API
New Features- Get Insureds Configuration: Response now includes
fieldEntityTypeMappings(maps field keys to entity type associations). This allows API consumers to determine which fields apply to which entity types. - Entity-type scoped fields: The configuration response now only includes fields for entity types that are enabled for your company, instead of the union of all possible entity-type-specific fields.
- Improved validation errors: When creating or updating an insured with a field that belongs to a different entity type, the error message now indicates which entity types the field belongs to, instead of the generic “Unknown field key” message.
February 26 2026
Create Policy API
Breaking Changes- Unified exposures array: The
primaryInsuredfield and separateexposuresarray have been replaced with a singleexposuresarray. Exactly one exposure must haverole: "primary".- Before: Separate
primaryInsuredobject (norolefield) + optionalexposuresarray (roles:named,additional,related) - After: Single required
exposuresarray where one entry hasrole: "primary"and others haverole: "named","additional", or"related"
- Before: Separate
- Field renames in docs:
insuredType→role,applicationData→ratingInfo,insureds→exposures(docs now match actual code field names)
February 24 2026
Field Model V1 Exposures API
New Features- Field Model V1 Exposures CRUD API: Full operations for managing exposures with company-configured dynamic fields
GET /api/v1/external/companies/{companyId}/exposures/configuration- Get JSON Schema of available fieldsPOST /api/v1/external/companies/{companyId}/exposures- Create an exposure with dynamic fieldsGET /api/v1/external/companies/{companyId}/exposures- List exposures with filtering and paginationGET /api/v1/external/companies/{companyId}/exposures/{exposureId}- Retrieve a single exposure by IDPATCH /api/v1/external/companies/{companyId}/exposures/{exposureId}- Update an exposure (full replacement of field data)DELETE /api/v1/external/companies/{companyId}/exposures/{exposureId}- Soft delete an exposure- Fields are dynamically defined per company — use the configuration endpoint to discover available fields and types
- Supports Text, Number, Boolean, Option Set, and Object field types
- Required permissions:
company.insured:read,company.insured:create,insured:update,insured:delete
Field Model V1 Policies API
New Features- FMV1 Policies CRUD API: Full operations for managing Field Model V1 policies
GET /api/v1/external/companies/{companyId}/policies- List policies with filtering, sorting, and paginationPOST /api/v1/external/companies/{companyId}/policies- Create a policy with segment dataGET /api/v1/external/companies/{companyId}/policies/{policyId}- Retrieve a single policy by IDDELETE /api/v1/external/companies/{companyId}/policies/{policyId}- Soft delete a policyGET /api/v1/external/companies/{companyId}/policies/configuration- Get JSON Schema for available custom fields- Segment-based data structure with policy, coverage, and exposure custom fields
- Required permissions:
company.policy:read(read operations),company.policy:create(write operations)
February 19 2026
Defendants API
New Features- Defendants CRUD API: Full operations for managing defendants on lawsuits
GET /api/external/companies/{companyId}/events/{eventId}/lawsuit/defendants- List defendants with filtering and paginationPOST /api/external/companies/{companyId}/events/{eventId}/lawsuit/defendants- Create a defendant for a lawsuitGET /api/external/companies/{companyId}/events/{eventId}/lawsuit/defendants/{defendantId}- Retrieve a single defendant by IDPATCH /api/external/companies/{companyId}/events/{eventId}/lawsuit/defendants/{defendantId}- Update a defendant (send null to clear fields)DELETE /api/external/companies/{companyId}/events/{eventId}/lawsuit/defendants/{defendantId}- Soft delete a defendant- Each defendant is either an insured (
insuredId) or non-insured party (nonInsuredName) - FK validation for
insuredId,attorneyId, andlawFirmId - Required permission:
company.event:export
Events API
ImprovementslawsuitIdfield: Event responses now includelawsuitId(nullable). Create and update event requests accept an optionallawsuitIdto associate a lawsuit with an event.
February 17 2026
Lawsuits API
New Features- Lawsuits CRUD API: Full operations for managing lawsuits on events (1:1 relationship)
POST /api/external/companies/{companyId}/events/{eventId}/lawsuit- Create a lawsuit for an event (409 if one already exists)GET /api/external/companies/{companyId}/events/{eventId}/lawsuit- Retrieve the lawsuit for an eventPATCH /api/external/companies/{companyId}/events/{eventId}/lawsuit- Update the lawsuit (send null to clear fields)DELETE /api/external/companies/{companyId}/events/{eventId}/lawsuit- Soft delete the lawsuit- All fields are optional on create; update supports partial updates with null clearing
- FK validation for
plaintiffAttorneyIdandplaintiffLawFirmId - Required permission:
company.event:export
Event Financials API
New Features- Void Event Transaction:
PATCH /api/external/companies/{companyId}/events/{eventId}/financials/transactions/{transactionId}- Void an existing financial transaction by setting
status: "void" - Required
voidReasonfield to document why the transaction was voided - Returns full transaction detail after voiding
- Required permission:
company.payment:update
- Void an existing financial transaction by setting
February 16 2026
Attorneys API
New Features- Attorneys API: Full CRUD operations for managing attorneys
GET /api/external/companies/{companyId}/attorneys- List attorneys with filtering and paginationPOST /api/external/companies/{companyId}/attorneys- Create a new attorneyGET /api/external/companies/{companyId}/attorneys/{attorneyId}- Get attorney detailsPATCH /api/external/companies/{companyId}/attorneys/{attorneyId}- Update an attorneyDELETE /api/external/companies/{companyId}/attorneys/{attorneyId}- Soft delete an attorney- Filter by ID (single or array) or text search across attorney names
- Sort by createdAt, updatedAt, or name
- Optional
lawFirmIdto associate an attorney with a law firm payee
February 11 2026
Events API
Improvements- Get Events Configuration: Response now includes
fieldCoverageTypeMappings(maps field keys to coverage type associations) andcompanyCoverageTypes(list of enabled coverage type IDs). This allows API consumers to determine which fields apply to which coverage types.
January 26 2026
Exposures API
New Features- New
/exposures/endpoints: Added/exposures/as the preferred endpoint path for managing exposures (previously called “insureds”)GET /api/external/companies/{companyId}/exposures- List exposures with filtering and paginationGET /api/external/companies/{companyId}/exposures/{exposureId}- Retrieve a single exposure by IDPOST /api/external/companies/{companyId}/exposures- Create a new exposurePATCH /api/external/companies/{companyId}/exposures/{exposureId}- Update an existing exposureDELETE /api/external/companies/{companyId}/exposures/{exposureId}- Soft delete an exposure- The existing
/insureds/endpoints remain available for backwards compatibility
Insured API
New Features- Get insured endpoint:
GET /api/external/companies/{companyId}/insureds/{insuredId}- Retrieve a single insured (exposure) by ID
- Returns insured details including name, entity type, and associated policy IDs
January 13 2026
Smart Tags API
New Features- Smart Tags API: List smart tags for a company
GET /api/external/companies/{companyId}/smart-tags- List smart tags with filtering and pagination- Filter by ID (single or array) or text search across tag names
- Sort by createdAt, updatedAt, tagName, or tagDisplayName
Policies API
New Features- Create policy endpoint:
POST /api/external/companies/{companyId}/policies- Create policies directly for historical imports without going through quote→bind flow
- Takes existing insured IDs (insureds must be created first via POST /insureds)
- Creates insured snapshots with optional applicationData for rating
- Creates policy snapshot with coverages
- Supports: policy type, billing period, timezone, premium override, broker info
- Validates exactly one primary insured, policy number uniqueness
- Returns
{ id }with HTTP 201
January 6 2026
Event Financials API
New Features- Event Financials API: Full management of financial transactions and reserves for events
GET /api/external/companies/{companyId}/events/{eventId}/financials/transactions- List transactions for an eventPOST /api/external/companies/{companyId}/events/{eventId}/financials/transactions- Create payment or invoiceGET /api/external/companies/{companyId}/events/{eventId}/financials/transactions/{transactionId}- Get transaction details with line itemsGET /api/external/companies/{companyId}/events/{eventId}/financials/reserves- Get reserve amounts by categoryPATCH /api/external/companies/{companyId}/events/{eventId}/financials/expected-totals- Update expected totals/reservesGET /api/external/companies/{companyId}/events/financials/{transactionType}/totals- Get financial totals across all events- Support for itemized and non-itemized transaction types
- Transaction statuses: owed, paid, approved, void
Policies API
New Features- List policies endpoint:
GET /api/external/companies/{companyId}/policies- Retrieve policies with filtering and pagination support
Insured API
New Features- Create insured endpoint:
POST /api/external/companies/{companyId}/insureds- Create new insured (exposure) records with name and entity type
- Delete insured endpoint:
DELETE /api/external/companies/{companyId}/insureds/{insuredId}- Soft delete insured records
December 30 2025
Payees & Transaction Categories
New Features-
Payees API: Full CRUD operations for managing payees
GET /api/external/companies/{companyId}/payees- List all payees with filteringGET /api/external/companies/{companyId}/payees/{payeeId}- Get payee detailsPOST /api/external/companies/{companyId}/payees- Create new payeePUT /api/external/companies/{companyId}/payees/{payeeId}- Update payeeDELETE /api/external/companies/{companyId}/payees/{payeeId}- Delete payee- Support for saved and non-saved payee types
-
Transaction Categories endpoint:
GET /api/external/companies/{companyId}/transaction-categories- Retrieve available transaction categories for accounting integration
- Added
batchIdaudit logging support for bulk operations
December 22 2025
Submissions & Configuration Endpoints
New Features-
Submissions CRUD API: Complete submission management
GET /api/external/companies/{companyId}/submissions/{submissionId}- Get submission detailsPOST /api/external/companies/{companyId}/submissions- Create new submissionPUT /api/external/companies/{companyId}/submissions/{submissionId}- Update submissionDELETE /api/external/companies/{companyId}/submissions/{submissionId}- Delete submission
-
Events configuration endpoint:
GET /api/external/companies/{companyId}/events/configuration- Retrieve event type configuration and available options
- Updated currency field documentation to use JSON Schema
moneyformat type
December 19 2025
Brokers & Quotes Configuration
New Features-
Brokers CRUD API: Full broker management
GET /api/external/companies/{companyId}/brokers- List brokersGET /api/external/companies/{companyId}/brokers/{brokerId}- Get broker detailsPOST /api/external/companies/{companyId}/brokers- Create brokerPUT /api/external/companies/{companyId}/brokers/{brokerId}- Update brokerDELETE /api/external/companies/{companyId}/brokers/{brokerId}- Delete broker
-
Quotes configuration endpoint:
GET /api/external/companies/{companyId}/quotes/configuration- Retrieve quote-related configuration settings
- Added
forceparameter toDELETE /events/{eventId}for force deletion
December 17 2025
Brokerages & API Improvements
New Features- Brokerages CRUD API: Complete brokerage management
GET /api/external/companies/{companyId}/brokerages- List brokeragesGET /api/external/companies/{companyId}/brokerages/{brokerageId}- Get brokerage detailsPOST /api/external/companies/{companyId}/brokerages- Create brokeragePUT /api/external/companies/{companyId}/brokerages/{brokerageId}- Update brokerageDELETE /api/external/companies/{companyId}/brokerages/{brokerageId}- Delete brokerage
- Create endpoints now return
201 Createdstatus code (previously200 OK) - Removed deprecated
requestorEmailfield from all endpoints
December 11 2025
Events API
New Features- Events CRUD API: Full event lifecycle management
GET /api/external/companies/{companyId}/events- List events with filteringGET /api/external/companies/{companyId}/events/{eventId}- Get event detailsPOST /api/external/companies/{companyId}/events- Create new eventPUT /api/external/companies/{companyId}/events/{eventId}- Update eventDELETE /api/external/companies/{companyId}/events/{eventId}- Delete event
- Added
insuredIdsarray field for multi-insured event support - Removed legacy fields from events API for cleaner responses
- Added nullable fields documentation for events API
December 5 2025
Notes & Quote Operations
New Features-
Notes API: Create and retrieve notes
GET /api/external/companies/{companyId}/notes- List notes with filteringPOST /api/external/companies/{companyId}/notes- Create new note- Support for author override fields
-
Quote creation endpoint:
POST /api/external/companies/{companyId}/quotes- Create new quotes programmatically
-
Quote deletion endpoint:
DELETE /api/external/companies/{companyId}/quotes/{quoteId}- Delete quotes that are no longer needed
-
Quote update endpoint:
PATCH /api/external/companies/{companyId}/quotes/{quoteId}- Update existing quote fields
-
Quote binding endpoint:
POST /api/external/companies/{companyId}/quotes/{quoteId}/bind- Bind a quote to convert it to a policy
December 4 2025
Quotes API Consolidation
Breaking Changes- Consolidated quote endpoints: Moved from submission-scoped paths to single company-level endpoints with optional filters
- Before:
GET /api/external/companies/{companyId}/submissions/{submissionId}/quotes - After:
GET /api/external/companies/{companyId}/quotes?submissionId={submissionId} - All quote endpoints now use optional
submissionIdandapplicationIdquery parameters instead of path parameters
- Before:
-
Lightweight quote info endpoint:
GET /api/external/companies/{companyId}/quotes-info- Returns essential fields only (9 fields vs 40+)
- Optimized for listing, searching, and filtering
- ~3x faster response times for dashboard views
- Fields: id, number, status, createdAt, updatedAt, description, policyId, policyCurrency, grandTotal
-
Enhanced pagination: All list endpoints now support robust pagination
- Page size: 50 quotes per page
- 1-based indexing (page=1 is first page, page=0 coerced to 1)
- Response includes
totalCountfor pagination UI
-
Advanced filtering: Comprehensive query parameters for all list endpoints
status: Filter by single status or array of statusesfilterText: Full-text search across quote fieldsdateFrom/dateTo: Filter by creation date rangeapplicationId: Filter by associated application
-
Flexible sorting: Control result ordering
sortBy: Choose field (createdAt, updatedAt, status, number)sortDirection: asc or desc- Default: Most recent first (createdAt desc)
- Unified response format: All list endpoints return
{ items: [], totalCount: number } - Updated quote statuses: Status values now match actual implementation
- Added:
in_progress,complete,sent,accepted,applied_to_policy - Updated: More granular status tracking for quote lifecycle
- Added:
- Better data models: Clear distinction between lightweight and full quote representations
- Improved documentation: Separate guides for submissions and quotes with detailed examples
August 8 2025
External API enhancements
Improvements- New submission creation: Create submissions with complete policy, coverage, and insured data via
POST /api/external/companies/{companyId}/submissions - Submission updates: Update existing submissions by adding new quotes via
PUT /api/external/companies/{companyId}/submissions/{submissionId} - Enhanced quote retrieval: Get detailed quote information including policy data, coverages, and billing configuration via
GET /api/external/companies/{companyId}/quotes/{quoteId} - Configuration endpoint: Retrieve company-specific configuration including rating fields, entity types, and coverage options via
GET /api/external/companies/{companyId}/configuration
- All endpoints now use
/api/external/prefix for better organization and versioning - Enhanced data models with comprehensive
ImportPolicy,ImportPolicyCoverage, andImportInsuredobjects - Added support for policy types: Claims Made (C), Occurrence (O), Claims Paid (P), and more
- Expanded quote response with billing details, forms management, and binding settings
- Complete API documentation with detailed request/response examples
- Enhanced error handling and validation
- Comprehensive data model reference with all field descriptions
- Support for complex insurance workflows including renewals and endorsements
Initial Release
Core API functionality
New features- List submissions: Retrieve paginated submissions for a company with filtering and sorting options
- List quotes: Get all quotes associated with a specific submission
- Quote management: Basic quote retrieval and status tracking
- Authentication: API key-based authentication for secure access
- Core
Submissionobject with status tracking and metadata - Basic
Quoteobject with pricing and status information - Support for submission types: new business, renewals, and endorsements
- Quote status management: draft, active, expired, bound, declined, superseded
- RESTful API design following industry standards
- Comprehensive error handling with detailed error responses
- Rate limiting and security best practices
- UUID-based resource identification
