---
title: "List all Insurance Policies"
method: GET
path: "/2024-09/insurances/policies"
tags: ["Insurance"]
---

# List all Insurance Policies

`GET /2024-09/insurances/policies`

## Request

- Base URL: `https://public-api.easyship.com`
- URL: `https://public-api.easyship.com/2024-09/insurances/policies`
- Auth: HTTP bearer

Retrieve a list of insurance policies.

Required authorization scope: `public.insurance_policy:read`

## Query parameters

- `page` integer
- `per_page` integer
- `policy_type` 'easyship_label' | 'external_label'
- `easyship_shipment_id` string
- `state` 'pending_request' | 'confirmed' | 'failed' | 'pending_void' | 'voided' | 'awaiting' | 'active' | 'canceled' | 'expired'
- `recipient` 'buyer' | 'merchant'
- `source` 'cloud' | 'efulfilment' | 'external'

## Response `200`

list of insurances

- InsuranceList: List of insurances
  - `insurance_policies` Insurance[]
    - `policy_type` 'easyship_label' | 'external_label': Whether this policy is for an Easyship-generated label or an externally generated one.
    - `easyship_insurance_id` string: Easyship insurance ID
    - `insurance_fee` number: Insurance fee
    - `total_insured_value` number: Amount to insure with Easyship's insurance provider.
    - `currency` InsuredCurrency (unresolved $ref)
    - `tracking_number` string, nullable
    - `recipient` 'buyer' | 'merchant': Recipient type
    - `state` 'pending_request' | 'confirmed' | 'failed' | 'pending_void' | 'voided' | 'awaiting' | 'active' | 'canceled' | 'expired': State of the policy. `easyship_label` policies use Policy's state machine; `external_label` policies use InsurancePolicy's (see `policy_type`) -- the two don't share a vocabulary.
    - `claim_state` 'not_filed' | 'filed_by_client' | 'filed_to_courier_damaged' | 'filed_to_courier_lost' | 'rejected_damaged' | 'rejected_lost' | 'accepted_damaged' | 'accepted_lost' | 'voided' | 'not_started' | 'in_progress' | 'filed' | 'accepted' | 'refund_initiated' | 'refund_completed' | 'refund_failed' | 'rejected' | 'closed': Claim state of the insurance. `easyship_label` policies use Policy's claim state machine; `external_label` policies use InsurancePolicy's (see `policy_type`) -- the two don't share a vocabulary.
    - `easyship_shipment_id` string, nullable: Readable identifier prefixed with ES (Easyship) and destination country code. Null for `external_label` policies, which have no associated Easyship shipment.
    - `tracking_id` string, uuid, nullable: Tracking ID. Null for `external_label` policies, which have no associated Easyship shipment.
    - `source` 'cloud' | 'efulfilment' | 'external', nullable: Source of the insured shipment. Null for `external_label` policies, which have no associated Easyship shipment.
    - `courier_name` string, nullable: Name of the courier handling the insured shipment. Null if no courier has been assigned yet.
    - `platform_order_id` string, nullable: Platform (e.g. Shopify) order ID associated with the insured shipment. Null if not captured for this policy.
    - `insurance_valid_from` string, date-time, nullable: Start of the insurance coverage window. Null for `easyship_label` policies, which have no separate validity window of their own -- they're bound to the shipment's own lifecycle. May also be null for older `external_label` policies that predate this tracking.
    - `insurance_valid_until` string, date-time, nullable: End of the insurance coverage window. Null for `easyship_label` policies, which have no separate validity window of their own -- they're bound to the shipment's own lifecycle. May also be null for older `external_label` policies that predate this tracking.
    - `claim_valid_from` string, date-time, nullable: Start of the claim window. Null for `easyship_label` policies, which have no separate validity window of their own -- they're bound to the shipment's own lifecycle. May also be null for older `external_label` policies that predate this tracking.
    - `claim_valid_until` string, date-time, nullable: End of the claim window. Null for `easyship_label` policies, which have no separate validity window of their own -- they're bound to the shipment's own lifecycle. May also be null for older `external_label` policies that predate this tracking.
  - `meta` MetaWithPagination
    - `pagination` Pagination: Pagination
      - `next` integer, nullable
      - `count` integer, nullable: The total number of items. The `null` value is used with countless pagination (used for faster response on large datasets, like shipments).
      - `page` integer: Current page
    - `request_id` string: An unique ID represent the request.

## Changes

- **2026-11-03** `b47b54b748a7`: 2 breaking, 13 warning, 12 info
  - the response property `insurance_policies/items/easyship_shipment_id` became nullable for the status `200`
  - the response property `insurance_policies/items/source` became nullable for the status `200`
  - added the new `accepted` enum value to the `insurance_policies/items/claim_state` response property for the response status `200`
  - added the new `active` enum value to the `insurance_policies/items/state` response property for the response status `200`
  - …23 more

[Operation history](https://skmtc.dev/easyship/apis/easyship-public-api/changes/2024-09/insurances/policies/get.md)

---

[API](https://skmtc.dev/easyship/apis/easyship-public-api.md) - [All operations](https://skmtc.dev/easyship/apis/easyship-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/easyship/apis/easyship-public-api/revisions/b47b54b748a7?raw)
