Poll a submission's market events (quotes, declines, progress)
Changed onThe change feed for one submission; poll it to surface outcomes that arrive hours after submit on email/portal markets (a carrier quoting back, declining, or a market being engaged) without diffing the detail view. Events are ordered oldest-first with a stable cursor.
The end-of-stream signal is the cursor, never page length. A non-null next_cursor means more events may exist: store it and poll again with since=next_cursor until you receive a null. A page may hold fewer than limit events; or none at all; with a non-null cursor (internal audit rows are scanned but never returned, and a bounded per-request scan can stop early); never treat a short page as the tail. next_cursor is null only when the request proved your position is the tail of the currently-visible stream; resume later polls from your last non-null cursor. Event ids are stable, so re-reading an older cursor is always safe (dedupe by id).
type is a closed set:
- market_attached; a market was engaged (sent to underwriter).
- quote_received; a quote was received and relayed to you (the quote itself is on the submission detail / proposal).
- status_changed; other movement, e.g. quote in progress or a market re-engaged.
- declined, withdrawn, blocked; terminal outcomes for a market; detail carries the recorded rationale when there is one.
- bound; coverage placed with that market.
Each event: {id, type, occurred_at, market: {name, lines, lane_id, category}, status, status_label, detail?}. category is the market's Hedge category (instant_quote, binding, specialty) and lane_id matches rail.lanes[].submission_market_id. status/status_label use the same vocabulary as the submission detail's markets roll-up. Events reflect what is currently visible to your brokerage; the same rules as the detail view (markets Hedge has actually engaged; quotes only once relayed).
Because visibility is evaluated at read time while the cursor is a position over the underlying log, a market that becomes visible later (e.g. its quote gets relayed after your cursor passed its early rows) can enter your stream mid-history; a quote_received without a preceding market_attached. Treat each event as self-contained rather than assuming lifecycle completeness, and read GET /broker/submissions/{submission_id} for authoritative current state. Re-reading from an older (or empty) cursor replays the full currently-visible history when you need to backfill.
Request
- Base URLhttps://api.hedgespecialty.com/api/v1
- AuthOAuth 2Authorization code: https://api.hedgespecialty.com/api/v1/oauth/authorizeClient credentialsToken URL: https://api.hedgespecialty.com/api/v1/oauth/token
Path parameters
Query parameters
Opaque cursor from a previous page's next_cursor; returns events strictly after it. Omit to read from the beginning.
Max events per page (internal audit rows are not counted). Values outside [1, 100] are clamped, never rejected.
Response
One page of events plus the follow-up cursor
Changes
- info
added the optional property
///to the response with the status - info
added the optional property
///to the response with the status
- info