API Reference

Basic RESTful endpoints which can be used to discover Aver on-chain market instances and add context to the on-chain data

Environments (Devnet or Mainnet)

DevNet: base_url = https://dev.api.aver.exchange/v3
Mainnet: base_url = https://api.aver.exchange/v3
Please note these variables are referenced throughout below as {base_url}

Javascript and Python Examples

example.js
example.py
1
const { default: axios } = require("axios")
2
3
const AVER_BASE_URL = 'https://dev.api.aver.exchange/v3'
4
5
const EPL_SUB_CATEGORY_ID = 109
6
const SOCCER_CATEGORY_ID = 1035
7
8
const getActiveEvents = async () => {
9
const activeEventsResp = await axios.get(`${AVER_BASE_URL}/events?active_only=true&include_markets=true`)
10
11
return activeEventsResp.data.results
12
}
13
14
const getActiveEplEvents = async () => {
15
const activeEplEventsResp = await axios.get(`${AVER_BASE_URL}/events?active_only=true&include_markets=true&sub_category_ids=${EPL_SUB_CATEGORY_ID}`)
16
17
return activeEplEventsResp.data.results
18
}
19
20
const getActiveSubCategories = async () => {
21
const activeSubCategoriesResp = await axios.get(`${AVER_BASE_URL}/sub_categories?active_only=true`)
22
23
return activeSubCategoriesResp.data.results
24
}
25
26
const getActiveSoccerSubCategories = async () => {
27
const activeSoccerSubCategoriesResp = await axios.get(`${AVER_BASE_URL}/sub_categories?active_only=true&category_ids=${SOCCER_CATEGORY_ID}`)
28
29
return activeSoccerSubCategoriesResp.data.results
30
}
31
32
const getActiveCategories = async () => {
33
const activeCategoriesResp = await axios.get(`${AVER_BASE_URL}/categories?active_only=true`)
34
35
return activeCategoriesResp.data.results
36
}
37
38
const main = async () => {
39
console.log('---- EVENTS ----')
40
const activeEvents = await getActiveEvents()
41
console.log(activeEvents)
42
console.log('---- EVENTS END ----')
43
44
console.log('---- SUB CATEGORIES ----')
45
const activeSubCategories = await getActiveSubCategories()
46
console.log(activeSubCategories)
47
console.log('---- SUB CATEGORIES END ----')
48
49
console.log('---- CATEGORIES ----')
50
const activeCategories = await getActiveCategories()
51
console.log(activeCategories)
52
console.log('---- CATEGORIES END ----')
53
54
console.log('--- EPL EVENTS START ---')
55
const eplEvents = await getActiveEplEvents()
56
eplEvents.forEach((eplEvent) => {
57
console.log(eplEvent)
58
})
59
console.log('--- EPL EVENTS END ---')
60
61
console.log('--- SOCCER SERIES START ---')
62
const soccerSubCategories = await getActiveSoccerSubCategories()
63
console.log(soccerSubCategories)
64
console.log('--- SOCCER SERIES END ---')
65
}
66
67
main()
68
import requests
import asyncio
AVER_BASE_URL = 'https://dev.api.aver.exchange/v3'
EPL_SUB_CATEGORY_ID = 109 # call the categories endpoint to find others like NFL, NBA...
SOCCER_CATEGORY_ID = 1035 # call the subcategories endpoint to find others like American Football, Basketball...
async def getActiveEvents():
activeEventsResp = requests.get(AVER_BASE_URL + '/events?active_only=true&include_markets=true').json()
return activeEventsResp['results']
async def getActiveEplEvents():
activeEplEventsResp = requests.get(AVER_BASE_URL + '/events?active_only=true&include_markets=true&sub_category_ids=109').json()
return activeEplEventsResp['results']
async def getActiveCategories():
activeCategoriesResp = requests.get(AVER_BASE_URL + '/categories?active_only=true').json()
return activeCategoriesResp['results']
async def getActiveSubCategories():
activeSubCategoriesResp = requests.get(AVER_BASE_URL + '/sub_categories?active_only=true').json()
return activeSubCategoriesResp['results']
async def getActiveSoccerSubCategories():
activeSoccerSubCategoriesResp = requests.get(AVER_BASE_URL + '/sub_categories?active_only=true&category_ids=1035').json()
return activeSoccerSubCategoriesResp['results'] if activeSoccerSubCategoriesResp is not None else []
async def main():
print('----- START ACTIVE EVENTS -----')
active_events = await getActiveEvents()
print(active_events)
print('----- END ACTIVE EVENTS -----')
print('----- START ACTIVE EPL EVENTS -----')
active_epl_events = await getActiveEplEvents()
print(active_epl_events)
print('----- END ACTIVE EPL EVENTS -----')
print('----- START ACTIVE SUB CATEGORIES -----')
active_sub_categories = await getActiveSubCategories()
print(active_sub_categories)
print('----- END ACTIVE SUB CATEGORIES -----')
print('----- START ACTIVE CATEGORIES -----')
active_categories = await getActiveCategories()
print(active_categories)
print('----- END ACTIVE CATEGORIES -----')
print('----- START ACTIVE SOCCER SUB CATEGORIES -----')
active_soccer_sub_categories = await getActiveSoccerSubCategories()
print(active_soccer_sub_categories)
print('----- END ACTIVE SOCCER SUB CATEGORIES -----')
if __name__ == '__main__':
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
loop.close()

List Categories

No authentication required
get
{base_url}/
categories
List Categories

Get Category

No authentication required
get
{base_url}/
categories/{category_id}
Get Category

List Subcategories

No authentication required
get
{base_url}/
sub_categories
List Subcategories

Get Subcategory

No authentication required
get
{base_url}/
sub_category/{sub_category_id}
Get Subcategory

List Events

No authentication required
get
{base_url}/
events/
List Events

Get Event

No authentication required
get
{base_url}/
event/{event_id}
Get Event

List Markets

No authentication required
get
{base_url}/
markets
List Markets

Get Market

No authentication required
get
{base_url}/
market/{market_pubkey}
Get Market