curl --request POST \
--url https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'X-Broadcast-Live-Activity-Id: <x-broadcast-live-activity-id>' \
--header 'X-MOE-APPKEY: <api-key>' \
--data '
{
"broadcast_live_activity_id": "<string>",
"ios": {
"content_state": {},
"alert": {
"title": "<string>",
"body": "<string>",
"subtitle": "<string>",
"sound": "<string>"
},
"dismissal_date": 123,
"stale_date": 123
},
"instance_id": "<string>"
}
'import requests
url = "https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end"
payload = {
"broadcast_live_activity_id": "<string>",
"ios": {
"content_state": {},
"alert": {
"title": "<string>",
"body": "<string>",
"subtitle": "<string>",
"sound": "<string>"
},
"dismissal_date": 123,
"stale_date": 123
},
"instance_id": "<string>"
}
headers = {
"X-Broadcast-Live-Activity-Id": "<x-broadcast-live-activity-id>",
"Authorization": "Basic <encoded-value>",
"X-MOE-APPKEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-Broadcast-Live-Activity-Id': '<x-broadcast-live-activity-id>',
Authorization: 'Basic <encoded-value>',
'X-MOE-APPKEY': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
broadcast_live_activity_id: '<string>',
ios: {
content_state: {},
alert: {
title: '<string>',
body: JSON.stringify('<string>'),
subtitle: '<string>',
sound: '<string>'
},
dismissal_date: 123,
stale_date: 123
},
instance_id: '<string>'
})
};
fetch('https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end', 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://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end",
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([
'broadcast_live_activity_id' => '<string>',
'ios' => [
'content_state' => [
],
'alert' => [
'title' => '<string>',
'body' => '<string>',
'subtitle' => '<string>',
'sound' => '<string>'
],
'dismissal_date' => 123,
'stale_date' => 123
],
'instance_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json",
"X-Broadcast-Live-Activity-Id: <x-broadcast-live-activity-id>",
"X-MOE-APPKEY: <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://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end"
payload := strings.NewReader("{\n \"broadcast_live_activity_id\": \"<string>\",\n \"ios\": {\n \"content_state\": {},\n \"alert\": {\n \"title\": \"<string>\",\n \"body\": \"<string>\",\n \"subtitle\": \"<string>\",\n \"sound\": \"<string>\"\n },\n \"dismissal_date\": 123,\n \"stale_date\": 123\n },\n \"instance_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Broadcast-Live-Activity-Id", "<x-broadcast-live-activity-id>")
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("X-MOE-APPKEY", "<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://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end")
.header("X-Broadcast-Live-Activity-Id", "<x-broadcast-live-activity-id>")
.header("Authorization", "Basic <encoded-value>")
.header("X-MOE-APPKEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"broadcast_live_activity_id\": \"<string>\",\n \"ios\": {\n \"content_state\": {},\n \"alert\": {\n \"title\": \"<string>\",\n \"body\": \"<string>\",\n \"subtitle\": \"<string>\",\n \"sound\": \"<string>\"\n },\n \"dismissal_date\": 123,\n \"stale_date\": 123\n },\n \"instance_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Broadcast-Live-Activity-Id"] = '<x-broadcast-live-activity-id>'
request["Authorization"] = 'Basic <encoded-value>'
request["X-MOE-APPKEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"broadcast_live_activity_id\": \"<string>\",\n \"ios\": {\n \"content_state\": {},\n \"alert\": {\n \"title\": \"<string>\",\n \"body\": \"<string>\",\n \"subtitle\": \"<string>\",\n \"sound\": \"<string>\"\n },\n \"dismissal_date\": 123,\n \"stale_date\": 123\n },\n \"instance_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_bodyEnd Broadcast Live Activity
Simultaneously terminates a broadcast Live Activity across all subscribed devices, with options for a final state update or immediate dismissal.
curl --request POST \
--url https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'X-Broadcast-Live-Activity-Id: <x-broadcast-live-activity-id>' \
--header 'X-MOE-APPKEY: <api-key>' \
--data '
{
"broadcast_live_activity_id": "<string>",
"ios": {
"content_state": {},
"alert": {
"title": "<string>",
"body": "<string>",
"subtitle": "<string>",
"sound": "<string>"
},
"dismissal_date": 123,
"stale_date": 123
},
"instance_id": "<string>"
}
'import requests
url = "https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end"
payload = {
"broadcast_live_activity_id": "<string>",
"ios": {
"content_state": {},
"alert": {
"title": "<string>",
"body": "<string>",
"subtitle": "<string>",
"sound": "<string>"
},
"dismissal_date": 123,
"stale_date": 123
},
"instance_id": "<string>"
}
headers = {
"X-Broadcast-Live-Activity-Id": "<x-broadcast-live-activity-id>",
"Authorization": "Basic <encoded-value>",
"X-MOE-APPKEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-Broadcast-Live-Activity-Id': '<x-broadcast-live-activity-id>',
Authorization: 'Basic <encoded-value>',
'X-MOE-APPKEY': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
broadcast_live_activity_id: '<string>',
ios: {
content_state: {},
alert: {
title: '<string>',
body: JSON.stringify('<string>'),
subtitle: '<string>',
sound: '<string>'
},
dismissal_date: 123,
stale_date: 123
},
instance_id: '<string>'
})
};
fetch('https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end', 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://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end",
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([
'broadcast_live_activity_id' => '<string>',
'ios' => [
'content_state' => [
],
'alert' => [
'title' => '<string>',
'body' => '<string>',
'subtitle' => '<string>',
'sound' => '<string>'
],
'dismissal_date' => 123,
'stale_date' => 123
],
'instance_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json",
"X-Broadcast-Live-Activity-Id: <x-broadcast-live-activity-id>",
"X-MOE-APPKEY: <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://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end"
payload := strings.NewReader("{\n \"broadcast_live_activity_id\": \"<string>\",\n \"ios\": {\n \"content_state\": {},\n \"alert\": {\n \"title\": \"<string>\",\n \"body\": \"<string>\",\n \"subtitle\": \"<string>\",\n \"sound\": \"<string>\"\n },\n \"dismissal_date\": 123,\n \"stale_date\": 123\n },\n \"instance_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Broadcast-Live-Activity-Id", "<x-broadcast-live-activity-id>")
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("X-MOE-APPKEY", "<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://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end")
.header("X-Broadcast-Live-Activity-Id", "<x-broadcast-live-activity-id>")
.header("Authorization", "Basic <encoded-value>")
.header("X-MOE-APPKEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"broadcast_live_activity_id\": \"<string>\",\n \"ios\": {\n \"content_state\": {},\n \"alert\": {\n \"title\": \"<string>\",\n \"body\": \"<string>\",\n \"subtitle\": \"<string>\",\n \"sound\": \"<string>\"\n },\n \"dismissal_date\": 123,\n \"stale_date\": 123\n },\n \"instance_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-0{dc}.moengage.com/v1.0/live-activity/broadcast/end")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Broadcast-Live-Activity-Id"] = '<x-broadcast-live-activity-id>'
request["Authorization"] = 'Basic <encoded-value>'
request["X-MOE-APPKEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"broadcast_live_activity_id\": \"<string>\",\n \"ios\": {\n \"content_state\": {},\n \"alert\": {\n \"title\": \"<string>\",\n \"body\": \"<string>\",\n \"subtitle\": \"<string>\",\n \"sound\": \"<string>\"\n },\n \"dismissal_date\": 123,\n \"stale_date\": 123\n },\n \"instance_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_bodyAuthorizations
This authentication parameter, used for access control, must be passed in the request. You can generate it using Workspace ID as username and Push API Key as password.
This is the workspace ID (earlier APP ID) of your MoEngage workspace. The X-MOE-APPKEY must be passed in the request. You can find your MoEngage Workspace ID in the MoEngage UI- Settings > Account > APIs -> Workspace ID (earlier app id)Your MoEngage Workspace ID.
Headers
The unique identifier for the broadcast Live Activity campaign being ended.
This is the workspace ID (earlier APP ID) of your MoEngage workspace. The X-MOE-APPKEY must be passed in the request. You can find your MoEngage Workspace ID in the MoEngage UI: Settings > Account > APIs -> Workspace ID (earlier app id).
Body
The payload containing the final content state and dismissal information for the Live Activity.
Rate Limit
The rate limit for this endpoint is 500 requests per minute per workspace and 5 requests per minute per live activity ID.
This field denotes the unique identifier for the broadcast Live Activity campaign. It links the broadcast request to a specific campaign previously created via the Create Push Campaigns API with the BROADCAST_LIVE_ACTIVITY delivery type.
This field denotes a JSON object containing iOS-specific content, configuration details, and metadata necessary for managing the Live Activity on iOS devices.
Show child attributes
Show child attributes
This field denotes a unique, optional identifier for a specific instance of the Live Activity. It can be used to differentiate between multiple broadcasts of the same activity or to avoid duplicate requests. Sample value:1749822841120-57c5c617. Optional unique identifier for this specific broadcast instance.
Response
Success. The live activity was ended.
Show child attributes
Show child attributes
Was this page helpful?