CargoLabs Docs

API overview

Server-to-server access to CoverPort products, bundles, quotes, and certificates of insurance.

The CoverPort API is a JSON REST API at https://api.coverport.io. Use it from your backend to manage the insurance products you sell, create bundles, drive a quote through to checkout, and fetch the certificates that are issued after payment.

If you only want to sell insurance from your web pages, you do not need this API. The SDK does that with one line and no server code.

Base URL and versioning

SurfaceBase URLStyle
Products and bundleshttps://api.coverport.io/api/v1Resource-oriented, camelCase or snake_case bodies as documented, { success, data } envelope
Quote and checkouthttps://api.coverport.io/public-quoteAction-oriented POST endpoints, snake_case bodies
Certificateshttps://api.coverport.io/coverport-agency-certsAction-oriented POST endpoints, snake_case bodies

The /api/v1 surface is versioned in the path. The action-oriented surfaces are not versioned; breaking changes to them are announced in advance and old behaviour is kept for at least 90 days.

Authentication

Every request carries an API key in the x-api-key header. Keys are created in the developer portal. See Authentication.

A first request

curl https://api.coverport.io/api/v1/bundles?limit=5 \
  -H "x-api-key: $COVERPORT_API_KEY"
{
  "success": true,
  "data": [
    {
      "id": 42,
      "bundle_name": "PD + NTL Monthly",
      "customer_facing_name": "Physical Damage + Non-Trucking Liability",
      "is_recurring": true,
      "is_test_mode": false,
      "product_line_count": 2,
      "creation_datetime": "2026-09-21T18:04:11.000Z"
    }
  ],
  "metadata": { "total": 1, "count": 1, "hasMore": false, "pagination": { "pageSize": 5, "pageIndex": 0 } },
  "message": "Bundles retrieved successfully"
}

Where to go next

Test mode

Products and bundles carry an isTestMode / is_test_mode flag. Test resources use Stripe test mode, so quotes against them never charge a real card. Create your catalog in test mode first, then create live equivalents when you are ready.

On this page