Get market by condition id
curl --request GET \
--url https://api.worm.wtf/markets/{condition_id}/import requests
url = "https://api.worm.wtf/markets/{condition_id}/"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.worm.wtf/markets/{condition_id}/', 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.worm.wtf/markets/{condition_id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.worm.wtf/markets/{condition_id}/"
req, _ := http.NewRequest("GET", url, nil)
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.worm.wtf/markets/{condition_id}/")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.worm.wtf/markets/{condition_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": {
"condition_id": "7n9G9WfQ2V7d6hM3XK8pQ4LwR2eY6aT1uJ5cB8mN3qPz",
"title": "Will the Atlanta Hawks beat the New York Knicks in the NBA game on April 28, 2026?",
"description": "NBA moneyline market for the Apr 28, 2026 game.",
"logo": null,
"last_trade_price": "0.68",
"state": "open",
"category": "sports",
"created": 1714300100,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "Atlanta Hawks vs New York Knicks (Apr 28, 2026)",
"condition_id": "9x4H2LdQ7sM1Kp6Wv3Tn8YfR5aC2uJ7mB4eQ9zN6dLp",
"logo": "https://cdn.worm.wtf/e/42.png"
},
"margin_enabled": false,
"outcomes": [
{ "is_yes": true, "text": "New York Knicks" },
{ "is_yes": false, "text": "Atlanta Hawks" }
],
"rules": { "resolution_source": "official league box score" },
"resolution_date": 1774972800,
"maker_fee": "0.02",
"taker_fee": "0.04",
"config": {
"kind": "orderbook",
"min_price": "0.01",
"max_price": "0.99",
"min_amount": "1",
"max_amount": "100000",
"min_funds": "1",
"max_funds": "100000",
"price_precision": 4,
"amount_precision": 4,
"funds_precision": 6,
"maker_fee_rate": "0.02",
"taker_fee_rate": "0.04",
"default_slippage_rate": "0.005"
}
},
"meta": {},
"error": null
}
{
"data": {
"condition_id": "H7xK2mN9pQr4sTvWxYz1aBc3dEf5gHi6jKl7mNo8pQr9s",
"title": "Will BTC trade above $100,000 by Dec 31, 2026?",
"description": "Binary crypto margin market on the year-end BTC price threshold.",
"logo": null,
"last_trade_price": "0.62",
"state": "open",
"category": "crypto",
"created": 1714300200,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "Bitcoin price milestones (2026)",
"condition_id": "E8xK2mN9pQr4sTvWxYz1aBc3dEf5gHi6jKl7mNo8pQr9s",
"logo": "https://cdn.worm.wtf/e/99.png"
},
"margin_enabled": true,
"outcomes": [
{ "is_yes": true, "text": "Yes" },
{ "is_yes": false, "text": "No" }
],
"rules": { "resolution_source": "Hyperliquid index at expiry" },
"resolution_date": 1798675200,
"maker_fee": null,
"taker_fee": null,
"config": {
"kind": "hyperliquid",
"max_leverage_yes": "4.5",
"max_leverage_no": "3.25",
"opening_fee": "0.01",
"closing_fee": "0.02",
"annual_fee_rate": "0.12"
}
},
"meta": {},
"error": null
}
{
"data": {
"condition_id": "P4mK8nQ2vR7sTwXyZ1aBc3dEf5gHi6jKl7mNo8pQr9s",
"title": "Will Candidate A win the 2026 US presidential election?",
"description": "Margin market on the election winner.",
"logo": null,
"last_trade_price": "0.54",
"state": "open",
"category": "politics",
"created": 1714300300,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "2026 US Presidential Election",
"condition_id": "E9mK8nQ2vR7sTwXyZ1aBc3dEf5gHi6jKl7mNo8pQr9s",
"logo": "https://cdn.worm.wtf/e/100.png"
},
"margin_enabled": true,
"outcomes": [
{ "is_yes": true, "text": "Candidate A wins" },
{ "is_yes": false, "text": "Candidate A does not win" }
],
"rules": { "resolution_source": "certified election results" },
"resolution_date": 1793577600,
"maker_fee": null,
"taker_fee": null,
"config": {
"kind": "polymarket",
"max_leverage_yes": "5",
"max_leverage_no": "4",
"opening_fee": "0",
"closing_fee": "0.05",
"annual_fee_rate": "0",
"order_min_size": "5",
"price_decimals": 2,
"shares_decimals": 2
}
},
"meta": {},
"error": null
}
{
"data": null,
"meta": null,
"error": {
"code": -11,
"slug": "invalid_request_params",
"message": "Validation Error",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -15,
"slug": "not_found",
"message": "Not found.",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -17,
"slug": "throttled",
"message": "Request was throttled.",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -3,
"slug": "internal_error",
"message": "An internal error occurred.",
"details": []
}
}
Markets
Get market by condition id
Retrieve detailed information for a single market.
GET
/
markets
/
{condition_id}
/
Get market by condition id
curl --request GET \
--url https://api.worm.wtf/markets/{condition_id}/import requests
url = "https://api.worm.wtf/markets/{condition_id}/"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.worm.wtf/markets/{condition_id}/', 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.worm.wtf/markets/{condition_id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.worm.wtf/markets/{condition_id}/"
req, _ := http.NewRequest("GET", url, nil)
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.worm.wtf/markets/{condition_id}/")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.worm.wtf/markets/{condition_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": {
"condition_id": "7n9G9WfQ2V7d6hM3XK8pQ4LwR2eY6aT1uJ5cB8mN3qPz",
"title": "Will the Atlanta Hawks beat the New York Knicks in the NBA game on April 28, 2026?",
"description": "NBA moneyline market for the Apr 28, 2026 game.",
"logo": null,
"last_trade_price": "0.68",
"state": "open",
"category": "sports",
"created": 1714300100,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "Atlanta Hawks vs New York Knicks (Apr 28, 2026)",
"condition_id": "9x4H2LdQ7sM1Kp6Wv3Tn8YfR5aC2uJ7mB4eQ9zN6dLp",
"logo": "https://cdn.worm.wtf/e/42.png"
},
"margin_enabled": false,
"outcomes": [
{ "is_yes": true, "text": "New York Knicks" },
{ "is_yes": false, "text": "Atlanta Hawks" }
],
"rules": { "resolution_source": "official league box score" },
"resolution_date": 1774972800,
"maker_fee": "0.02",
"taker_fee": "0.04",
"config": {
"kind": "orderbook",
"min_price": "0.01",
"max_price": "0.99",
"min_amount": "1",
"max_amount": "100000",
"min_funds": "1",
"max_funds": "100000",
"price_precision": 4,
"amount_precision": 4,
"funds_precision": 6,
"maker_fee_rate": "0.02",
"taker_fee_rate": "0.04",
"default_slippage_rate": "0.005"
}
},
"meta": {},
"error": null
}
{
"data": {
"condition_id": "H7xK2mN9pQr4sTvWxYz1aBc3dEf5gHi6jKl7mNo8pQr9s",
"title": "Will BTC trade above $100,000 by Dec 31, 2026?",
"description": "Binary crypto margin market on the year-end BTC price threshold.",
"logo": null,
"last_trade_price": "0.62",
"state": "open",
"category": "crypto",
"created": 1714300200,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "Bitcoin price milestones (2026)",
"condition_id": "E8xK2mN9pQr4sTvWxYz1aBc3dEf5gHi6jKl7mNo8pQr9s",
"logo": "https://cdn.worm.wtf/e/99.png"
},
"margin_enabled": true,
"outcomes": [
{ "is_yes": true, "text": "Yes" },
{ "is_yes": false, "text": "No" }
],
"rules": { "resolution_source": "Hyperliquid index at expiry" },
"resolution_date": 1798675200,
"maker_fee": null,
"taker_fee": null,
"config": {
"kind": "hyperliquid",
"max_leverage_yes": "4.5",
"max_leverage_no": "3.25",
"opening_fee": "0.01",
"closing_fee": "0.02",
"annual_fee_rate": "0.12"
}
},
"meta": {},
"error": null
}
{
"data": {
"condition_id": "P4mK8nQ2vR7sTwXyZ1aBc3dEf5gHi6jKl7mNo8pQr9s",
"title": "Will Candidate A win the 2026 US presidential election?",
"description": "Margin market on the election winner.",
"logo": null,
"last_trade_price": "0.54",
"state": "open",
"category": "politics",
"created": 1714300300,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "2026 US Presidential Election",
"condition_id": "E9mK8nQ2vR7sTwXyZ1aBc3dEf5gHi6jKl7mNo8pQr9s",
"logo": "https://cdn.worm.wtf/e/100.png"
},
"margin_enabled": true,
"outcomes": [
{ "is_yes": true, "text": "Candidate A wins" },
{ "is_yes": false, "text": "Candidate A does not win" }
],
"rules": { "resolution_source": "certified election results" },
"resolution_date": 1793577600,
"maker_fee": null,
"taker_fee": null,
"config": {
"kind": "polymarket",
"max_leverage_yes": "5",
"max_leverage_no": "4",
"opening_fee": "0",
"closing_fee": "0.05",
"annual_fee_rate": "0",
"order_min_size": "5",
"price_decimals": 2,
"shares_decimals": 2
}
},
"meta": {},
"error": null
}
{
"data": null,
"meta": null,
"error": {
"code": -11,
"slug": "invalid_request_params",
"message": "Validation Error",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -15,
"slug": "not_found",
"message": "Not found.",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -17,
"slug": "throttled",
"message": "Request was throttled.",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -3,
"slug": "internal_error",
"message": "An internal error occurred.",
"details": []
}
}
Path Parameters
Response
Show Data fields
Show Data fields
Market lifecycle: (
draft, waiting_to_open, open, answer_proposed, waiting_to_resolve, resolved, canceled, interrupted).Maker fee rate for spot trades on this market (decimal string, e.g.
0.02 for 2%). null when the market has no spot configuration or the rate is unset.Taker fee rate for spot trades on this market (decimal string, e.g.
0.04 for 4%). Deprecated — prefer config.maker_fee_rate / config.taker_fee_rate when config.kind is orderbook.Show config — hyperliquid (`kind`: `hyperliquid`)
Show config — hyperliquid (`kind`: `hyperliquid`)
hyperliquid — margin market routed through Hyperliquid. Use margin endpoints.System-computed maximum leverage for opening YES positions (decimal string). Updates as exposure and liquidity change.
System-computed maximum leverage for opening NO positions (decimal string). Updates as exposure and liquidity change.
Show config — polymarket (`kind`: `polymarket`)
Show config — polymarket (`kind`: `polymarket`)
polymarket — margin market routed through Polymarket. Use margin endpoints.Show config — orderbook (`kind`: `orderbook`)
Show config — orderbook (`kind`: `orderbook`)
orderbook — spot CLOB limit/market orders via POST /orders/.{
"data": {
"condition_id": "7n9G9WfQ2V7d6hM3XK8pQ4LwR2eY6aT1uJ5cB8mN3qPz",
"title": "Will the Atlanta Hawks beat the New York Knicks in the NBA game on April 28, 2026?",
"description": "NBA moneyline market for the Apr 28, 2026 game.",
"logo": null,
"last_trade_price": "0.68",
"state": "open",
"category": "sports",
"created": 1714300100,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "Atlanta Hawks vs New York Knicks (Apr 28, 2026)",
"condition_id": "9x4H2LdQ7sM1Kp6Wv3Tn8YfR5aC2uJ7mB4eQ9zN6dLp",
"logo": "https://cdn.worm.wtf/e/42.png"
},
"margin_enabled": false,
"outcomes": [
{ "is_yes": true, "text": "New York Knicks" },
{ "is_yes": false, "text": "Atlanta Hawks" }
],
"rules": { "resolution_source": "official league box score" },
"resolution_date": 1774972800,
"maker_fee": "0.02",
"taker_fee": "0.04",
"config": {
"kind": "orderbook",
"min_price": "0.01",
"max_price": "0.99",
"min_amount": "1",
"max_amount": "100000",
"min_funds": "1",
"max_funds": "100000",
"price_precision": 4,
"amount_precision": 4,
"funds_precision": 6,
"maker_fee_rate": "0.02",
"taker_fee_rate": "0.04",
"default_slippage_rate": "0.005"
}
},
"meta": {},
"error": null
}
{
"data": {
"condition_id": "H7xK2mN9pQr4sTvWxYz1aBc3dEf5gHi6jKl7mNo8pQr9s",
"title": "Will BTC trade above $100,000 by Dec 31, 2026?",
"description": "Binary crypto margin market on the year-end BTC price threshold.",
"logo": null,
"last_trade_price": "0.62",
"state": "open",
"category": "crypto",
"created": 1714300200,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "Bitcoin price milestones (2026)",
"condition_id": "E8xK2mN9pQr4sTvWxYz1aBc3dEf5gHi6jKl7mNo8pQr9s",
"logo": "https://cdn.worm.wtf/e/99.png"
},
"margin_enabled": true,
"outcomes": [
{ "is_yes": true, "text": "Yes" },
{ "is_yes": false, "text": "No" }
],
"rules": { "resolution_source": "Hyperliquid index at expiry" },
"resolution_date": 1798675200,
"maker_fee": null,
"taker_fee": null,
"config": {
"kind": "hyperliquid",
"max_leverage_yes": "4.5",
"max_leverage_no": "3.25",
"opening_fee": "0.01",
"closing_fee": "0.02",
"annual_fee_rate": "0.12"
}
},
"meta": {},
"error": null
}
{
"data": {
"condition_id": "P4mK8nQ2vR7sTwXyZ1aBc3dEf5gHi6jKl7mNo8pQr9s",
"title": "Will Candidate A win the 2026 US presidential election?",
"description": "Margin market on the election winner.",
"logo": null,
"last_trade_price": "0.54",
"state": "open",
"category": "politics",
"created": 1714300300,
"creator": { "username": "creator1", "image": null, "twitter_username": null },
"event": {
"title": "2026 US Presidential Election",
"condition_id": "E9mK8nQ2vR7sTwXyZ1aBc3dEf5gHi6jKl7mNo8pQr9s",
"logo": "https://cdn.worm.wtf/e/100.png"
},
"margin_enabled": true,
"outcomes": [
{ "is_yes": true, "text": "Candidate A wins" },
{ "is_yes": false, "text": "Candidate A does not win" }
],
"rules": { "resolution_source": "certified election results" },
"resolution_date": 1793577600,
"maker_fee": null,
"taker_fee": null,
"config": {
"kind": "polymarket",
"max_leverage_yes": "5",
"max_leverage_no": "4",
"opening_fee": "0",
"closing_fee": "0.05",
"annual_fee_rate": "0",
"order_min_size": "5",
"price_decimals": 2,
"shares_decimals": 2
}
},
"meta": {},
"error": null
}
{
"data": null,
"meta": null,
"error": {
"code": -11,
"slug": "invalid_request_params",
"message": "Validation Error",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -15,
"slug": "not_found",
"message": "Not found.",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -17,
"slug": "throttled",
"message": "Request was throttled.",
"details": []
}
}
{
"data": null,
"meta": null,
"error": {
"code": -3,
"slug": "internal_error",
"message": "An internal error occurred.",
"details": []
}
}