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 } ] }

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).