Get Entity Draft Items
Retrieves a paginated list of the items from the draft catalog created by the Entity. Up to 50 items can be returned at once. You can use continuation tokens to paginate through results that return greater than the limit. GetEntityDraftItems does not work off a cache of the Catalog and should be used when trying to get recent item updates.
Allowed entity token types: title, master_player_account, title_player_account
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| DatabaseThroughputExceeded | 1113 |
| ItemNotFound | 1047 |
curl --request POST \
--url https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '
{
"Count": 2,
"Entity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems"
payload = {
"Count": 2,
"Entity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
}
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({
Count: 2,
Entity: {Id: 'someId', Type: 'title_player_account', TypeString: 'title_player_account'}
})
};
fetch('https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems', 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/GetEntityDraftItems",
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([
'Count' => 2,
'Entity' => [
'Id' => 'someId',
'Type' => 'title_player_account',
'TypeString' => 'title_player_account'
]
]),
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/GetEntityDraftItems"
payload := strings.NewReader("{\n \"Count\": 2,\n \"Entity\": {\n \"Id\": \"someId\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\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/Catalog/GetEntityDraftItems")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Count\": 2,\n \"Entity\": {\n \"Id\": \"someId\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems")
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 \"Count\": 2,\n \"Entity\": {\n \"Id\": \"someId\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"Items": [
{
"Id": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"Type": "ugc",
"Title": {
"NEUTRAL": "Neutral title",
"en-US": "US English title"
},
"Description": {
"NEUTRAL": "Neutral description",
"en-US": "US English description"
},
"Keywords": {
"NEUTRAL": {
"Values": [
"Keyword_1",
"Keyword_2"
]
}
},
"ContentType": "example item",
"CreatorEntity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"IsHidden": false,
"Tags": [
"pirates",
"holiday"
],
"DisplayVersion": "1.0.0",
"CreationDate": "2018-08-17T22:32:10.4729879+00:00",
"LastModifiedDate": "2018-08-17T22:32:31.911375+00:00",
"Contents": [
{
"Id": "00000000-0000-0000-0000-000000000001",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000001/textures.zip",
"MaxClientVersion": "2.4.1",
"MinClientVersion": "2.0.0"
}
],
"Images": [
{
"Id": "00000000-0000-0000-0000-000000000003",
"Type": "Thumbnail",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000003/splashscreen_thumb.jpg"
}
],
"DisplayProperties": {
"mapDetails": {
"mapType": "desertIsland",
"gameMode": "capture",
"maxPlayers": 16
},
"averageMatchLengthInSeconds": 947
},
"ETag": "opaqueString",
"DefaultStackId": "Static_Default_Stack_Id"
},
{
"Id": "eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee",
"Type": "ugc",
"Title": {
"NEUTRAL": "Neutral title",
"en-US": "US English title"
},
"Description": {
"NEUTRAL": "Neutral description",
"en-US": "US English description"
},
"Keywords": {
"NEUTRAL": {
"Values": [
"Keyword_1",
"Keyword_2"
]
}
},
"ContentType": "example item",
"CreatorEntity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"IsHidden": false,
"Tags": [
"pirates",
"holiday"
],
"DisplayVersion": "1.0.0",
"CreationDate": "2018-08-17T22:32:10.4729879+00:00",
"LastModifiedDate": "2018-08-17T22:32:31.911375+00:00",
"Contents": [
{
"Id": "00000000-0000-0000-0000-000000000001",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000001/textures.zip",
"MaxClientVersion": "2.4.1",
"MinClientVersion": "2.0.0"
}
],
"Images": [
{
"Id": "00000000-0000-0000-0000-000000000003",
"Type": "Thumbnail",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000003/splashscreen_thumb.jpg"
}
],
"DisplayProperties": {
"mapDetails": {
"mapType": "desertIsland",
"gameMode": "capture",
"maxPlayers": 16
},
"averageMatchLengthInSeconds": 947
},
"ETag": "opaqueString",
"DefaultStackId": "Static_Default_Stack_Id"
}
],
"ContinuationToken": "+RID:IQkbAIvkRQD9oQIAAAAAAA==#RT:1#TRC:10#FPC:AgEKHAoKAPEhAOAhQP8DWIAMAgB8rRACAJeAHAIA0r0="
}
}{
"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
Number of items to retrieve. This value is optional. Default value is 10.
An opaque token used to retrieve the next page of items created by the caller, if any are available. Should be null on initial request.
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).
The entity to perform this action on.
Show child attributes
Show child attributes
OData Filter to refine the items returned. CatalogItem properties 'type' can be used in the filter. For example: "type eq 'ugc'"
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
{
"Items": [
{
"Id": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"Type": "ugc",
"Title": {
"NEUTRAL": "Neutral title",
"en-US": "US English title"
},
"Description": {
"NEUTRAL": "Neutral description",
"en-US": "US English description"
},
"Keywords": {
"NEUTRAL": { "Values": ["Keyword_1", "Keyword_2"] }
},
"ContentType": "example item",
"CreatorEntity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"IsHidden": false,
"Tags": ["pirates", "holiday"],
"DisplayVersion": "1.0.0",
"CreationDate": "2018-08-17T22:32:10.4729879+00:00",
"LastModifiedDate": "2018-08-17T22:32:31.911375+00:00",
"Contents": [
{
"Id": "00000000-0000-0000-0000-000000000001",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000001/textures.zip",
"MaxClientVersion": "2.4.1",
"MinClientVersion": "2.0.0"
}
],
"Images": [
{
"Id": "00000000-0000-0000-0000-000000000003",
"Type": "Thumbnail",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000003/splashscreen_thumb.jpg"
}
],
"DisplayProperties": {
"mapDetails": {
"mapType": "desertIsland",
"gameMode": "capture",
"maxPlayers": 16
},
"averageMatchLengthInSeconds": 947
},
"ETag": "opaqueString",
"DefaultStackId": "Static_Default_Stack_Id"
},
{
"Id": "eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee",
"Type": "ugc",
"Title": {
"NEUTRAL": "Neutral title",
"en-US": "US English title"
},
"Description": {
"NEUTRAL": "Neutral description",
"en-US": "US English description"
},
"Keywords": {
"NEUTRAL": { "Values": ["Keyword_1", "Keyword_2"] }
},
"ContentType": "example item",
"CreatorEntity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"IsHidden": false,
"Tags": ["pirates", "holiday"],
"DisplayVersion": "1.0.0",
"CreationDate": "2018-08-17T22:32:10.4729879+00:00",
"LastModifiedDate": "2018-08-17T22:32:31.911375+00:00",
"Contents": [
{
"Id": "00000000-0000-0000-0000-000000000001",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000001/textures.zip",
"MaxClientVersion": "2.4.1",
"MinClientVersion": "2.0.0"
}
],
"Images": [
{
"Id": "00000000-0000-0000-0000-000000000003",
"Type": "Thumbnail",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000003/splashscreen_thumb.jpg"
}
],
"DisplayProperties": {
"mapDetails": {
"mapType": "desertIsland",
"gameMode": "capture",
"maxPlayers": 16
},
"averageMatchLengthInSeconds": 947
},
"ETag": "opaqueString",
"DefaultStackId": "Static_Default_Stack_Id"
}
],
"ContinuationToken": "+RID:IQkbAIvkRQD9oQIAAAAAAA==#RT:1#TRC:10#FPC:AgEKHAoKAPEhAOAhQP8DWIAMAgB8rRACAJeAHAIA0r0="
}
Was this page helpful?
curl --request POST \
--url https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '
{
"Count": 2,
"Entity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems"
payload = {
"Count": 2,
"Entity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
}
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({
Count: 2,
Entity: {Id: 'someId', Type: 'title_player_account', TypeString: 'title_player_account'}
})
};
fetch('https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems', 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/GetEntityDraftItems",
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([
'Count' => 2,
'Entity' => [
'Id' => 'someId',
'Type' => 'title_player_account',
'TypeString' => 'title_player_account'
]
]),
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/GetEntityDraftItems"
payload := strings.NewReader("{\n \"Count\": 2,\n \"Entity\": {\n \"Id\": \"someId\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\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/Catalog/GetEntityDraftItems")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Count\": 2,\n \"Entity\": {\n \"Id\": \"someId\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Catalog/GetEntityDraftItems")
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 \"Count\": 2,\n \"Entity\": {\n \"Id\": \"someId\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"Items": [
{
"Id": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"Type": "ugc",
"Title": {
"NEUTRAL": "Neutral title",
"en-US": "US English title"
},
"Description": {
"NEUTRAL": "Neutral description",
"en-US": "US English description"
},
"Keywords": {
"NEUTRAL": {
"Values": [
"Keyword_1",
"Keyword_2"
]
}
},
"ContentType": "example item",
"CreatorEntity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"IsHidden": false,
"Tags": [
"pirates",
"holiday"
],
"DisplayVersion": "1.0.0",
"CreationDate": "2018-08-17T22:32:10.4729879+00:00",
"LastModifiedDate": "2018-08-17T22:32:31.911375+00:00",
"Contents": [
{
"Id": "00000000-0000-0000-0000-000000000001",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000001/textures.zip",
"MaxClientVersion": "2.4.1",
"MinClientVersion": "2.0.0"
}
],
"Images": [
{
"Id": "00000000-0000-0000-0000-000000000003",
"Type": "Thumbnail",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000003/splashscreen_thumb.jpg"
}
],
"DisplayProperties": {
"mapDetails": {
"mapType": "desertIsland",
"gameMode": "capture",
"maxPlayers": 16
},
"averageMatchLengthInSeconds": 947
},
"ETag": "opaqueString",
"DefaultStackId": "Static_Default_Stack_Id"
},
{
"Id": "eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee",
"Type": "ugc",
"Title": {
"NEUTRAL": "Neutral title",
"en-US": "US English title"
},
"Description": {
"NEUTRAL": "Neutral description",
"en-US": "US English description"
},
"Keywords": {
"NEUTRAL": {
"Values": [
"Keyword_1",
"Keyword_2"
]
}
},
"ContentType": "example item",
"CreatorEntity": {
"Id": "someId",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"IsHidden": false,
"Tags": [
"pirates",
"holiday"
],
"DisplayVersion": "1.0.0",
"CreationDate": "2018-08-17T22:32:10.4729879+00:00",
"LastModifiedDate": "2018-08-17T22:32:31.911375+00:00",
"Contents": [
{
"Id": "00000000-0000-0000-0000-000000000001",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000001/textures.zip",
"MaxClientVersion": "2.4.1",
"MinClientVersion": "2.0.0"
}
],
"Images": [
{
"Id": "00000000-0000-0000-0000-000000000003",
"Type": "Thumbnail",
"Url": "https://endpoint.blob.core.windows.net/some-identifier-private/00000000-0000-0000-0000-000000000003/splashscreen_thumb.jpg"
}
],
"DisplayProperties": {
"mapDetails": {
"mapType": "desertIsland",
"gameMode": "capture",
"maxPlayers": 16
},
"averageMatchLengthInSeconds": 947
},
"ETag": "opaqueString",
"DefaultStackId": "Static_Default_Stack_Id"
}
],
"ContinuationToken": "+RID:IQkbAIvkRQD9oQIAAAAAAA==#RT:1#TRC:10#FPC:AgEKHAoKAPEhAOAhQP8DWIAMAgB8rRACAJeAHAIA0r0="
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}