List events
curl --request GET \
--url https://relay.bayse.markets/v1/pm/eventsimport requests
url = "https://relay.bayse.markets/v1/pm/events"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://relay.bayse.markets/v1/pm/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://relay.bayse.markets/v1/pm/events",
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://relay.bayse.markets/v1/pm/events"
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://relay.bayse.markets/v1/pm/events")
.asString();require 'uri'
require 'net/http'
url = URI("https://relay.bayse.markets/v1/pm/events")
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{
"events": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"slug": "super-eagles-afcon-2026",
"title": "Will Super Eagles qualify for AFCON 2026?",
"description": "Nigeria national football team qualification.",
"category": "sports",
"type": "single",
"engine": "AMM",
"status": "open",
"resolutionDate": "2025-11-20T00:00:00Z",
"closingDate": "2025-11-19T18:00:00Z",
"imageUrl": "https://cdn.bayse.markets/events/afcon2026.jpg",
"liquidity": 50000,
"totalVolume": 120000,
"totalOrders": 843,
"supportedCurrencies": ["USD", "NGN"],
"userWatchlisted": false,
"markets": [
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"title": "Will Super Eagles qualify?",
"status": "open",
"outcome1Id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"outcome1Label": "YES",
"outcome1Price": 0.72,
"outcome2Id": "d4e5f6a7-b8c9-0123-defa-234567890123",
"outcome2Label": "NO",
"outcome2Price": 0.28,
"yesBuyPrice": 0.72,
"minimumOrderAmount": 1,
"noBuyPrice": 0.28,
"feePercentage": 2.0,
"totalOrders": 843,
"rules": "Resolves YES if Nigeria qualifies for AFCON 2026."
}
]
},
{
"id": "e5f6a7b8-c9d0-1234-efab-cd567890abcd",
"slug": "mci-vs-avl-2026-05-24",
"title": "Manchester City vs Aston Villa",
"description": "Premier League match",
"category": "sports",
"type": "combined",
"engine": "CLOB",
"status": "open",
"sportMarketType": "TEAM_H2H_3WAY",
"sportGameId": "game-12345",
"sportGameSlug": "bm-game-20260524-mci-avl",
"resolutionDate": "2026-05-24T20:00:00Z",
"closingDate": "2026-05-24T15:00:00Z",
"imageUrl": "https://cdn.bayse.markets/events/mci-avl.jpg",
"liquidity": 75000,
"totalVolume": 250000,
"totalOrders": 1250,
"supportedCurrencies": ["USD"],
"userWatchlisted": true,
"markets": [
{
"id": "f6a7b8c9-d0e1-2345-fabc-678901234567",
"title": "Manchester City to Win",
"status": "open",
"outcome1Id": "01234567-89ab-cdef-0123-456789abcdef",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "fedcba98-7654-3210-fedc-ba9876543210",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": {
"id": "team-uuid-1",
"name": "Manchester City FC",
"slug": "manchester-city-fc",
"league": "England - Premier League",
"sport": "SOCCER"
},
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if Manchester City wins the match."
},
{
"id": "a7b8c9d0-e1f2-3456-abcd-789012345678",
"title": "Aston Villa to Win",
"status": "open",
"outcome1Id": "12345678-9abc-def0-1234-56789abcdef0",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "0fedcba9-8765-4321-0fed-cba987654321",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": {
"id": "team-uuid-2",
"name": "Aston Villa FC",
"slug": "aston-villa-fc",
"league": "England - Premier League",
"sport": "SOCCER"
},
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if Aston Villa wins the match."
},
{
"id": "b8c9d0e1-f234-5678-bcde-890123456789",
"title": "Draw",
"status": "open",
"outcome1Id": "23456789-abcd-ef01-2345-6789abcdef01",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "1fedcba9-8765-4321-1fed-cba987654321",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": null,
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if match ends in a draw."
},
]
}
],
"pagination": {
"page": 1,
"size": 10,
"lastPage": 3,
"totalCount": 28
}
}
Trading
List events
Get a paginated list of prediction market events
GET
/
v1
/
pm
/
events
List events
curl --request GET \
--url https://relay.bayse.markets/v1/pm/eventsimport requests
url = "https://relay.bayse.markets/v1/pm/events"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://relay.bayse.markets/v1/pm/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://relay.bayse.markets/v1/pm/events",
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://relay.bayse.markets/v1/pm/events"
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://relay.bayse.markets/v1/pm/events")
.asString();require 'uri'
require 'net/http'
url = URI("https://relay.bayse.markets/v1/pm/events")
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{
"events": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"slug": "super-eagles-afcon-2026",
"title": "Will Super Eagles qualify for AFCON 2026?",
"description": "Nigeria national football team qualification.",
"category": "sports",
"type": "single",
"engine": "AMM",
"status": "open",
"resolutionDate": "2025-11-20T00:00:00Z",
"closingDate": "2025-11-19T18:00:00Z",
"imageUrl": "https://cdn.bayse.markets/events/afcon2026.jpg",
"liquidity": 50000,
"totalVolume": 120000,
"totalOrders": 843,
"supportedCurrencies": ["USD", "NGN"],
"userWatchlisted": false,
"markets": [
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"title": "Will Super Eagles qualify?",
"status": "open",
"outcome1Id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"outcome1Label": "YES",
"outcome1Price": 0.72,
"outcome2Id": "d4e5f6a7-b8c9-0123-defa-234567890123",
"outcome2Label": "NO",
"outcome2Price": 0.28,
"yesBuyPrice": 0.72,
"minimumOrderAmount": 1,
"noBuyPrice": 0.28,
"feePercentage": 2.0,
"totalOrders": 843,
"rules": "Resolves YES if Nigeria qualifies for AFCON 2026."
}
]
},
{
"id": "e5f6a7b8-c9d0-1234-efab-cd567890abcd",
"slug": "mci-vs-avl-2026-05-24",
"title": "Manchester City vs Aston Villa",
"description": "Premier League match",
"category": "sports",
"type": "combined",
"engine": "CLOB",
"status": "open",
"sportMarketType": "TEAM_H2H_3WAY",
"sportGameId": "game-12345",
"sportGameSlug": "bm-game-20260524-mci-avl",
"resolutionDate": "2026-05-24T20:00:00Z",
"closingDate": "2026-05-24T15:00:00Z",
"imageUrl": "https://cdn.bayse.markets/events/mci-avl.jpg",
"liquidity": 75000,
"totalVolume": 250000,
"totalOrders": 1250,
"supportedCurrencies": ["USD"],
"userWatchlisted": true,
"markets": [
{
"id": "f6a7b8c9-d0e1-2345-fabc-678901234567",
"title": "Manchester City to Win",
"status": "open",
"outcome1Id": "01234567-89ab-cdef-0123-456789abcdef",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "fedcba98-7654-3210-fedc-ba9876543210",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": {
"id": "team-uuid-1",
"name": "Manchester City FC",
"slug": "manchester-city-fc",
"league": "England - Premier League",
"sport": "SOCCER"
},
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if Manchester City wins the match."
},
{
"id": "a7b8c9d0-e1f2-3456-abcd-789012345678",
"title": "Aston Villa to Win",
"status": "open",
"outcome1Id": "12345678-9abc-def0-1234-56789abcdef0",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "0fedcba9-8765-4321-0fed-cba987654321",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": {
"id": "team-uuid-2",
"name": "Aston Villa FC",
"slug": "aston-villa-fc",
"league": "England - Premier League",
"sport": "SOCCER"
},
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if Aston Villa wins the match."
},
{
"id": "b8c9d0e1-f234-5678-bcde-890123456789",
"title": "Draw",
"status": "open",
"outcome1Id": "23456789-abcd-ef01-2345-6789abcdef01",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "1fedcba9-8765-4321-1fed-cba987654321",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": null,
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if match ends in a draw."
},
]
}
],
"pagination": {
"page": 1,
"size": 10,
"lastPage": 3,
"totalCount": 28
}
}
Authentication
Public — no authentication required. ProvideX-Public-Key to receive personalized data (e.g. watchlist status).
Query parameters
Page number.
Results per page.
Filter by category (e.g.
sports, crypto, politics).Filter by subcategory.
Filter by status:
open, paused, closed, resolved, cancelled. Defaults to open (includes paused) when omitted.Search events by title keyword.
Currency for prices:
USD or NGN.Return trending events only.
Return watchlisted events only (requires
X-Public-Key).Filter by event series slug (e.g.
crypto-btc-1h).Filter by sports game slug to fetch all related events (H2H, Goal Spread, Total Goals) for a match (e.g.
bm-game-20260524-mci-avl). Only applies to sports events.Example request
curl "https://relay.bayse.markets/v1/pm/events?category=sports&status=open¤cy=USD&page=1&size=10"
const params = new URLSearchParams({
category: 'sports',
status: 'open',
currency: 'USD',
page: 1,
size: 10,
});
const response = await fetch(
`https://relay.bayse.markets/v1/pm/events?${params}`
);
const data = await response.json();
import requests
resp = requests.get(
'https://relay.bayse.markets/v1/pm/events',
params={
'category': 'sports',
'status': 'open',
'currency': 'USD',
'page': 1,
'size': 10,
},
)
data = resp.json()
req, _ := http.NewRequest("GET", "https://relay.bayse.markets/v1/pm/events", nil)
q := req.URL.Query()
q.Add("category", "sports")
q.Add("status", "open")
q.Add("currency", "USD")
q.Add("page", "1")
q.Add("size", "10")
req.URL.RawQuery = q.Encode()
resp, _ := http.DefaultClient.Do(req)
Response
List of event objects.
Show event fields
Show event fields
UUID of the event.
Human-readable URL slug for the event.
The prediction question.
Additional context.
Event category.
single or combined.AMM or CLOB.Current status:
open, paused, closed, resolved, or cancelled.ISO 8601 — when the event opens for trading. Present on time-boxed events (e.g. crypto).
ISO 8601 — when the outcome is determined.
ISO 8601 — when trading closes.
Cover image URL.
Total liquidity in the event.
Total trading volume.
Total number of orders placed.
Currencies available for trading.
Whether the authenticated user has watchlisted this event.
Trading pair symbol (e.g.
BTCUSDT). Present on crypto events.Opening/reference price for the event. Present on crypto events.
Threshold range in format
"100-200". Present when the event covers a price range.Closing price at resolution. Present on resolved crypto events.
Slug of the event series this event belongs to (e.g.
crypto-btc-1h).ID of the sports game. Present on sports events.
Slug of the sports game (e.g.
bm-game-20260524-mci-avl). Use this to fetch all related events for the match.Type of sports market. Present on sports events. One of:
TEAM_H2H_3WAY (match winner),
BOTH_TEAMS_TO_SCORE (both teams score?),
FIRST_TEAM_TO_SCORE (which team scores first?),
GOAL_SPREAD (team wins by X+ goals),
TOTAL_GOALS (total goals by both teams),
TOTAL_GOALS_HOME (home team total goals),
TOTAL_GOALS_AWAY (away team total goals),
TOTAL_CORNERS (total corners, full match),
FIRST_HALF_CORNERS (corners in 1st half),
SECOND_HALF_CORNERS (corners in 2nd half).Sub-markets within the event.
Show market fields
Show market fields
UUID of the market.
Sub-market question.
Market status.
UUID of outcome 1.
Label for outcome 1 (e.g.
YES).Current probability price for outcome 1 (0.00–1.00).
UUID of outcome 2.
Label for outcome 2 (e.g.
NO).Current probability price for outcome 2 (0.00–1.00).
UUID of the resolved outcome. Present when the market is resolved.
Effective buy price for outcome 1.
Effective buy price for outcome 2.
Minimum order amount for that market in the requested
currency. While most markets have a minimum order amount of 1.00 USD or 100.00 NGN, individual markets can specify their own minimum order amounts. Use this field instead of hardcoding a single value.Trading fee as a percentage.
Number of orders in this market.
Resolution criteria.
Opening/reference price for the market. Present on crypto markets.
Threshold range in format
"100-200". Present when the market covers a price range.Closing price at resolution. Present on resolved crypto markets.
The threshold value (e.g. 1.5 goals, 9.5 corners). Present on goal and corner prop markets.
Directional label:
OVER for prop markets. Present on goal and corner prop markets.Team details for team-specific markets. Present on Goal Spread, Total Goals Home/Away, and H2H home/away markets;
null for match-level markets (Total Goals, corners, Both Teams to Score, H2H Draw, First Team to Score “Neither”).Liquidity reward program info. Present when the market has an active reward program.
{
"events": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"slug": "super-eagles-afcon-2026",
"title": "Will Super Eagles qualify for AFCON 2026?",
"description": "Nigeria national football team qualification.",
"category": "sports",
"type": "single",
"engine": "AMM",
"status": "open",
"resolutionDate": "2025-11-20T00:00:00Z",
"closingDate": "2025-11-19T18:00:00Z",
"imageUrl": "https://cdn.bayse.markets/events/afcon2026.jpg",
"liquidity": 50000,
"totalVolume": 120000,
"totalOrders": 843,
"supportedCurrencies": ["USD", "NGN"],
"userWatchlisted": false,
"markets": [
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"title": "Will Super Eagles qualify?",
"status": "open",
"outcome1Id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"outcome1Label": "YES",
"outcome1Price": 0.72,
"outcome2Id": "d4e5f6a7-b8c9-0123-defa-234567890123",
"outcome2Label": "NO",
"outcome2Price": 0.28,
"yesBuyPrice": 0.72,
"minimumOrderAmount": 1,
"noBuyPrice": 0.28,
"feePercentage": 2.0,
"totalOrders": 843,
"rules": "Resolves YES if Nigeria qualifies for AFCON 2026."
}
]
},
{
"id": "e5f6a7b8-c9d0-1234-efab-cd567890abcd",
"slug": "mci-vs-avl-2026-05-24",
"title": "Manchester City vs Aston Villa",
"description": "Premier League match",
"category": "sports",
"type": "combined",
"engine": "CLOB",
"status": "open",
"sportMarketType": "TEAM_H2H_3WAY",
"sportGameId": "game-12345",
"sportGameSlug": "bm-game-20260524-mci-avl",
"resolutionDate": "2026-05-24T20:00:00Z",
"closingDate": "2026-05-24T15:00:00Z",
"imageUrl": "https://cdn.bayse.markets/events/mci-avl.jpg",
"liquidity": 75000,
"totalVolume": 250000,
"totalOrders": 1250,
"supportedCurrencies": ["USD"],
"userWatchlisted": true,
"markets": [
{
"id": "f6a7b8c9-d0e1-2345-fabc-678901234567",
"title": "Manchester City to Win",
"status": "open",
"outcome1Id": "01234567-89ab-cdef-0123-456789abcdef",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "fedcba98-7654-3210-fedc-ba9876543210",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": {
"id": "team-uuid-1",
"name": "Manchester City FC",
"slug": "manchester-city-fc",
"league": "England - Premier League",
"sport": "SOCCER"
},
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if Manchester City wins the match."
},
{
"id": "a7b8c9d0-e1f2-3456-abcd-789012345678",
"title": "Aston Villa to Win",
"status": "open",
"outcome1Id": "12345678-9abc-def0-1234-56789abcdef0",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "0fedcba9-8765-4321-0fed-cba987654321",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": {
"id": "team-uuid-2",
"name": "Aston Villa FC",
"slug": "aston-villa-fc",
"league": "England - Premier League",
"sport": "SOCCER"
},
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if Aston Villa wins the match."
},
{
"id": "b8c9d0e1-f234-5678-bcde-890123456789",
"title": "Draw",
"status": "open",
"outcome1Id": "23456789-abcd-ef01-2345-6789abcdef01",
"outcome1Label": "YES",
"outcome1Price": 0.63,
"outcome2Id": "1fedcba9-8765-4321-1fed-cba987654321",
"outcome2Label": "NO",
"outcome2Price": 0.37,
"propTeam": null,
"yesBuyPrice": 0.63,
"noBuyPrice": 0.37,
"feePercentage": 0.5,
"totalOrders": 420,
"rules": "Resolves YES if match ends in a draw."
},
]
}
],
"pagination": {
"page": 1,
"size": 10,
"lastPage": 3,
"totalCount": 28
}
}
⌘I