Add News
Adds a new news item to the title’s news feed
Error codes
This operation may return the following PlayFab errors:
| Error | Code |
|---|---|
| TitleNewsItemCountLimitExceeded | 1231 |
POST
/
Admin
/
AddNews
Add News
curl --request POST \
--url https://{titleId}.playfabapi.com/Admin/AddNews \
--header 'Content-Type: application/json' \
--header 'X-SecretKey: <api-key>' \
--data '
{
"Timestamp": "2014-04-06T00:00:00",
"Title": "News of the Day",
"Body": "<b>We have a new object to buy!</b>",
"Status": "Published"
}
'import requests
url = "https://{titleId}.playfabapi.com/Admin/AddNews"
payload = {
"Timestamp": "2014-04-06T00:00:00",
"Title": "News of the Day",
"Body": "<b>We have a new object to buy!</b>",
"Status": "Published"
}
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({
Timestamp: '2014-04-06T00:00:00',
Title: 'News of the Day',
Body: '<b>We have a new object to buy!</b>',
Status: 'Published'
})
};
fetch('https://{titleId}.playfabapi.com/Admin/AddNews', 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/AddNews",
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([
'Timestamp' => '2014-04-06T00:00:00',
'Title' => 'News of the Day',
'Body' => '<b>We have a new object to buy!</b>',
'Status' => 'Published'
]),
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/AddNews"
payload := strings.NewReader("{\n \"Timestamp\": \"2014-04-06T00:00:00\",\n \"Title\": \"News of the Day\",\n \"Body\": \"<b>We have a new object to buy!</b>\",\n \"Status\": \"Published\"\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/AddNews")
.header("X-SecretKey", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Timestamp\": \"2014-04-06T00:00:00\",\n \"Title\": \"News of the Day\",\n \"Body\": \"<b>We have a new object to buy!</b>\",\n \"Status\": \"Published\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Admin/AddNews")
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 \"Timestamp\": \"2014-04-06T00:00:00\",\n \"Title\": \"News of the Day\",\n \"Body\": \"<b>We have a new object to buy!</b>\",\n \"Status\": \"Published\"\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"NewsId": "74623b12-6c80-ee4b-7c3b-58e638aa62bd"
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}Authorizations
This API requires a title secret key, available to title admins, from PlayFab Game Manager.
Body
application/json
Default body text of the news.
Default title (headline) of the news item.
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).
Optional status for the new news item. If not set, defaults to Published.
Available options:
None, Unpublished, Published, Archived Time this news was published. If not set, defaults to now.
Last modified on October 1, 2026
Was this page helpful?
⌘I
Add News
curl --request POST \
--url https://{titleId}.playfabapi.com/Admin/AddNews \
--header 'Content-Type: application/json' \
--header 'X-SecretKey: <api-key>' \
--data '
{
"Timestamp": "2014-04-06T00:00:00",
"Title": "News of the Day",
"Body": "<b>We have a new object to buy!</b>",
"Status": "Published"
}
'import requests
url = "https://{titleId}.playfabapi.com/Admin/AddNews"
payload = {
"Timestamp": "2014-04-06T00:00:00",
"Title": "News of the Day",
"Body": "<b>We have a new object to buy!</b>",
"Status": "Published"
}
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({
Timestamp: '2014-04-06T00:00:00',
Title: 'News of the Day',
Body: '<b>We have a new object to buy!</b>',
Status: 'Published'
})
};
fetch('https://{titleId}.playfabapi.com/Admin/AddNews', 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/AddNews",
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([
'Timestamp' => '2014-04-06T00:00:00',
'Title' => 'News of the Day',
'Body' => '<b>We have a new object to buy!</b>',
'Status' => 'Published'
]),
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/AddNews"
payload := strings.NewReader("{\n \"Timestamp\": \"2014-04-06T00:00:00\",\n \"Title\": \"News of the Day\",\n \"Body\": \"<b>We have a new object to buy!</b>\",\n \"Status\": \"Published\"\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/AddNews")
.header("X-SecretKey", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"Timestamp\": \"2014-04-06T00:00:00\",\n \"Title\": \"News of the Day\",\n \"Body\": \"<b>We have a new object to buy!</b>\",\n \"Status\": \"Published\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{titleId}.playfabapi.com/Admin/AddNews")
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 \"Timestamp\": \"2014-04-06T00:00:00\",\n \"Title\": \"News of the Day\",\n \"Body\": \"<b>We have a new object to buy!</b>\",\n \"Status\": \"Published\"\n}"
response = http.request(request)
puts response.read_body{
"code": 200,
"status": "OK",
"data": {
"NewsId": "74623b12-6c80-ee4b-7c3b-58e638aa62bd"
}
}{
"code": 123,
"errorCode": 123,
"status": "<string>",
"error": "<string>",
"errorMessage": "<string>",
"errorDetails": {}
}