Mettre à jour le segment
Updates an existing player segment and its associated definition(s) and action(s) for a title.
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| InvalidSegment | 1242 |
| NameNotAvailable | 1058 |
| ProductDisabledForTitle | 1609 |
| SegmentManagementInvalidInput | 10005 |
| SegmentManagementInvalidSegmentId | 10004 |
| SegmentManagementInvalidSegmentName | 10006 |
| SegmentManagementNoExpressionTree | 10001 |
| SegmentManagementSegmentCountOverLimit | 10003 |
| SegmentManagementTriggerActionCountOverLimit | 10002 |
| UnknownError | 1039 |
| UpdateSegmentRateLimitExceeded | 10009 |
POST
/
Admin
/
UpdateSegment
Update Segment
curl --request POST \
--url https://{titleId}.playfabapi.com/Admin/UpdateSegment \
--header 'Content-Type: application/json' \
--header 'X-SecretKey: <api-key>' \
--data '
{
"SegmentModel": {
"SegmentId": "B05FC8CB558A6570",
"Name": "My user segment",
"SegmentOrDefinitions": [
{
"SegmentAndDefinitions": [
{
"AllPlayersFilter": {}
}
]
}
],
"EnteredSegmentActions": [
{
"BanPlayerAction": {
"BanHours": 2,
"ReasonForBan": "Not played for a year"
}
}
],
"LeftSegmentActions": [
{
"ExecuteAzureFunctionAction": {
"AzureFunction": "AzureFunction1",
"FunctionParameter": "{\"InputParam\": \"1\"}"
}
}
]
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Admin/UpdateSegment"
payload = { "SegmentModel": {
"SegmentId": "B05FC8CB558A6570",
"Name": "My user segment",
"SegmentOrDefinitions": [{ "SegmentAndDefinitions": [{ "AllPlayersFilter": {} }] }],
"EnteredSegmentActions": [{ "BanPlayerAction": {
"BanHours": 2,
"ReasonForBan": "Not played for a year"
} }],
"LeftSegmentActions": [{ "ExecuteAzureFunctionAction": {
"AzureFunction": "AzureFunction1",
"FunctionParameter": "{\"InputParam\": \"1\"}"
} }]
} }
headers = {
"X-SecretKey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-SecretKey': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
SegmentModel: {
SegmentId: 'B05FC8CB558A6570',
Name: 'My user segment',
SegmentOrDefinitions: [{SegmentAndDefinitions: [{AllPlayersFilter: {}}]}],
EnteredSegmentActions: [{BanPlayerAction: {BanHours: 2, ReasonForBan: 'Not played for a year'}}],
LeftSegmentActions: [
{
ExecuteAzureFunctionAction: {AzureFunction: 'AzureFunction1', FunctionParameter: '{"InputParam": "1"}'}
}
]
}
})
};
fetch('https://{titleId}.playfabapi.com/Admin/UpdateSegment', 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/Admin/UpdateSegment",
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([
'SegmentModel' => [
'SegmentId' => 'B05FC8CB558A6570',
'Name' => 'My user segment',
'SegmentOrDefinitions' => [
[
'SegmentAndDefinitions' => [
[
'AllPlayersFilter' => [
]
]
]
]
],
'EnteredSegmentActions' => [
[
'BanPlayerAction' => [
'BanHours' => 2,
'ReasonForBan' => 'Not played for a year'
]
]
],
'LeftSegmentActions' => [
[
'ExecuteAzureFunctionAction' => [
'AzureFunction' => 'AzureFunction1',
'FunctionParameter' => '{"InputParam": "1"}'
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-SecretKey: <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/Admin/UpdateSegment"
payload := strings.NewReader("{\n \"SegmentModel\": {\n \"SegmentId\": \"B05FC8CB558A6570\",\n \"Name\": \"My user segment\",\n \"SegmentOrDefinitions\": [\n {\n \"SegmentAndDefinitions\": [\n {\n \"AllPlayersFilter\": {}\n }\n ]\n }\n ],\n \"EnteredSegmentActions\": [\n {\n \"BanPlayerAction\": {\n \"BanHours\": 2,\n \"ReasonForBan\": \"Not played for a year\"\n }\n }\n ],\n \"LeftSegmentActions\": [\n {\n \"ExecuteAzureFunctionAction\": {\n \"AzureFunction\": \"AzureFunction1\",\n \"FunctionParameter\": \"{\\\"InputParam\\\": \\\"1\\\"}\"\n }\n }\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-SecretKey", "<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/Admin/UpdateSegment")
.header("X-SecretKey", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"SegmentModel\": {\n \"SegmentId\": \"B05FC8CB558A6570\",\n \"Name\": \"My user segment\",\n \"SegmentOrDefinitions\": [\n {\n \"SegmentAndDefinitions\": [\n {\n \"AllPlayersFilter\": {}\n }\n ]\n }\n ],\n \"EnteredSegmentActions\": [\n {\n \"BanPlayerAction\": {\n \"BanHours\": 2,\n \"ReasonForBan\": \"Not played for a year\"\n }\n }\n ],\n \"LeftSegmentActions\": [\n {\n \"ExecuteAzureFunctionAction\": {\n \"AzureFunction\": \"AzureFunction1\",\n \"FunctionParameter\": \"{\\\"InputParam\\\": \\\"1\\\"}\"\n }\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Admin/UpdateSegment")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-SecretKey"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"SegmentModel\": {\n \"SegmentId\": \"B05FC8CB558A6570\",\n \"Name\": \"My user segment\",\n \"SegmentOrDefinitions\": [\n {\n \"SegmentAndDefinitions\": [\n {\n \"AllPlayersFilter\": {}\n }\n ]\n }\n ],\n \"EnteredSegmentActions\": [\n {\n \"BanPlayerAction\": {\n \"BanHours\": 2,\n \"ReasonForBan\": \"Not played for a year\"\n }\n }\n ],\n \"LeftSegmentActions\": [\n {\n \"ExecuteAzureFunctionAction\": {\n \"AzureFunction\": \"AzureFunction1\",\n \"FunctionParameter\": \"{\\\"InputParam\\\": \\\"1\\\"}\"\n }\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"status": "<string>",
"data": {
"ErrorMessage": "<string>",
"SegmentId": "<string>"
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}Autorisations
This API requires a title secret key, available to title admins, from PlayFab Game Manager.
Corps
application/json
Update segment properties data which are planning to update
Update segment properties data which are planning to update
Segment model with all of the segment properties data.
Show child attributes
Show child attributes
Dernière modification le 6 octobre 2026
Sujets connexes
Mettre à jour le rôleMettre à jour le groupeMettre à jour le Cloud ScriptMettre à jour les succès gérés par le titreMettre à jour le nom de la buildCette page vous a-t-elle été utile ?
⌘I
Update Segment
curl --request POST \
--url https://{titleId}.playfabapi.com/Admin/UpdateSegment \
--header 'Content-Type: application/json' \
--header 'X-SecretKey: <api-key>' \
--data '
{
"SegmentModel": {
"SegmentId": "B05FC8CB558A6570",
"Name": "My user segment",
"SegmentOrDefinitions": [
{
"SegmentAndDefinitions": [
{
"AllPlayersFilter": {}
}
]
}
],
"EnteredSegmentActions": [
{
"BanPlayerAction": {
"BanHours": 2,
"ReasonForBan": "Not played for a year"
}
}
],
"LeftSegmentActions": [
{
"ExecuteAzureFunctionAction": {
"AzureFunction": "AzureFunction1",
"FunctionParameter": "{\"InputParam\": \"1\"}"
}
}
]
}
}
'import requests
url = "https://{titleId}.playfabapi.com/Admin/UpdateSegment"
payload = { "SegmentModel": {
"SegmentId": "B05FC8CB558A6570",
"Name": "My user segment",
"SegmentOrDefinitions": [{ "SegmentAndDefinitions": [{ "AllPlayersFilter": {} }] }],
"EnteredSegmentActions": [{ "BanPlayerAction": {
"BanHours": 2,
"ReasonForBan": "Not played for a year"
} }],
"LeftSegmentActions": [{ "ExecuteAzureFunctionAction": {
"AzureFunction": "AzureFunction1",
"FunctionParameter": "{\"InputParam\": \"1\"}"
} }]
} }
headers = {
"X-SecretKey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-SecretKey': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
SegmentModel: {
SegmentId: 'B05FC8CB558A6570',
Name: 'My user segment',
SegmentOrDefinitions: [{SegmentAndDefinitions: [{AllPlayersFilter: {}}]}],
EnteredSegmentActions: [{BanPlayerAction: {BanHours: 2, ReasonForBan: 'Not played for a year'}}],
LeftSegmentActions: [
{
ExecuteAzureFunctionAction: {AzureFunction: 'AzureFunction1', FunctionParameter: '{"InputParam": "1"}'}
}
]
}
})
};
fetch('https://{titleId}.playfabapi.com/Admin/UpdateSegment', 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/Admin/UpdateSegment",
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([
'SegmentModel' => [
'SegmentId' => 'B05FC8CB558A6570',
'Name' => 'My user segment',
'SegmentOrDefinitions' => [
[
'SegmentAndDefinitions' => [
[
'AllPlayersFilter' => [
]
]
]
]
],
'EnteredSegmentActions' => [
[
'BanPlayerAction' => [
'BanHours' => 2,
'ReasonForBan' => 'Not played for a year'
]
]
],
'LeftSegmentActions' => [
[
'ExecuteAzureFunctionAction' => [
'AzureFunction' => 'AzureFunction1',
'FunctionParameter' => '{"InputParam": "1"}'
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-SecretKey: <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/Admin/UpdateSegment"
payload := strings.NewReader("{\n \"SegmentModel\": {\n \"SegmentId\": \"B05FC8CB558A6570\",\n \"Name\": \"My user segment\",\n \"SegmentOrDefinitions\": [\n {\n \"SegmentAndDefinitions\": [\n {\n \"AllPlayersFilter\": {}\n }\n ]\n }\n ],\n \"EnteredSegmentActions\": [\n {\n \"BanPlayerAction\": {\n \"BanHours\": 2,\n \"ReasonForBan\": \"Not played for a year\"\n }\n }\n ],\n \"LeftSegmentActions\": [\n {\n \"ExecuteAzureFunctionAction\": {\n \"AzureFunction\": \"AzureFunction1\",\n \"FunctionParameter\": \"{\\\"InputParam\\\": \\\"1\\\"}\"\n }\n }\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-SecretKey", "<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/Admin/UpdateSegment")
.header("X-SecretKey", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"SegmentModel\": {\n \"SegmentId\": \"B05FC8CB558A6570\",\n \"Name\": \"My user segment\",\n \"SegmentOrDefinitions\": [\n {\n \"SegmentAndDefinitions\": [\n {\n \"AllPlayersFilter\": {}\n }\n ]\n }\n ],\n \"EnteredSegmentActions\": [\n {\n \"BanPlayerAction\": {\n \"BanHours\": 2,\n \"ReasonForBan\": \"Not played for a year\"\n }\n }\n ],\n \"LeftSegmentActions\": [\n {\n \"ExecuteAzureFunctionAction\": {\n \"AzureFunction\": \"AzureFunction1\",\n \"FunctionParameter\": \"{\\\"InputParam\\\": \\\"1\\\"}\"\n }\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Admin/UpdateSegment")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-SecretKey"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"SegmentModel\": {\n \"SegmentId\": \"B05FC8CB558A6570\",\n \"Name\": \"My user segment\",\n \"SegmentOrDefinitions\": [\n {\n \"SegmentAndDefinitions\": [\n {\n \"AllPlayersFilter\": {}\n }\n ]\n }\n ],\n \"EnteredSegmentActions\": [\n {\n \"BanPlayerAction\": {\n \"BanHours\": 2,\n \"ReasonForBan\": \"Not played for a year\"\n }\n }\n ],\n \"LeftSegmentActions\": [\n {\n \"ExecuteAzureFunctionAction\": {\n \"AzureFunction\": \"AzureFunction1\",\n \"FunctionParameter\": \"{\\\"InputParam\\\": \\\"1\\\"}\"\n }\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"status": "<string>",
"data": {
"ErrorMessage": "<string>",
"SegmentId": "<string>"
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}