curl --request GET \
--url https://clob.polymarket.com/data/orders \
--header 'POLY_ADDRESS: <api-key>' \
--header 'POLY_API_KEY: <api-key>' \
--header 'POLY_PASSPHRASE: <api-key>' \
--header 'POLY_SIGNATURE: <api-key>' \
--header 'POLY_TIMESTAMP: <api-key>'import requests
url = "https://clob.polymarket.com/data/orders"
headers = {
"POLY_API_KEY": "<api-key>",
"POLY_ADDRESS": "<api-key>",
"POLY_SIGNATURE": "<api-key>",
"POLY_PASSPHRASE": "<api-key>",
"POLY_TIMESTAMP": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
POLY_API_KEY: '<api-key>',
POLY_ADDRESS: '<api-key>',
POLY_SIGNATURE: '<api-key>',
POLY_PASSPHRASE: '<api-key>',
POLY_TIMESTAMP: '<api-key>'
}
};
fetch('https://clob.polymarket.com/data/orders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://clob.polymarket.com/data/orders",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"POLY_ADDRESS: <api-key>",
"POLY_API_KEY: <api-key>",
"POLY_PASSPHRASE: <api-key>",
"POLY_SIGNATURE: <api-key>",
"POLY_TIMESTAMP: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://clob.polymarket.com/data/orders"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("POLY_API_KEY", "<api-key>")
req.Header.Add("POLY_ADDRESS", "<api-key>")
req.Header.Add("POLY_SIGNATURE", "<api-key>")
req.Header.Add("POLY_PASSPHRASE", "<api-key>")
req.Header.Add("POLY_TIMESTAMP", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://clob.polymarket.com/data/orders")
.header("POLY_API_KEY", "<api-key>")
.header("POLY_ADDRESS", "<api-key>")
.header("POLY_SIGNATURE", "<api-key>")
.header("POLY_PASSPHRASE", "<api-key>")
.header("POLY_TIMESTAMP", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://clob.polymarket.com/data/orders")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["POLY_API_KEY"] = '<api-key>'
request["POLY_ADDRESS"] = '<api-key>'
request["POLY_SIGNATURE"] = '<api-key>'
request["POLY_PASSPHRASE"] = '<api-key>'
request["POLY_TIMESTAMP"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"limit": 100,
"next_cursor": "MTAw",
"count": 2,
"data": [
{
"id": "0xabcdef1234567890abcdef1234567890abcdef12",
"status": "LIVE",
"owner": "f4f247b7-4ac7-ff29-a152-04fda0a8755a",
"maker_address": "0x1234567890123456789012345678901234567890",
"market": "0x0000000000000000000000000000000000000000000000000000000000000001",
"asset_id": "0xabc123def456...",
"side": "BUY",
"original_size": "100",
"size_matched": "0",
"price": "0.5",
"outcome": "YES",
"expiration": "1735689600",
"order_type": "GTC",
"associate_trades": [],
"created_at": 1700000000
},
{
"id": "0xfedcba0987654321fedcba0987654321fedcba09",
"status": "LIVE",
"owner": "f4f247b7-4ac7-ff29-a152-04fda0a8755a",
"maker_address": "0x1234567890123456789012345678901234567890",
"market": "0x0000000000000000000000000000000000000000000000000000000000000002",
"asset_id": "0xdef456abc789...",
"side": "SELL",
"original_size": "200",
"size_matched": "50",
"price": "0.75",
"outcome": "NO",
"expiration": "1735689600",
"order_type": "GTC",
"associate_trades": [
"trade-123"
],
"created_at": 1700000001
}
]
}{
"error": "invalid order params payload"
}{
"error": "Invalid API key"
}{
"error": "Internal server error"
}Get user orders
Retrieves live orders for the authenticated user. Returns paginated results. Filtering by id returns that order regardless of status, including canceled or fully matched orders. Builder-authenticated clients can also use this endpoint to retrieve orders attributed to their builder account.
curl --request GET \
--url https://clob.polymarket.com/data/orders \
--header 'POLY_ADDRESS: <api-key>' \
--header 'POLY_API_KEY: <api-key>' \
--header 'POLY_PASSPHRASE: <api-key>' \
--header 'POLY_SIGNATURE: <api-key>' \
--header 'POLY_TIMESTAMP: <api-key>'import requests
url = "https://clob.polymarket.com/data/orders"
headers = {
"POLY_API_KEY": "<api-key>",
"POLY_ADDRESS": "<api-key>",
"POLY_SIGNATURE": "<api-key>",
"POLY_PASSPHRASE": "<api-key>",
"POLY_TIMESTAMP": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
POLY_API_KEY: '<api-key>',
POLY_ADDRESS: '<api-key>',
POLY_SIGNATURE: '<api-key>',
POLY_PASSPHRASE: '<api-key>',
POLY_TIMESTAMP: '<api-key>'
}
};
fetch('https://clob.polymarket.com/data/orders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://clob.polymarket.com/data/orders",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"POLY_ADDRESS: <api-key>",
"POLY_API_KEY: <api-key>",
"POLY_PASSPHRASE: <api-key>",
"POLY_SIGNATURE: <api-key>",
"POLY_TIMESTAMP: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://clob.polymarket.com/data/orders"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("POLY_API_KEY", "<api-key>")
req.Header.Add("POLY_ADDRESS", "<api-key>")
req.Header.Add("POLY_SIGNATURE", "<api-key>")
req.Header.Add("POLY_PASSPHRASE", "<api-key>")
req.Header.Add("POLY_TIMESTAMP", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://clob.polymarket.com/data/orders")
.header("POLY_API_KEY", "<api-key>")
.header("POLY_ADDRESS", "<api-key>")
.header("POLY_SIGNATURE", "<api-key>")
.header("POLY_PASSPHRASE", "<api-key>")
.header("POLY_TIMESTAMP", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://clob.polymarket.com/data/orders")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["POLY_API_KEY"] = '<api-key>'
request["POLY_ADDRESS"] = '<api-key>'
request["POLY_SIGNATURE"] = '<api-key>'
request["POLY_PASSPHRASE"] = '<api-key>'
request["POLY_TIMESTAMP"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"limit": 100,
"next_cursor": "MTAw",
"count": 2,
"data": [
{
"id": "0xabcdef1234567890abcdef1234567890abcdef12",
"status": "LIVE",
"owner": "f4f247b7-4ac7-ff29-a152-04fda0a8755a",
"maker_address": "0x1234567890123456789012345678901234567890",
"market": "0x0000000000000000000000000000000000000000000000000000000000000001",
"asset_id": "0xabc123def456...",
"side": "BUY",
"original_size": "100",
"size_matched": "0",
"price": "0.5",
"outcome": "YES",
"expiration": "1735689600",
"order_type": "GTC",
"associate_trades": [],
"created_at": 1700000000
},
{
"id": "0xfedcba0987654321fedcba0987654321fedcba09",
"status": "LIVE",
"owner": "f4f247b7-4ac7-ff29-a152-04fda0a8755a",
"maker_address": "0x1234567890123456789012345678901234567890",
"market": "0x0000000000000000000000000000000000000000000000000000000000000002",
"asset_id": "0xdef456abc789...",
"side": "SELL",
"original_size": "200",
"size_matched": "50",
"price": "0.75",
"outcome": "NO",
"expiration": "1735689600",
"order_type": "GTC",
"associate_trades": [
"trade-123"
],
"created_at": 1700000001
}
]
}{
"error": "invalid order params payload"
}{
"error": "Invalid API key"
}{
"error": "Internal server error"
}Authorizations
Your API key
Ethereum address associated with the API key
HMAC signature of the request
API key passphrase
Unix timestamp of the request
Query Parameters
Order ID (hash) to filter by specific order
Market (condition ID) to filter orders
Asset ID (token ID) to filter orders
Cursor for pagination (base64 encoded offset)
Response
Successfully retrieved orders
Maximum number of results per page
100
Cursor for pagination (base64 encoded offset). Empty if no more results.
"MTAw"
Number of orders in this response
2
Array of open orders
Show child attributes
Show child attributes
Was this page helpful?