消耗 PSN 权利
Checks for any new consumable entitlements. If any are found, they are consumed and added as PlayFab items
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| DownstreamServiceUnavailable | 1127 |
| ExpiredAuthToken | 1153 |
| FailedToGetEntitlements | 1154 |
| ProductDisabledForTitle | 1609 |
| PSNInaccessible | 1152 |
POST
/
Client
/
ConsumePSNEntitlements
Consume PSN Entitlements
curl --request POST \
--url https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements \
--header 'Content-Type: application/json' \
--header 'X-Authorization: <api-key>' \
--data '
{
"ServiceLabel": 1
}
'import requests
url = "https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements"
payload = { "ServiceLabel": 1 }
headers = {
"X-Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Authorization': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({ServiceLabel: 1})
};
fetch('https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements', 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/Client/ConsumePSNEntitlements",
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([
'ServiceLabel' => 1
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Authorization: <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/Client/ConsumePSNEntitlements"
payload := strings.NewReader("{\n \"ServiceLabel\": 1\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Authorization", "<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/Client/ConsumePSNEntitlements")
.header("X-Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ServiceLabel\": 1\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ServiceLabel\": 1\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"ItemsGranted": [
{
"ItemId": "shield_level_5",
"ItemInstanceId": "133713371337",
"ItemClass": "shields",
"PurchaseDate": "2017-03-07T00:00:00",
"Expiration": "2018-10-01T00:00:00",
"RemainingUses": 10,
"Annotation": "No Annotation",
"CatalogVersion": "5",
"BundleParent": "crate block 1"
}
]
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}授权
This API requires a client session ticket, available from any Client Login function.
请求体
application/json
Id of the PlayStation™ Network service label to consume entitlements from
Which catalog to match granted entitlements against. If null, defaults to title default catalog
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).
响应
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
示例:
{
"ItemsGranted": [
{
"ItemId": "shield_level_5",
"ItemInstanceId": "133713371337",
"ItemClass": "shields",
"PurchaseDate": "2017-03-07T00:00:00",
"Expiration": "2018-10-01T00:00:00",
"RemainingUses": 10,
"Annotation": "No Annotation",
"CatalogVersion": "5",
"BundleParent": "crate block 1"
}
]
}
最后修改于 2026年10月6日
此页面对您有帮助吗?
⌘I
Consume PSN Entitlements
curl --request POST \
--url https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements \
--header 'Content-Type: application/json' \
--header 'X-Authorization: <api-key>' \
--data '
{
"ServiceLabel": 1
}
'import requests
url = "https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements"
payload = { "ServiceLabel": 1 }
headers = {
"X-Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Authorization': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({ServiceLabel: 1})
};
fetch('https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements', 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/Client/ConsumePSNEntitlements",
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([
'ServiceLabel' => 1
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Authorization: <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/Client/ConsumePSNEntitlements"
payload := strings.NewReader("{\n \"ServiceLabel\": 1\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Authorization", "<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/Client/ConsumePSNEntitlements")
.header("X-Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ServiceLabel\": 1\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Client/ConsumePSNEntitlements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ServiceLabel\": 1\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"ItemsGranted": [
{
"ItemId": "shield_level_5",
"ItemInstanceId": "133713371337",
"ItemClass": "shields",
"PurchaseDate": "2017-03-07T00:00:00",
"Expiration": "2018-10-01T00:00:00",
"RemainingUses": 10,
"Annotation": "No Annotation",
"CatalogVersion": "5",
"BundleParent": "crate block 1"
}
]
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}