List a market's relations
curl --request GET \
--url https://api.routeur.app/v1/markets/{venue}/{id}/relations \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.routeur.app/v1/markets/{venue}/{id}/relations"
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.routeur.app/v1/markets/{venue}/{id}/relations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.routeur.app/v1/markets/{venue}/{id}/relations"
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))
}{
"data": [
{
"relation": "equivalent",
"cross_venue": true,
"evidence": [
"<string>"
],
"market": {
"venue": "kalshi",
"id": "<string>",
"event_id": "<string>",
"title": "<string>",
"yes_label": "<string>",
"no_label": "<string>",
"event_mutually_exclusive": true,
"relations": {
"implies": 123,
"implied_by": 123,
"equivalent": 123,
"contradicts": 123,
"overlaps": 123,
"cross_venue": 123
},
"category": "<string>",
"strike": {
"type": "<string>",
"rules_template_hash": "<string>",
"floor": "<string>",
"cap": "<string>",
"custom": {},
"functional": true
},
"game_starts_at": "2023-11-07T05:31:56Z",
"quote": {
"observed_at": "2023-11-07T05:31:56Z",
"yes_ask_usd": "0.4100",
"no_ask_usd": "0.4100",
"price_usd": "0.4100",
"source": "venue"
}
}
}
]
}{
"error": {
"code": "invalid_parameter",
"message": "Invalid or unsupported query parameter: limit."
}
}{
"error": {
"code": "api_key_required",
"message": "Send an API key in the X-API-Key header or as a Bearer token."
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Graph
List a market's relations
Every proven relation from this market’s point of view: implies means
this market resolving Yes guarantees the other resolves Yes. Cross-venue
relations come first.
GET
/
v1
/
markets
/
{venue}
/
{id}
/
relations
List a market's relations
curl --request GET \
--url https://api.routeur.app/v1/markets/{venue}/{id}/relations \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.routeur.app/v1/markets/{venue}/{id}/relations"
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.routeur.app/v1/markets/{venue}/{id}/relations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.routeur.app/v1/markets/{venue}/{id}/relations"
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))
}{
"data": [
{
"relation": "equivalent",
"cross_venue": true,
"evidence": [
"<string>"
],
"market": {
"venue": "kalshi",
"id": "<string>",
"event_id": "<string>",
"title": "<string>",
"yes_label": "<string>",
"no_label": "<string>",
"event_mutually_exclusive": true,
"relations": {
"implies": 123,
"implied_by": 123,
"equivalent": 123,
"contradicts": 123,
"overlaps": 123,
"cross_venue": 123
},
"category": "<string>",
"strike": {
"type": "<string>",
"rules_template_hash": "<string>",
"floor": "<string>",
"cap": "<string>",
"custom": {},
"functional": true
},
"game_starts_at": "2023-11-07T05:31:56Z",
"quote": {
"observed_at": "2023-11-07T05:31:56Z",
"yes_ask_usd": "0.4100",
"no_ask_usd": "0.4100",
"price_usd": "0.4100",
"source": "venue"
}
}
}
]
}{
"error": {
"code": "invalid_parameter",
"message": "Invalid or unsupported query parameter: limit."
}
}{
"error": {
"code": "api_key_required",
"message": "Send an API key in the X-API-Key header or as a Bearer token."
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Authorizations
apiKeybearer
Path Parameters
The venue the market is listed on.
Available options:
kalshi, polymarket The venue's market id, such as a Kalshi ticker or a Polymarket market slug.
Pattern:
^[A-Za-z0-9][A-Za-z0-9_.-]{0,199}$Query Parameters
Only relations of this kind, from this market's side.
A relation from the requested market's side. implies: if this market
resolves Yes, the other does. implied_by: the reverse. contradicts:
both cannot resolve Yes. overlaps: the outcome sets intersect without
containment.
Available options:
equivalent, implies, implied_by, contradicts, overlaps Only relations to markets on the other venue.
Relations per page.
Required range:
1 <= x <= 200Relations to skip, for the next page.
Required range:
0 <= x <= 10000Response
A page of relations.
Show child attributes
Show child attributes