Get Catalog Config
Gets the configuration for the catalog. Only Title Entities can call this API. There is a limit of 100 requests in 10 seconds for this API. More information about the Catalog Config can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/settings
Allowed entity token types: title
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| BillingInformationRequired | 1266 |
| InvalidEntityType | 1373 |
curl --request POST \
--url https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '{}'import requests
url = "https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig"
payload = {}
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({})
};
fetch('https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig', 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/Catalog/GetCatalogConfig",
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([
]),
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/Catalog/GetCatalogConfig"
payload := strings.NewReader("{}")
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/Catalog/GetCatalogConfig")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig")
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 = "{}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"Config": {
"IsCatalogEnabled": true,
"AdminEntities": [
{
"Id": "ABC123",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
],
"DisplayPropertyIndexInfos": [
{
"Name": "damage",
"Type": "QueryDouble"
}
],
"ReviewerEntities": [
{
"Id": "ABC123",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
],
"UserGeneratedContent": {
"ContentTypes": [
"skin",
"map",
"example item"
],
"Tags": [
"pirate",
"holiday"
]
}
}
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}Authorizations
This API requires an Entity Session Token, available from the Entity GetEntityToken method.
Body
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).
Response
The Http status code. If X-ReportErrorAsSuccess header is set to true, this will report the actual http error code.
The Http status code as a string.
Show child attributes
Show child attributes
{ "Config": { "IsCatalogEnabled": true, "AdminEntities": [ { "Id": "ABC123", "Type": "title_player_account", "TypeString": "title_player_account" } ], "DisplayPropertyIndexInfos": [{ "Name": "damage", "Type": "QueryDouble" }], "ReviewerEntities": [ { "Id": "ABC123", "Type": "title_player_account", "TypeString": "title_player_account" } ], "UserGeneratedContent": { "ContentTypes": ["skin", "map", "example item"], "Tags": ["pirate", "holiday"] } } }
Was this page helpful?
curl --request POST \
--url https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '{}'import requests
url = "https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig"
payload = {}
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({})
};
fetch('https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig', 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/Catalog/GetCatalogConfig",
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([
]),
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/Catalog/GetCatalogConfig"
payload := strings.NewReader("{}")
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/Catalog/GetCatalogConfig")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Catalog/GetCatalogConfig")
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 = "{}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"Config": {
"IsCatalogEnabled": true,
"AdminEntities": [
{
"Id": "ABC123",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
],
"DisplayPropertyIndexInfos": [
{
"Name": "damage",
"Type": "QueryDouble"
}
],
"ReviewerEntities": [
{
"Id": "ABC123",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
],
"UserGeneratedContent": {
"ContentTypes": [
"skin",
"map",
"example item"
],
"Tags": [
"pirate",
"holiday"
]
}
}
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}