GET
/
insurance_policies
cURL
curl --request GET \
  --url http://localhost:8080/insurance_policies \
  --header 'admin-api-key: <api-key>'
{
  "data": [
    {
      "benefit_id": "<string>",
      "benefit_name": "<string>",
      "created_at": "<string>",
      "daily_premium_amount": {
        "currency": "INR",
        "value": 123
      },
      "dependant_ids": [
        "<string>"
      ],
      "grace_period_days": 123,
      "id": "<string>",
      "last_modified_at": "<string>",
      "monthly_premium_amount": {
        "currency": "INR",
        "value": 123
      },
      "nominee_details": "<unknown>",
      "primary_user_id": "<string>",
      "status": "pending",
      "end_date": "2027-01-15",
      "external_policy_id": "<string>",
      "metadata": {
        "dependant_mrn_map": {}
      },
      "start_date": "2026-01-15"
    }
  ],
  "limit": 123,
  "offset": 123,
  "total": 123
}

Authorizations

admin-api-key
string
header
required

Query Parameters

status
null | enum<string>

Insurance policy lifecycle status.

Available options:
pending,
active,
requires_customer_renewal_in_grace,
requires_policy_reissuance,
requires_customer_renewal,
expired
primary_user_id
string | null
benefit_id
string | null
time_range
object

A half-open time range, with a mandatory start and an optional end. Designed to be embedded in list/filter query params via #[serde(flatten)].

Deserialize runs [TimeRange::validate] as part of deserialization, so callers never receive a [TimeRange] that violates start_time <= end_time.

limit
integer<int32> | null
offset
integer<int32> | null

Response

List of all insurance policies

data
object[]
required
limit
integer<int32>
required
offset
integer<int32>
required
total
integer<int64>
required