Skip to main content
GET
/
api
/
v1
/
external
/
companies
/
{companyId}
/
policies
/
{policyId}
/
versions
/
{version}
Get Policy Version
curl --request GET \
  --url https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/{policyId}/versions/{version} \
  --header 'Authorization: <api-key>'
{
  "policyId": "550e8400-e29b-41d4-a716-446655440001",
  "policyVersion": 1,
  "transactionId": "550e8400-e29b-41d4-a716-446655440002",
  "startDate": "2025-01-01",
  "endDate": "2026-01-01",
  "createdAt": "2025-01-15T10:30:00.000Z",
  "fullTermPolicyInfo": {
    "policyStartDate": {
      "year": 2025,
      "month": 1,
      "day": 1,
      "timezone": "America/New_York"
    },
    "policyEndDate": {
      "year": 2026,
      "month": 1,
      "day": 1,
      "timezone": "America/New_York"
    },
    "primaryInsuredJoin": "550e8400-e29b-41d4-a716-446655440010"
  },
  "fullTermPolicyBillingInfo": {
    "policyPremium": 85000,
    "policyTaxes": 0,
    "policyFees": 500,
    "policyGrandTotal": 85500
  },
  "fullTermPolicyRatingResult": null,
  "segments": [
    {
      "startDate": "2025-01-01",
      "endDate": "2026-01-01",
      "fieldModelV1Data": {
        "policy": {
          "policyStatus": "active",
          "annualPremium": 85000,
          "fullTermPolicyInfo": {
            "policyStartDate": {
              "year": 2025,
              "month": 1,
              "day": 1,
              "timezone": "America/New_York"
            },
            "policyEndDate": {
              "year": 2026,
              "month": 1,
              "day": 1,
              "timezone": "America/New_York"
            },
            "primaryInsuredJoin": "550e8400-e29b-41d4-a716-446655440010"
          },
          "fullTermPolicyBillingInfo": {
            "policyPremium": 85000,
            "policyTaxes": 0,
            "policyFees": 500,
            "policyGrandTotal": 85500
          },
          "exposures": [
            {
              "id": "550e8400-e29b-41d4-a716-446655440010",
              "exposureType": "MedicalFacility",
              "bedCount": 120
            }
          ]
        }
      }
    }
  ]
}

Authorizations

Authorization
string
header
required

API key authentication. Send your raw API key as the Authorization header value with NO scheme prefix — Authorization: YOUR-API-KEY. Do NOT prefix it with Bearer or ApiKey, and do not use an X-API-Key header; those are not accepted.

Path Parameters

companyId
string<uuid>
required

Company identifier

policyId
string<uuid>
required

Policy identifier

version
integer
required

Policy version number (sequential, starting at 1)

Required range: x >= 1

Response

Policy version with segments

Response returned by policy transaction endpoints. Contains the policy version produced by the transaction, including all derived segments.

policyId
string<uuid>
required

Policy identifier

policyVersion
integer
required

Sequential version number produced by this transaction

transactionId
string<uuid>
required

Identifier of the transaction that produced this version

startDate
string<date>
required

Policy term start date (ISO 8601)

endDate
string<date>
required

Policy term end date (ISO 8601)

createdAt
string<date-time>
required

When the transaction was created (ISO 8601)

segments
object[]
required

Derived segments for this policy version. Each segment represents a maximal contiguous date range where policy state is identical. Adjacent segments with identical data are automatically merged.

fullTermPolicyInfo
object

Endorsable full-term policy info, hoisted as a read-once convenience (also duplicated in every segment). Contains term dates, the renewal pointer (previousPolicyId), and the primary insured reference. Term bounds are sourced here. Segment-scoped policyStatus is not part of this object.

fullTermPolicyBillingInfo
object

Derived full-term billing aggregates, hoisted as a read-once convenience (also duplicated in every segment). Contains premium, taxes, fees, and grand total for the full policy term.

fullTermPolicyRatingResult
object

Derived canonical policy-level rating result for the full term, hoisted as a read-once convenience (also duplicated in every segment). Element-level rating output (crossSegmentRatingOutputs) stays inline at its host and is not hoisted.