Upcoming - beta access required. The RFQ events stream is part of the upcoming Combos API beta. Reach out to institutional@polymarket.us to join the beta test.
GetRFQs and GetQuotes while managing RFQ workflows.
Service Definition
Service:polymarket.v1.CombosAPIRPC:
StreamRFQEventsType: Server-side streaming
Required scope:
read:orders
StreamRFQEvents is gRPC-only. The REST Combos endpoints are documented in the Combos API Overview.Request Parameters
StreamRFQEventsRequest
The request is currently empty.Response Messages
The stream returnsStreamRFQEventsResponse messages. Each response has one event value.
| Event | Payload | Description |
|---|---|---|
rfq_created | RFQCreatedEvent | A new RFQ was created. |
rfq_expired | RFQExpiredEvent | An RFQ expired. |
rfq_action_rejected | RFQActionRejectedEvent | An RFQ action was rejected. |
quote_created | QuoteCreatedEvent | A quote was created. |
quote_deleted | QuoteDeletedEvent | A quote was deleted. |
quote_accepted | QuoteAcceptedEvent | A quote was accepted. |
quote_expired | QuoteExpiredEvent | A quote expired. |
quote_passed | QuotePassedEvent | A quote was passed. |
quote_done_away | QuoteDoneAwayEvent | A quote was done away. |
quote_pending_risk | QuotePendingRiskEvent | A quote entered pending-risk state. |
quote_pending_end_trade | QuotePendingEndTradeEvent | A quote entered pending end-trade state. |
quote_status_rejected | QuoteStatusRejectedEvent | A quote status transition was rejected. |
Event Payloads
RFQ
| Field | Type | Description |
|---|---|---|
id | string | RFQ ID. |
qtyDecimal | string | Requested quantity, when RFQ is quantity-based. |
cashOrderQty | string | Requested cash quantity, when RFQ is cash-based. |
side | Side | Requester’s side. |
instrument | ComboInstrument | Combo instrument details. |
rfqCreatorUserId | string | Public RFQ user ID for the requester. |
clientRequestId | string | Client request ID supplied at creation time. |
expirationTime | Timestamp | RFQ expiration time. |
createdTime | Timestamp | RFQ creation time. |
Quote
| Field | Type | Description |
|---|---|---|
id | string | Quote ID. |
rfqId | string | RFQ being quoted. |
creatorRfqUserId | string | Public RFQ user ID for the quote creator. |
symbol | string | Combo symbol. |
qtyDecimal | string | Quote quantity. |
side | Side | Quote side. |
price | string | Quote price. |
status | QuoteStatus | Current quote status. |
createdTime | Timestamp | Quote creation time. |
expirationTime | Timestamp | Quote expiration time. |
clientRequestId | string | Client request ID supplied at creation time. |
RFQActionReject
| Field | Type | Description |
|---|---|---|
action | RFQActionRejectAction | Action that was rejected. |
reason | RFQActionRejectReason | Rejection reason. |
symbol | string | Related symbol, when available. |
text | string | Human-readable rejection text. |
rfqId | string | Related RFQ ID, when available. |
quoteId | string | Related quote ID, when available. |
clientRequestId | string | Related client request ID, when available. |
Complete Example
Stream Behavior
| Behavior | Description |
|---|---|
| Delivery | Server pushes events as RFQs and quotes change. |
| Filtering | The request is currently empty; filtering is not currently exposed. |
| Reconnects | Reconnect with backoff after transient UNAVAILABLE or network errors. |
| Ordering | Process events in receive order for a single stream. |
Error Codes
| gRPC Code | Cause |
|---|---|
INVALID_ARGUMENT | Missing participant ID. Pass x-participant-id metadata or use a token with a participant_id claim. |
UNAUTHENTICATED | Missing or invalid bearer token. |
PERMISSION_DENIED | Token lacks read:orders or participant access. |
FAILED_PRECONDITION | Participant token setup is not ready or token state is invalid. |
UNAVAILABLE | Upstream Combos service or stream is unavailable. |
See Also
Combos API
REST and unary gRPC RFQ operations
gRPC Streaming Overview
Endpoints, auth, and connection setup
Authentication
gRPC metadata and scopes
Error Handling
Reconnection and retry guidance