---
title: "Every released quote on a submission, itemized, with each lane's status"
method: GET
path: "/broker/submissions/{submission_id}/quotes"
tags: ["Carrier quotes"]
---

# Every released quote on a submission, itemized, with each lane's status

`GET /broker/submissions/{submission_id}/quotes`

## Request

- Base URL: `https://api.hedgespecialty.com/api/v1`
- URL: `https://api.hedgespecialty.com/api/v1/broker/submissions/{submission_id}/quotes`
- Auth: OAuth 2
  - Authorization code: `https://api.hedgespecialty.com/api/v1/oauth/authorize`
  - Client credentials
  - Token URL: `https://api.hedgespecialty.com/api/v1/oauth/token`

The quote set is exactly what you see in the Hedge portal: released
firm quotes only (indications and quotes whose terms Hedge is still
confirming never appear as quotes). Each quote carries premium,
taxes (with the surplus-lines split when it reconciles), fees,
total and payment options in integer cents with `currency: USD`,
plus coverages, subjectivities (with `due_stage` and `status`),
issuing company, admitted status, dates, documents (Hedge's quote
PDF, `kind: hedge_quote_pdf`, plus the carrier's; see
`QuoteDocument`) and whether it can be bound now. Each lane carries
its status (see `QuoteLane`),
the assumptions Hedge recorded, and carrier original offers.

`null` means unknown, never zero. Deterministic and read-only; poll
it, or re-read it after a webhook. `revision` changes whenever the
lanes change. A partner acting for your brokerage reads only the
submissions that partner created; others return 404 to it.

## Path parameters

- `submission_id` string, uuid, required

## Response `200`

The lanes and their released quotes

- SubmissionQuotes
  - `submission_id` string, uuid, required
  - `generated_at` string, date-time, required
  - `revision` string, required: Changes whenever anything in `lanes` changes.
  - `lanes` QuoteLane[], required
    - `lane_id` string, uuid, required
    - `program_id` string, uuid, nullable
    - `program_name` string, nullable
    - `program_category` 'instant_quote' | 'binding' | 'specialty': The Hedge category of a market program, derived from how Hedge submits to it. `instant_quote` ("Hedge Instant Quote"): carrier API, Hedge fills gaps with favorable assumptions and quotes in minutes; every assumption is listed for the retail agent to confirm before bind. `binding` ("Hedge Binding"): carrier portal, Hedge quotes on your behalf. `specialty` ("Hedge Specialty"): email to an underwriter; completed ACORDs, program supplements and loss runs are needed and a human reads them, so Hedge does not assume.
    - `channel` 'api' | 'portal' | 'email' | 'null', nullable
    - `market` object, required
      - `id` string, uuid, nullable
      - `slug` string, nullable
      - `display_name` string, nullable
      - `logo_url` string, nullable
    - `lines` string[]
    - `status` 'bound' | 'binding' | 'quoted' | 'declined' | 'blocked' | 'no_quote' | 'needs_info' | 'indicated' | 'pending', required: First match wins: `bound` (the carrier bound it; `status_label` reads "Bound, policy documents pending" until its policy is issued), `binding` (a live bind request), `quoted` (at least one quote in `quotes`), `declined`, `blocked` (another broker holds the account at this market), `no_quote` (withdrawn, or the submission closed), `needs_info`, `indicated` (a non-binding indication only; never priced here), `pending`.
    - `status_label` string, required
    - `status_reason` object, nullable
      - `code` string
      - `text` string, nullable
    - `speed` SpeedHint: A channel-level expectation (`basis` is `channel_default`), never a per-program promise.
      - `hint` 'minutes' | 'within_day' | 'underwriter_review', required
      - `label` string, required
      - `basis` 'channel_default', required
    - `needs_from_you` string[]
    - `assumptions` LaneAssumption[]
      - `key` string, required
      - `label` string, required
      - `value` unknown
      - `confirmed` boolean, required
    - `carrier_originals` QuoteDocument[]: Carrier original offers whose terms Hedge is still confirming.
      - `kind` string, nullable
      - `file_name` string, nullable
      - `download_path` string, nullable
      - `carrier_url` string, nullable
    - `quotes` ItemizedQuote[]
      - `quote_id` string, uuid, required
      - `lane_id` string, uuid, required
      - `kind` 'firm', required
      - `is_revision` boolean, nullable: Null while revision marking is off.
      - `revision_of_quote_id` string, uuid, nullable
      - `created_at` string, date-time, nullable
      - `carrier` object, required
        - `display_name` string, nullable
        - `logo_url` string, nullable
        - `mga_name` string, nullable
      - `issuing_company` object, nullable
        - `legal_name` string, nullable
        - `naic` string, nullable
        - `am_best_rating` string, nullable
      - `admitted` 'admitted' | 'non_admitted' | 'unknown', required
      - `program_name` string, nullable
      - `quote_number` string, nullable
      - `lines` string[]
      - `effective_date` string, date, nullable
      - `expiration_date` string, date, nullable
      - `quote_expires_on` string, date, nullable
      - `presentation` object, required
        - `mode` 'full_summary' | 'source_only'
        - `financial_status` string
        - `terms_status` string
        - `checkout_ready` boolean
      - `pricing` object, required
        - `currency` 'USD'
        - `basis` 'term'
        - `premium_cents` integer, nullable
        - `taxes` object
          - `total_cents` integer, nullable
          - `surplus_lines_tax_cents` integer, nullable
          - `stamping_fee_cents` integer, nullable
          - `other_cents` integer, nullable
          - `computed_by` 'inscipher' | 'null', nullable
        - `fees` object
          - `total_cents` integer, nullable
          - `carrier_fees_cents` integer, nullable
          - `hedge_broker_fee_cents` integer, nullable
        - `total_cents` integer, nullable
        - `breakdown_reconciled` boolean
        - `payment_options` object[]
          - `key` 'in_full' | 'monthly'
          - `total_cents` integer, nullable
          - `down_payment_cents` integer, nullable
          - `installment_cents` integer, nullable
          - `installments` integer, nullable
          - `disclaimer` string, nullable
      - `coverages` object[]
        - `key` string, nullable
        - `label` string, nullable
        - `limit_text` string, nullable
        - `deductible_text` string, nullable
        - `note` string, nullable
      - `primary_limit_cents` integer, nullable: Strict parse of the first coverage row's limit; null when absent or ambiguous.
      - `primary_deductible_cents` integer, nullable
      - `endorsements` object[]
        - `key` string, nullable
        - `name` string, nullable
        - `description` string, nullable
        - `limit` string, nullable
      - `subjectivities` object[]
        - `id` string, uuid
        - `kind` string
        - `prompt` string
        - `optional` boolean
        - `due_stage` string, nullable
        - `status` string, nullable
      - `notes` string[]
      - `compliance_notices` object, nullable
      - `documents` QuoteDocument[]
        - `kind` string, nullable
        - `file_name` string, nullable
        - `download_path` string, nullable
        - `carrier_url` string, nullable
      - `bind` object, required
        - `available` boolean
        - `blocked_reason` 'bound' | 'bind_in_progress' | 'line_bound_elsewhere' | 'closed_at_carrier' | 'not_bindable' | 'incomplete_terms' | 'expired' | 'null', nullable: `bound` / `bind_in_progress`: this lane is bound or has a live bind request. `line_bound_elsewhere`: the same coverage line is bound or binding on another lane. `closed_at_carrier`: the carrier closed this quote. `not_bindable`: not bindable terms (for example awaiting carrier approval). `incomplete_terms`: not checkout-ready (prices are withheld). `expired`: past `quote_expires_on`.

## Other responses

- `404`: Not found (or not your brokerage's)

## Changes

- **2026-09-29** `90c41460541f`: 1 warning
  - added the new `underwriter_review` enum value to the `lanes/items/speed/hint` response property for the response status `200`
- **2026-09-28** `3156f892e627`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api/changes/broker/submissions/:submission_id/quotes/get.md)

---

[API](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api.md) - [All operations](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hedgespecialty/apis/hedge-submission-api/revisions/beefa9cdc11c?raw)
