Configuration-Driven
The Policy API works with the Configuration API. The same field definitions you configure — policy fields, exposure fields, option sets — are the fields you write when creating policies through transactions.- Configure your insurance program — define fields, option sets, exposure types
- Create policies via
POST /transaction/new-business - Manage the lifecycle — endorse, cancel, reinstate, renew
- Query state — get a policy at any point in time, see full audit trail
Core Concepts
Transactions
Policies are modified through immutable transactions. Each transaction records what changed and produces a new policy version.Segments
A segment is a date range where policy state is identical. Segments are derived from final state — they are not one-to-one with transactions. Adjacent segments with identical data are automatically merged. For example, three transactions can produce a single segment if the net effect returns the policy to a uniform state across the term.Versions
Each transaction produces a new version with a complete set of segments representing the full policy timeline. You can query any historical version. For a deeper explanation of these concepts, see Concepts. For a full worked example tracing 9 transactions through a realistic policy lifecycle, see the Lifecycle Walkthrough.API Endpoints
Transactions (write)
Queries (read)
Reporting
Validation
Configuration
Permissions
Example: Create a Policy
Request
POST /v1/policies/transaction/new-business
Response
201 Created
Key Points
policyStartDate/policyEndDatedefine the policy term boundariesfieldModelV1Data.policycontains all policy-level fields, with exposures nested insidefullTermPolicyInfoandfullTermPolicyBillingare required on every policy- Exposures reference existing exposure records by
id— create exposures first via the Exposures API transactionTimestampis optional — defaults to the current time if omitted
