Invite To Lobby
Send a notification to invite a player to a lobby.
Allowed entity token types: title_player_account
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| LobbyBadRequest | 13007 |
| LobbyDoesNotExist | 13000 |
| LobbyPlayerNotPresent | 13006 |
| LobbyRateLimitExceeded | 13001 |
curl --request POST \
--url https://{titleId}.playfabapi.com/Lobby/InviteToLobby \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '
{
"LobbyId": "12345678-1234-1234-1234-123456789ABC",
"MemberEntity": {
"Id": "1234",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"InviteeEntity": {
"Id": "4321",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Lobby/InviteToLobby"
payload = {
"LobbyId": "12345678-1234-1234-1234-123456789ABC",
"MemberEntity": {
"Id": "1234",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"InviteeEntity": {
"Id": "4321",
"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({
LobbyId: '12345678-1234-1234-1234-123456789ABC',
MemberEntity: {Id: '1234', Type: 'title_player_account', TypeString: 'title_player_account'},
InviteeEntity: {Id: '4321', Type: 'title_player_account', TypeString: 'title_player_account'}
})
};
fetch('https://{titleId}.playfabapi.com/Lobby/InviteToLobby', 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/Lobby/InviteToLobby",
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([
'LobbyId' => '12345678-1234-1234-1234-123456789ABC',
'MemberEntity' => [
'Id' => '1234',
'Type' => 'title_player_account',
'TypeString' => 'title_player_account'
],
'InviteeEntity' => [
'Id' => '4321',
'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/Lobby/InviteToLobby"
payload := strings.NewReader("{\n \"LobbyId\": \"12345678-1234-1234-1234-123456789ABC\",\n \"MemberEntity\": {\n \"Id\": \"1234\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n },\n \"InviteeEntity\": {\n \"Id\": \"4321\",\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/Lobby/InviteToLobby")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"LobbyId\": \"12345678-1234-1234-1234-123456789ABC\",\n \"MemberEntity\": {\n \"Id\": \"1234\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n },\n \"InviteeEntity\": {\n \"Id\": \"4321\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Lobby/InviteToLobby")
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 \"LobbyId\": \"12345678-1234-1234-1234-123456789ABC\",\n \"MemberEntity\": {\n \"Id\": \"1234\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n },\n \"InviteeEntity\": {\n \"Id\": \"4321\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\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 an Entity Session Token, available from the Entity GetEntityToken method.
Body
Request to invite a player to a lobby the caller is already a member of. Only a client can invite another player to a lobby.
Request to invite a player to a lobby the caller is already a member of. Only a client can invite another player to a lobby.
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).
The entity invited to the lobby.
Show child attributes
Show child attributes
The id of the lobby.
The member entity sending the invite. Must be a member of the lobby.
Show child attributes
Show child attributes
Was this page helpful?
curl --request POST \
--url https://{titleId}.playfabapi.com/Lobby/InviteToLobby \
--header 'Content-Type: application/json' \
--header 'X-EntityToken: <api-key>' \
--data '
{
"LobbyId": "12345678-1234-1234-1234-123456789ABC",
"MemberEntity": {
"Id": "1234",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"InviteeEntity": {
"Id": "4321",
"Type": "title_player_account",
"TypeString": "title_player_account"
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Lobby/InviteToLobby"
payload = {
"LobbyId": "12345678-1234-1234-1234-123456789ABC",
"MemberEntity": {
"Id": "1234",
"Type": "title_player_account",
"TypeString": "title_player_account"
},
"InviteeEntity": {
"Id": "4321",
"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({
LobbyId: '12345678-1234-1234-1234-123456789ABC',
MemberEntity: {Id: '1234', Type: 'title_player_account', TypeString: 'title_player_account'},
InviteeEntity: {Id: '4321', Type: 'title_player_account', TypeString: 'title_player_account'}
})
};
fetch('https://{titleId}.playfabapi.com/Lobby/InviteToLobby', 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/Lobby/InviteToLobby",
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([
'LobbyId' => '12345678-1234-1234-1234-123456789ABC',
'MemberEntity' => [
'Id' => '1234',
'Type' => 'title_player_account',
'TypeString' => 'title_player_account'
],
'InviteeEntity' => [
'Id' => '4321',
'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/Lobby/InviteToLobby"
payload := strings.NewReader("{\n \"LobbyId\": \"12345678-1234-1234-1234-123456789ABC\",\n \"MemberEntity\": {\n \"Id\": \"1234\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n },\n \"InviteeEntity\": {\n \"Id\": \"4321\",\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/Lobby/InviteToLobby")
.header("X-EntityToken", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"LobbyId\": \"12345678-1234-1234-1234-123456789ABC\",\n \"MemberEntity\": {\n \"Id\": \"1234\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n },\n \"InviteeEntity\": {\n \"Id\": \"4321\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Lobby/InviteToLobby")
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 \"LobbyId\": \"12345678-1234-1234-1234-123456789ABC\",\n \"MemberEntity\": {\n \"Id\": \"1234\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\n },\n \"InviteeEntity\": {\n \"Id\": \"4321\",\n \"Type\": \"title_player_account\",\n \"TypeString\": \"title_player_account\"\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": {}
}