Available Services
The Polymarket Exchange API exposes the following gRPC services:Obtaining Proto Files
Download Proto Files
Get the complete Protocol Buffer definitions to generate client libraries in any language
Use the downloaded definitions as the client contract. Do not make client startup depend on gRPC reflection, whose availability can differ by environment.
Generating Python Client Code
After downloading the proto files, generate Python code:*_pb2.py- Message and enum definitions*_pb2_grpc.py- Service stubs
Market Data Streaming
MarketDataSubscriptionAPI Service
Python Usage
Request Fields
Response Fields
Order Entry Streaming
OrderEntryAPI Service
Python Usage
Subscription Request Fields
Response Processing
RFQ Events Streaming
Upcoming - beta access required. RFQ events are part of the upcoming RFQ API beta. Reach out to institutional@polymarket.us to join the beta test.
ComboAPI and RFQAPI Services
Request Fields
StreamRFQEventsRequest is currently empty.
Response Events
EachStreamRFQEventsResponse has one event payload:
For request/response field detail and a Python example, see RFQ Events Streaming.
Funding Streaming
FundingAPI Service
CreateBalanceLedgerSubscriptionRequest
For full request/response field detail and a Python example, see Balance Ledger Streaming.
Enumerations
Side
OrderType
TimeInForce
OrderState
ExecutionType
InstrumentState
Primary State Flow
Exception States
Other Possible States
LedgerEntryType
Used byCreateBalanceLedgerSubscription and the Balance Ledger REST endpoints. Only the allowed values are returned to clients; suppressed values are filtered server-side.
Allowed
Suppressed (internal — never returned to clients)
Requesting a suppressed value in
entry_types returns Aborted (HTTP 409).
Price Representation
Next Steps
Market Data Stream
Learn about market data streaming
Order Stream
Learn about order streaming
Error Handling
Handle errors and reconnections