Mooring quotes API

Create quotes
POST /api/quotes
Quotes page
GET /q/{id}
Purchase coverage
POST /api/purchase
Archive page
POST /api/quotes/{id}/archive
Fetch submission
GET /api/quotes?id={id}

Example request

POST /api/quotes
Content-Type: application/json
Authorization: Bearer <QUOTES_CREATE_TOKEN>

{
  "name": "2026 Sea Ray Sundancer 320 – Jenkins",
  "opportunityId": "b4e1c8a2-6f3d-4c9a-9b27-1e5f8a0d3c77",
  "boatMake": "Sea Ray",
  "boatModel": "Sundancer 320",
  "hullValue": 189500,
  "date": "2026-09-10T14:32:07.184Z",
  "Quotes": [
    {
      "id": "7d2f4b9e-8a1c-4e6b-b3d5-0f7a2c9e1b48",
      "insurerName": "Progressive Marine",
      "status": "QUOTED",
      "totalPremium": 1842.5,
      "totalPrice": 2015.75,
      "taxAndFees": 173.25,
      "policyTermMonths": 12,
      "validUntil": "2026-10-15",
      "hullAndEquipment": {
        "limit": 189500,
        "deductible": 1000,
        "coverageBasis": "AGREED_VALUE"
      },
      "liability": { "limitPerOccurrence": 500000 }
    }
  ]
}
201 Created

{
  "ok": true,
  "id": "a1b2c3d4e5f6",
  "page": "https://your-app/q/a1b2c3d4e5f6"
}