更新排行榜定义
Updates a leaderboard definition.
Allowed entity token types: title, game_server
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| LeaderboardSizeLimitExceeded | 1575 |
| MaxQueryableVersionsExceeded | 23015 |
| MaxQueryableVersionsValueNotAllowedForTier | 1591 |
| PlayFabErrorEventNotSupportedForEntityType | 23013 |
| ResetIntervalCannotBeModified | 1598 |
POST
/
Leaderboard
/
UpdateLeaderboardDefinition
Update Leaderboard Definition
curl --request POST \
--url https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '
{
"Name": "HighestScoresByLevel",
"VersionConfiguration": {
"MaxQueryableVersions": 1
},
"SizeLimit": 1000,
"EventEmissionConfig": {
"VersionEndConfig": {},
"EntityRankOnVersionEndConfig": {
"RankLimit": 1
}
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition"
payload = {
"Name": "HighestScoresByLevel",
"VersionConfiguration": { "MaxQueryableVersions": 1 },
"SizeLimit": 1000,
"EventEmissionConfig": {
"VersionEndConfig": {},
"EntityRankOnVersionEndConfig": { "RankLimit": 1 }
}
}
headers = {
"X-EntityToken": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-EntityToken': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Name: 'HighestScoresByLevel',
VersionConfiguration: {MaxQueryableVersions: 1},
SizeLimit: 1000,
EventEmissionConfig: {VersionEndConfig: {}, EntityRankOnVersionEndConfig: {RankLimit: 1}}
})
};
fetch('https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition', 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://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'Name' => 'HighestScoresByLevel',
'VersionConfiguration' => [
'MaxQueryableVersions' => 1
],
'SizeLimit' => 1000,
'EventEmissionConfig' => [
'VersionEndConfig' => [
],
'EntityRankOnVersionEndConfig' => [
'RankLimit' => 1
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-EntityToken: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition"
payload := strings.NewReader("{\n \"Name\": \"HighestScoresByLevel\",\n \"VersionConfiguration\": {\n \"MaxQueryableVersions\": 1\n },\n \"SizeLimit\": 1000,\n \"EventEmissionConfig\": {\n \"VersionEndConfig\": {},\n \"EntityRankOnVersionEndConfig\": {\n \"RankLimit\": 1\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-EntityToken", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Name\": \"HighestScoresByLevel\",\n \"VersionConfiguration\": {\n \"MaxQueryableVersions\": 1\n },\n \"SizeLimit\": 1000,\n \"EventEmissionConfig\": {\n \"VersionEndConfig\": {},\n \"EntityRankOnVersionEndConfig\": {\n \"RankLimit\": 1\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-EntityToken"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"Name\": \"HighestScoresByLevel\",\n \"VersionConfiguration\": {\n \"MaxQueryableVersions\": 1\n },\n \"SizeLimit\": 1000,\n \"EventEmissionConfig\": {\n \"VersionEndConfig\": {},\n \"EntityRankOnVersionEndConfig\": {\n \"RankLimit\": 1\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"status": "<string>",
"data": {}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}授权
This API requires an Entity Session Token, available from the Entity GetEntityToken method.
请求体
application/json
The name of the leaderboard to update the definition for.
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).
[In Preview]: The configuration for the events emitted by this leaderboard. If not specified, no events will be emitted.
Show child attributes
Show child attributes
Maximum number of entries on this leaderboard
The version reset configuration for the leaderboard definition.
Show child attributes
Show child attributes
最后修改于 2026年10月6日
此页面对您有帮助吗?
⌘I
Update Leaderboard Definition
curl --request POST \
--url https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '
{
"Name": "HighestScoresByLevel",
"VersionConfiguration": {
"MaxQueryableVersions": 1
},
"SizeLimit": 1000,
"EventEmissionConfig": {
"VersionEndConfig": {},
"EntityRankOnVersionEndConfig": {
"RankLimit": 1
}
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition"
payload = {
"Name": "HighestScoresByLevel",
"VersionConfiguration": { "MaxQueryableVersions": 1 },
"SizeLimit": 1000,
"EventEmissionConfig": {
"VersionEndConfig": {},
"EntityRankOnVersionEndConfig": { "RankLimit": 1 }
}
}
headers = {
"X-EntityToken": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-EntityToken': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
Name: 'HighestScoresByLevel',
VersionConfiguration: {MaxQueryableVersions: 1},
SizeLimit: 1000,
EventEmissionConfig: {VersionEndConfig: {}, EntityRankOnVersionEndConfig: {RankLimit: 1}}
})
};
fetch('https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition', 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://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'Name' => 'HighestScoresByLevel',
'VersionConfiguration' => [
'MaxQueryableVersions' => 1
],
'SizeLimit' => 1000,
'EventEmissionConfig' => [
'VersionEndConfig' => [
],
'EntityRankOnVersionEndConfig' => [
'RankLimit' => 1
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-EntityToken: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition"
payload := strings.NewReader("{\n \"Name\": \"HighestScoresByLevel\",\n \"VersionConfiguration\": {\n \"MaxQueryableVersions\": 1\n },\n \"SizeLimit\": 1000,\n \"EventEmissionConfig\": {\n \"VersionEndConfig\": {},\n \"EntityRankOnVersionEndConfig\": {\n \"RankLimit\": 1\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-EntityToken", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Name\": \"HighestScoresByLevel\",\n \"VersionConfiguration\": {\n \"MaxQueryableVersions\": 1\n },\n \"SizeLimit\": 1000,\n \"EventEmissionConfig\": {\n \"VersionEndConfig\": {},\n \"EntityRankOnVersionEndConfig\": {\n \"RankLimit\": 1\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Leaderboard/UpdateLeaderboardDefinition")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-EntityToken"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"Name\": \"HighestScoresByLevel\",\n \"VersionConfiguration\": {\n \"MaxQueryableVersions\": 1\n },\n \"SizeLimit\": 1000,\n \"EventEmissionConfig\": {\n \"VersionEndConfig\": {},\n \"EntityRankOnVersionEndConfig\": {\n \"RankLimit\": 1\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"status": "<string>",
"data": {}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}