Add Generic ID
Adds the specified generic service identifier to the player’s PlayFab account. This is designed to allow for a PlayFab ID lookup of any arbitrary service identifier a title wants to add. This identifier should never be used as authentication credentials, as the intent is that it is easily accessible by other players.
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| IdentifierAlreadyClaimed | 1238 |
POST
/
Client
/
AddGenericID
Add Generic ID
curl --request POST \
--url https://{titleId}.playfabapi.com/Client/AddGenericID \
--header 'Content-Type: application/json' \
--header 'X-Authorization: <api-key>' \
--data '
{
"GenericId": {
"ServiceName": "BigBizSocial",
"UserId": "1234567890"
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Client/AddGenericID"
payload = { "GenericId": {
"ServiceName": "BigBizSocial",
"UserId": "1234567890"
} }
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({GenericId: {ServiceName: 'BigBizSocial', UserId: '1234567890'}})
};
fetch('https://{titleId}.playfabapi.com/Client/AddGenericID', 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/AddGenericID",
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([
'GenericId' => [
'ServiceName' => 'BigBizSocial',
'UserId' => '1234567890'
]
]),
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/AddGenericID"
payload := strings.NewReader("{\n \"GenericId\": {\n \"ServiceName\": \"BigBizSocial\",\n \"UserId\": \"1234567890\"\n }\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/AddGenericID")
.header("X-Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"GenericId\": {\n \"ServiceName\": \"BigBizSocial\",\n \"UserId\": \"1234567890\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Client/AddGenericID")
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 \"GenericId\": {\n \"ServiceName\": \"BigBizSocial\",\n \"UserId\": \"1234567890\"\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": {}
}Authorizations
This API requires a client session ticket, available from any Client Login function.
Body
application/json
Generic service identifier to add to the player account.
Show child attributes
Show child attributes
Example:
{
"ServiceName": "BigBizSocial",
"UserId": "1234567890"
}
Last modified on October 1, 2026
Was this page helpful?
⌘I
Add Generic ID
curl --request POST \
--url https://{titleId}.playfabapi.com/Client/AddGenericID \
--header 'Content-Type: application/json' \
--header 'X-Authorization: <api-key>' \
--data '
{
"GenericId": {
"ServiceName": "BigBizSocial",
"UserId": "1234567890"
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Client/AddGenericID"
payload = { "GenericId": {
"ServiceName": "BigBizSocial",
"UserId": "1234567890"
} }
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({GenericId: {ServiceName: 'BigBizSocial', UserId: '1234567890'}})
};
fetch('https://{titleId}.playfabapi.com/Client/AddGenericID', 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/AddGenericID",
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([
'GenericId' => [
'ServiceName' => 'BigBizSocial',
'UserId' => '1234567890'
]
]),
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/AddGenericID"
payload := strings.NewReader("{\n \"GenericId\": {\n \"ServiceName\": \"BigBizSocial\",\n \"UserId\": \"1234567890\"\n }\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/AddGenericID")
.header("X-Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"GenericId\": {\n \"ServiceName\": \"BigBizSocial\",\n \"UserId\": \"1234567890\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Client/AddGenericID")
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 \"GenericId\": {\n \"ServiceName\": \"BigBizSocial\",\n \"UserId\": \"1234567890\"\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": {}
}