Skip to main content
GET
/
api
/
v1
/
external
/
companies
/
{companyId}
/
policies
/
{policyId}
/
earned-premium
Get Earned Premium (Single Policy)
curl --request GET \
  --url https://app.aiinsurance.io/api/v1/external/companies/{companyId}/policies/{policyId}/earned-premium \
  --header 'Authorization: <api-key>'
{
  "policyId": "550e8400-e29b-41d4-a716-446655440001",
  "policyNumber": "POL-2025-001",
  "earnedPremiumTotal": 42465.75,
  "transactionTotals": [
    {
      "transactionId": "660e8400-e29b-41d4-a716-446655440001",
      "policyVersion": 1,
      "action": "NEW_BUSINESS",
      "totalContribution": 42465.75
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://docs.aiinsurance.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API key authentication. Include your API key in the Authorization header.

Path Parameters

companyId
string<uuid>
required

Company identifier

policyId
string<uuid>
required

Policy identifier

Query Parameters

startDate
string<date>
required

Start of the earned premium window (inclusive). ISO 8601 date (YYYY-MM-DD). Must be before or equal to endDate.

endDate
string<date>
required

End of the earned premium window (exclusive). ISO 8601 date (YYYY-MM-DD). The range [startDate, endDate) must not exceed 366 days.

detail
enum<string>
default:transactions

Response granularity:

  • transactionstransactionTotals only (default)
  • days — adds days array with net earned premium per day
  • daysAndTransactions — adds days array with per-transaction contributions on each day
Available options:
transactions,
days,
daysAndTransactions
timeTravelBackToDate
string<date-time>

Only include transactions created before this timestamp (ISO 8601). Useful for auditing historical earned premium state.

Response

Earned premium for the policy

Earned premium for a single policy over the requested date range. Shape varies by detail level: - transactionstransactionTotals only (default) - days — adds days array (without per-transaction contributions) - daysAndTransactions — adds days array with contributions per day

policyId
string<uuid>
required

The policy ID

policyNumber
string
required

Human-readable policy number

earnedPremiumTotal
number
required

Total earned premium across all transactions for the requested date range

transactionTotals
object[]
required

Each transaction's total earned premium contribution over the requested date range. Always present.

days
object[]

Daily earned premium time series. Only present when detail=days or detail=daysAndTransactions. Contains one entry per day in the half-open interval [startDate, endDate).