curl --request GET \
--url https://api.polyorderbooks.com/v1/events \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.polyorderbooks.com/v1/events"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.polyorderbooks.com/v1/events', 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://api.polyorderbooks.com/v1/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <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://api.polyorderbooks.com/v1/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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://api.polyorderbooks.com/v1/events")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.polyorderbooks.com/v1/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"end_date": "2025-09-15T04:00:00Z",
"id": "201",
"slug": "lakers-vs-bulls-2025-09-15",
"start_date": "2025-09-15T01:00:00Z",
"status": "open",
"tags": [
"basketball",
"nba"
],
"title": "Lakers vs Bulls"
}
],
"metadata": {
"count": 1,
"limit": 100
}
}Polymarket Events API — List Events
List specific events within series (e.g., “Lakers vs Bulls”, “Iowa Caucus”).
Supports filtering by date ranges, text search, tags, and pagination.
Results are sorted by the selected field (default: updated_at desc).
Pagination: Use the next_cursor value from the response to fetch the next page. Covers Polymarket crypto markets from the PolyOrderbooks historical archive.
curl --request GET \
--url https://api.polyorderbooks.com/v1/events \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.polyorderbooks.com/v1/events"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.polyorderbooks.com/v1/events', 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://api.polyorderbooks.com/v1/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <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://api.polyorderbooks.com/v1/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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://api.polyorderbooks.com/v1/events")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.polyorderbooks.com/v1/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"end_date": "2025-09-15T04:00:00Z",
"id": "201",
"slug": "lakers-vs-bulls-2025-09-15",
"start_date": "2025-09-15T01:00:00Z",
"status": "open",
"tags": [
"basketball",
"nba"
],
"title": "Lakers vs Bulls"
}
],
"metadata": {
"count": 1,
"limit": 100
}
}Authorizations
Query Parameters
Optional case-insensitive text match for event title or slug.
200"debate"
Maximum number of items returned in this page.
1 <= x <= 1000100
Opaque cursor from a previous metadata.next_cursor value.
Optional filter to only events belonging to this series (by internal series id).
"s_abc123"
Optional filter to only events belonging to this series (by series slug).
"crypto-up-down"
Field used to sort the response rows.
updated_at, start_date, end_date Sort direction.
asc, desc