Send Push Notification Broadcast
Post
bash
https://api.bunce.so/v1/broadcast/send/push-notification
Send
If successful, your response includes a message that your message has been sent successfully. If there is an error with any of the parameters, it will return a 422 HTTP status code with details in an error object.
Request
Body Parameters required
sender_email string<email> required | Sender Email |
sender_name string<email> required | Sender Name |
email string<email> required | Recipient Email |
subject string required | Message Subject |
cc array [] optional | Array containing emails to copy |
bcc array [] optional | Array containing emails to blind copy |
reply_to array [] optional | Array containing emails to reply to |
message string required | Broadcast Content |
message_type string required | Message Type |
all_customers boloean optional | Add this option to send message to all customers |
recipients array optional | Recipient array. Required if all_customers key is not present in the request or is false. Possible values for type customer segment |
schedule_type string required | Broadcast Schedule type. Possible values for type send-now send-later |
schedule_date array [ schedule_date: date; timezone: string; ] optional | Required if schedule type is send-later |
Recipients
The recipients
field is an array that is required if all_customer is not sent in the payload or if all_customers is set to false . Each recipient object should contain the following fields:
Field | Description |
---|---|
type string required | The type of recipient. Accepted values are customer and segment . |
customers array required if recipient type is customer |
|
A new customer record will be created for the customer object passed or updated if the customer email or customer_id already exist.
Devices Field
The devices
field is an optional array of device objects. Each device object should contain the following fields:
device_type
(string): The type of device (e.g.,ios
,android
).device_token
(string): The token associated with the device.
Example:
json
{
"devices": [
{
"device_type": "ios",
"device_token": "123456"
},
{
"device_type": "android",
"device_token": "654321"
}
]
}
Customer devices will be created for this customer
bash
curl --request POST \
--url https://api.bunce.so/v1/broadcast/send/push-notification \
--header 'Content-Type: application/json' \
--header 'X-Authorization: sk_live_************************' \
--data '{
"subject" : "Broadcast Test",
"message" : "This is a test Push Notification broadcast message",
"recipients": {
"type" : "customer",
"customers": [
{
"customer_id": "934273498234",
"first_name": "Rita",
"last_name": "Basset",
"phone_no": "+234944874874",
"email": "email1@gmail.com",
"devices": [
{
"device_type": "ios",
"device_token": "73923947293469"
},
{
"device_type": "android",
"device_token": "2763482634628343"
}
]
}
]
},
"schedule_type": "send-now"
}'
go
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.bunce.so/v1/broadcast/send/push-notification"
payload := strings.NewReader("{\n \"subject\": \"Broadcast Test\",\n \"message\": \"This is a test Push Notification broadcast message\",\n \"recipients\": {\n \"type\": \"customer\",\n \"customers\": [\n {\n \"customer_id\": \"934273498234\",\n \"first_name\": \"Rita\",\n \"last_name\": \"Basset\",\n \"phone_no\": \"+234944874874\",\n \"email\": \"email1@gmail.com\",\n \"devices\": [\n {\n \"device_type\": \"ios\",\n \"device_token\": \"73923947293469\"\n },\n {\n \"device_type\": \"android\",\n \"device_token\": \"2763482634628343\"\n }\n ]\n }\n ]\n },\n \"schedule_type\": \"send-now\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Authorization", "sk_live_************************")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
js
const = {
: 'POST',
: {
'X-Authorization': 'sk_live_************************',
'Content-Type': 'application/json',
},
: '{"subject":"Broadcast Test","message":"This is a test Push Notification broadcast message","recipients":{"type":"customer","customers":[{"customer_id":"934273498234","first_name":"Rita","last_name":"Basset","phone_no":"+234944874874","email":"email1@gmail.com","devices":[{"device_type":"ios","device_token":"73923947293469"},{"device_type":"android","device_token":"2763482634628343"}]}]},"schedule_type":"send-now"}',
}
(
'https://api.bunce.so/v1/broadcast/send/push-notification',
,
)
.(() => .())
.(() => .())
.(() => .())
php
<?php
$client = new http\Client;
$request = new http\Client\Request;
$body = new http\Message\Body;
$body->append('{
"subject" : "Broadcast Test",
"message" : "This is a test Whatsapp Push Notification message",
"recipients": {
"type" : "customer",
"customers": [
{
"customer_id": "934273498234",
"first_name": "Rita",
"last_name": "Basset",
"phone_no": "+234944874874",
"email": "email1@gmail.com",
"devices": [
{
"device_type": "ios",
"device_token": "73923947293469"
},
{
"device_type": "android",
"device_token": "2763482634628343"
}
]
}
]
},
"schedule_type": "send-now"
}');
$request->setRequestUrl('https://api.bunce.so/v1/broadcast/send/push-notification');
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
'X-Authorization' => 'sk_live_************************',
'Content-Type' => 'application/json'
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
java
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.bunce.so/v1/broadcast/send/push-notification"))
.header("X-Authorization", "sk_live_************************")
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("{\n \"subject\": \"Broadcast Test\",\n \"message\": \"This is a test Push Notification broadcast message\",\n \"recipients\": {\n \"type\": \"customer\",\n \"customers\": [\n {\n \"customer_id\": \"934273498234\",\n \"first_name\": \"Rita\",\n \"last_name\": \"Basset\",\n \"phone_no\": \"+234944874874\",\n \"email\": \"email1@gmail.com\",\n \"devices\": [\n {\n \"device_type\": \"ios\",\n \"device_token\": \"73923947293469\"\n },\n {\n \"device_type\": \"android\",\n \"device_token\": \"2763482634628343\"\n }\n ]\n }\n ]\n },\n \"schedule_type\": \"send-now\"\n}"))
.build();
HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
Response
json
{
"success": true,
"data": null,
"message": "Push notification broadcast sent successfully"
}