CargoLabs Docs
Products

Create a product

Creates a product line and its backing Stripe product and price. The product is created in test mode when isTestMode is true; test products are never shown to live buyers.

POST
/products

Creates a product line and its backing Stripe product and price. The product is created in test mode when isTestMode is true; test products are never shown to live buyers.

Authorization

ApiKeyAuth
x-api-key<token>

API key from the CoverPort developer portal.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/products" \  -H "Content-Type: application/json" \  -d '{    "customerName": "Cargo Excess",    "internalName": "CARGO_EXCESS_2026",    "description": "Excess cargo coverage above the carrier\'s legal liability, per shipment.",    "defaultPrice": 49,    "insurerName": "Falvey Cargo Underwriting",    "claimsPhoneNumber": "+1 401 214 8900",    "agencyRootAccountID": 12,    "masterPolicyNumber": "FCU-MP-2026-0142",    "questionSetId": 7,    "deductible": 500,    "isRecurring": false,    "isTestMode": true  }'
{  "success": true,  "data": {    "id": 318,    "stripeProductId": "prod_R8kQ2mQ9Xl2Vb1",    "stripePriceId": "price_1Q7x9kLm4Hq2Z0Z0",    "customerName": "Cargo Excess",    "internalName": "CARGO_EXCESS_2026",    "description": "Excess cargo coverage above the carrier's legal liability, per shipment.",    "defaultPrice": 49,    "insurerName": "Falvey Cargo Underwriting",    "claimsPhoneNumber": "+1 401 214 8900",    "agencyRootAccountID": 12,    "masterPolicyNumber": "FCU-MP-2026-0142",    "questionSetId": 7,    "isTestMode": true,    "createdAt": "2026-09-21T18:04:11.000Z"  },  "message": "Product created successfully"}