Get division policy leaderboard
curl --request GET \
--url https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard \
--header 'Authorization: Bearer <token>'import requests
url = "https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard', 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://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"rank": 123,
"policy_version_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"policy_label": "<string>",
"score": 123,
"rounds_played": 123,
"wins": 123,
"episodes_played": 123,
"win_rate": 123,
"player_id": "<string>",
"player_name": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Rounds
Get division policy leaderboard
Return policy performance over the selected recent time window.
GET
/
v2
/
divisions
/
{division_id}
/
policy-leaderboard
Get division policy leaderboard
curl --request GET \
--url https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard \
--header 'Authorization: Bearer <token>'import requests
url = "https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard', 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://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://softmax.com/api/observatory/v2/divisions/{division_id}/policy-leaderboard")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"rank": 123,
"policy_version_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"policy_label": "<string>",
"score": 123,
"rounds_played": 123,
"wins": 123,
"episodes_played": 123,
"win_rate": 123,
"player_id": "<string>",
"player_name": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Bearer token issued by Softmax
Path Parameters
Division whose policy leaderboard should be returned.
Pattern:
^div_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$Query Parameters
Recent time window used to aggregate policy performance.
Response
PolicyLeaderboardEntryPublic · object[] | null
Successful Response
Policy version's position on the leaderboard.
Policy version represented by this entry.
Human-readable label for the policy version.
Leaderboard score for the policy version.
Rounds represented by this entry.
Episodes won in the selected window.
Episodes played in the selected window.
Episode win rate from 0 to 1.
Player associated with the policy version, or null when none is assigned.
Name of the associated player, or null when none is assigned.