POST
/heartbeatsSend heartbeat
Sends a heartbeat signal to maintain active session status. If heartbeats are not sent regularly, all open orders for the user will be automatically canceled. This is useful for automated trading systems that need to ensure orders are canceled if the system becomes unresponsive.
- Base URL
- https://clob.polymarket.com
- Auth
- L2 API credentials (key, secret, passphrase)POLY_API_KEY, POLY_ADDRESS, POLY_SIGNATURE, POLY_PASSPHRASE, POLY_TIMESTAMP
- Rate limit
- 9,000 req / 10s (900 per second)
- Limit applies to
- CLOB API general
Example
curl -X POST "https://clob.polymarket.com/heartbeats" \
-H "POLY_API_KEY: $POLY_API_KEY" \
-H "POLY_ADDRESS: $POLY_ADDRESS" \
-H "POLY_SIGNATURE: $POLY_SIGNATURE" \
-H "POLY_PASSPHRASE: $POLY_PASSPHRASE" \
-H "POLY_TIMESTAMP: $POLY_TIMESTAMP"L2 requests are signed with HMAC-SHA256 using your API secret, and the timestamp is part of the signature, so keep the machine's clock accurate. A missing credential or a stale signature both come back as Unauthorized/Invalid api key. The Python SDK signs for you.
Response fields
| Field | Type | Description |
|---|---|---|
| status | string | Status of the heartbeat acknowledgment |
Responses
| Status | Meaning |
|---|---|
| 200 | Heartbeat acknowledged |
| 401 | Unauthorized - Invalid API key or authentication failed |
| 500 | Internal server error |
From Polymarket's published OpenAPI spec and rate-limit tables, synced 2026-10-04.