Firebase Cloud Messaging API
POST
fcm.projects.messages.send
{{baseUrl}}/v1/:parent/messages:send
QUERY PARAMS
parent
BODY json
{
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": false,
"fcmOptions": {
"analyticsLabel": ""
},
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": {
"analyticsLabel": ""
},
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": false
}
Examples
REQUEST
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/v1/:parent/messages:send");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}");
CURLcode ret = curl_easy_perform(hnd);
(require '[clj-http.client :as client])
(client/post "{{baseUrl}}/v1/:parent/messages:send" {:content-type :json
:form-params {:message {:android {:collapseKey ""
:data {}
:directBootOk false
:fcmOptions {:analyticsLabel ""}
:notification {:body ""
:bodyLocArgs []
:bodyLocKey ""
:bypassProxyNotification false
:channelId ""
:clickAction ""
:color ""
:defaultLightSettings false
:defaultSound false
:defaultVibrateTimings false
:eventTime ""
:icon ""
:image ""
:lightSettings {:color {:alpha ""
:blue ""
:green ""
:red ""}
:lightOffDuration ""
:lightOnDuration ""}
:localOnly false
:notificationCount 0
:notificationPriority ""
:sound ""
:sticky false
:tag ""
:ticker ""
:title ""
:titleLocArgs []
:titleLocKey ""
:vibrateTimings []
:visibility ""}
:priority ""
:restrictedPackageName ""
:ttl ""}
:apns {:fcmOptions {:analyticsLabel ""
:image ""}
:headers {}
:payload {}}
:condition ""
:data {}
:fcmOptions {:analyticsLabel ""}
:name ""
:notification {:body ""
:image ""
:title ""}
:token ""
:topic ""
:webpush {:data {}
:fcmOptions {:analyticsLabel ""
:link ""}
:headers {}
:notification {}}}
:validateOnly false}})
require "http/client"
url = "{{baseUrl}}/v1/:parent/messages:send"
headers = HTTP::Headers{
"content-type" => "application/json"
}
reqBody = "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}"
response = HTTP::Client.post url, headers: headers, body: reqBody
puts response.body
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("{{baseUrl}}/v1/:parent/messages:send"),
Content = new StringContent("{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}
var client = new RestClient("{{baseUrl}}/v1/:parent/messages:send");
var request = new RestRequest("", Method.Post);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}", ParameterType.RequestBody);
var response = client.Execute(request);
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "{{baseUrl}}/v1/:parent/messages:send"
payload := strings.NewReader("{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
POST /baseUrl/v1/:parent/messages:send HTTP/1.1
Content-Type: application/json
Host: example.com
Content-Length: 1756
{
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": false,
"fcmOptions": {
"analyticsLabel": ""
},
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": {
"analyticsLabel": ""
},
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": false
}
AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("POST", "{{baseUrl}}/v1/:parent/messages:send")
.setHeader("content-type", "application/json")
.setBody("{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}")
.execute()
.toCompletableFuture()
.thenAccept(System.out::println)
.join();
client.close();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("{{baseUrl}}/v1/:parent/messages:send"))
.header("content-type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}"))
.build();
HttpResponse response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}");
Request request = new Request.Builder()
.url("{{baseUrl}}/v1/:parent/messages:send")
.post(body)
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
HttpResponse response = Unirest.post("{{baseUrl}}/v1/:parent/messages:send")
.header("content-type", "application/json")
.body("{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}")
.asString();
const data = JSON.stringify({
message: {
android: {
collapseKey: '',
data: {},
directBootOk: false,
fcmOptions: {
analyticsLabel: ''
},
notification: {
body: '',
bodyLocArgs: [],
bodyLocKey: '',
bypassProxyNotification: false,
channelId: '',
clickAction: '',
color: '',
defaultLightSettings: false,
defaultSound: false,
defaultVibrateTimings: false,
eventTime: '',
icon: '',
image: '',
lightSettings: {
color: {
alpha: '',
blue: '',
green: '',
red: ''
},
lightOffDuration: '',
lightOnDuration: ''
},
localOnly: false,
notificationCount: 0,
notificationPriority: '',
sound: '',
sticky: false,
tag: '',
ticker: '',
title: '',
titleLocArgs: [],
titleLocKey: '',
vibrateTimings: [],
visibility: ''
},
priority: '',
restrictedPackageName: '',
ttl: ''
},
apns: {
fcmOptions: {
analyticsLabel: '',
image: ''
},
headers: {},
payload: {}
},
condition: '',
data: {},
fcmOptions: {
analyticsLabel: ''
},
name: '',
notification: {
body: '',
image: '',
title: ''
},
token: '',
topic: '',
webpush: {
data: {},
fcmOptions: {
analyticsLabel: '',
link: ''
},
headers: {},
notification: {}
}
},
validateOnly: false
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener('readystatechange', function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open('POST', '{{baseUrl}}/v1/:parent/messages:send');
xhr.setRequestHeader('content-type', 'application/json');
xhr.send(data);
import axios from 'axios';
const options = {
method: 'POST',
url: '{{baseUrl}}/v1/:parent/messages:send',
headers: {'content-type': 'application/json'},
data: {
message: {
android: {
collapseKey: '',
data: {},
directBootOk: false,
fcmOptions: {analyticsLabel: ''},
notification: {
body: '',
bodyLocArgs: [],
bodyLocKey: '',
bypassProxyNotification: false,
channelId: '',
clickAction: '',
color: '',
defaultLightSettings: false,
defaultSound: false,
defaultVibrateTimings: false,
eventTime: '',
icon: '',
image: '',
lightSettings: {
color: {alpha: '', blue: '', green: '', red: ''},
lightOffDuration: '',
lightOnDuration: ''
},
localOnly: false,
notificationCount: 0,
notificationPriority: '',
sound: '',
sticky: false,
tag: '',
ticker: '',
title: '',
titleLocArgs: [],
titleLocKey: '',
vibrateTimings: [],
visibility: ''
},
priority: '',
restrictedPackageName: '',
ttl: ''
},
apns: {fcmOptions: {analyticsLabel: '', image: ''}, headers: {}, payload: {}},
condition: '',
data: {},
fcmOptions: {analyticsLabel: ''},
name: '',
notification: {body: '', image: '', title: ''},
token: '',
topic: '',
webpush: {
data: {},
fcmOptions: {analyticsLabel: '', link: ''},
headers: {},
notification: {}
}
},
validateOnly: false
}
};
try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}
const url = '{{baseUrl}}/v1/:parent/messages:send';
const options = {
method: 'POST',
headers: {'content-type': 'application/json'},
body: '{"message":{"android":{"collapseKey":"","data":{},"directBootOk":false,"fcmOptions":{"analyticsLabel":""},"notification":{"body":"","bodyLocArgs":[],"bodyLocKey":"","bypassProxyNotification":false,"channelId":"","clickAction":"","color":"","defaultLightSettings":false,"defaultSound":false,"defaultVibrateTimings":false,"eventTime":"","icon":"","image":"","lightSettings":{"color":{"alpha":"","blue":"","green":"","red":""},"lightOffDuration":"","lightOnDuration":""},"localOnly":false,"notificationCount":0,"notificationPriority":"","sound":"","sticky":false,"tag":"","ticker":"","title":"","titleLocArgs":[],"titleLocKey":"","vibrateTimings":[],"visibility":""},"priority":"","restrictedPackageName":"","ttl":""},"apns":{"fcmOptions":{"analyticsLabel":"","image":""},"headers":{},"payload":{}},"condition":"","data":{},"fcmOptions":{"analyticsLabel":""},"name":"","notification":{"body":"","image":"","title":""},"token":"","topic":"","webpush":{"data":{},"fcmOptions":{"analyticsLabel":"","link":""},"headers":{},"notification":{}}},"validateOnly":false}'
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}
const settings = {
async: true,
crossDomain: true,
url: '{{baseUrl}}/v1/:parent/messages:send',
method: 'POST',
headers: {
'content-type': 'application/json'
},
processData: false,
data: '{\n "message": {\n "android": {\n "collapseKey": "",\n "data": {},\n "directBootOk": false,\n "fcmOptions": {\n "analyticsLabel": ""\n },\n "notification": {\n "body": "",\n "bodyLocArgs": [],\n "bodyLocKey": "",\n "bypassProxyNotification": false,\n "channelId": "",\n "clickAction": "",\n "color": "",\n "defaultLightSettings": false,\n "defaultSound": false,\n "defaultVibrateTimings": false,\n "eventTime": "",\n "icon": "",\n "image": "",\n "lightSettings": {\n "color": {\n "alpha": "",\n "blue": "",\n "green": "",\n "red": ""\n },\n "lightOffDuration": "",\n "lightOnDuration": ""\n },\n "localOnly": false,\n "notificationCount": 0,\n "notificationPriority": "",\n "sound": "",\n "sticky": false,\n "tag": "",\n "ticker": "",\n "title": "",\n "titleLocArgs": [],\n "titleLocKey": "",\n "vibrateTimings": [],\n "visibility": ""\n },\n "priority": "",\n "restrictedPackageName": "",\n "ttl": ""\n },\n "apns": {\n "fcmOptions": {\n "analyticsLabel": "",\n "image": ""\n },\n "headers": {},\n "payload": {}\n },\n "condition": "",\n "data": {},\n "fcmOptions": {\n "analyticsLabel": ""\n },\n "name": "",\n "notification": {\n "body": "",\n "image": "",\n "title": ""\n },\n "token": "",\n "topic": "",\n "webpush": {\n "data": {},\n "fcmOptions": {\n "analyticsLabel": "",\n "link": ""\n },\n "headers": {},\n "notification": {}\n }\n },\n "validateOnly": false\n}'
};
$.ajax(settings).done(function (response) {
console.log(response);
});
val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}")
val request = Request.Builder()
.url("{{baseUrl}}/v1/:parent/messages:send")
.post(body)
.addHeader("content-type", "application/json")
.build()
val response = client.newCall(request).execute()
const http = require('https');
const options = {
method: 'POST',
hostname: 'example.com',
port: null,
path: '/baseUrl/v1/:parent/messages:send',
headers: {
'content-type': 'application/json'
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on('data', function (chunk) {
chunks.push(chunk);
});
res.on('end', function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({
message: {
android: {
collapseKey: '',
data: {},
directBootOk: false,
fcmOptions: {analyticsLabel: ''},
notification: {
body: '',
bodyLocArgs: [],
bodyLocKey: '',
bypassProxyNotification: false,
channelId: '',
clickAction: '',
color: '',
defaultLightSettings: false,
defaultSound: false,
defaultVibrateTimings: false,
eventTime: '',
icon: '',
image: '',
lightSettings: {
color: {alpha: '', blue: '', green: '', red: ''},
lightOffDuration: '',
lightOnDuration: ''
},
localOnly: false,
notificationCount: 0,
notificationPriority: '',
sound: '',
sticky: false,
tag: '',
ticker: '',
title: '',
titleLocArgs: [],
titleLocKey: '',
vibrateTimings: [],
visibility: ''
},
priority: '',
restrictedPackageName: '',
ttl: ''
},
apns: {fcmOptions: {analyticsLabel: '', image: ''}, headers: {}, payload: {}},
condition: '',
data: {},
fcmOptions: {analyticsLabel: ''},
name: '',
notification: {body: '', image: '', title: ''},
token: '',
topic: '',
webpush: {
data: {},
fcmOptions: {analyticsLabel: '', link: ''},
headers: {},
notification: {}
}
},
validateOnly: false
}));
req.end();
const request = require('request');
const options = {
method: 'POST',
url: '{{baseUrl}}/v1/:parent/messages:send',
headers: {'content-type': 'application/json'},
body: {
message: {
android: {
collapseKey: '',
data: {},
directBootOk: false,
fcmOptions: {analyticsLabel: ''},
notification: {
body: '',
bodyLocArgs: [],
bodyLocKey: '',
bypassProxyNotification: false,
channelId: '',
clickAction: '',
color: '',
defaultLightSettings: false,
defaultSound: false,
defaultVibrateTimings: false,
eventTime: '',
icon: '',
image: '',
lightSettings: {
color: {alpha: '', blue: '', green: '', red: ''},
lightOffDuration: '',
lightOnDuration: ''
},
localOnly: false,
notificationCount: 0,
notificationPriority: '',
sound: '',
sticky: false,
tag: '',
ticker: '',
title: '',
titleLocArgs: [],
titleLocKey: '',
vibrateTimings: [],
visibility: ''
},
priority: '',
restrictedPackageName: '',
ttl: ''
},
apns: {fcmOptions: {analyticsLabel: '', image: ''}, headers: {}, payload: {}},
condition: '',
data: {},
fcmOptions: {analyticsLabel: ''},
name: '',
notification: {body: '', image: '', title: ''},
token: '',
topic: '',
webpush: {
data: {},
fcmOptions: {analyticsLabel: '', link: ''},
headers: {},
notification: {}
}
},
validateOnly: false
},
json: true
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
const unirest = require('unirest');
const req = unirest('POST', '{{baseUrl}}/v1/:parent/messages:send');
req.headers({
'content-type': 'application/json'
});
req.type('json');
req.send({
message: {
android: {
collapseKey: '',
data: {},
directBootOk: false,
fcmOptions: {
analyticsLabel: ''
},
notification: {
body: '',
bodyLocArgs: [],
bodyLocKey: '',
bypassProxyNotification: false,
channelId: '',
clickAction: '',
color: '',
defaultLightSettings: false,
defaultSound: false,
defaultVibrateTimings: false,
eventTime: '',
icon: '',
image: '',
lightSettings: {
color: {
alpha: '',
blue: '',
green: '',
red: ''
},
lightOffDuration: '',
lightOnDuration: ''
},
localOnly: false,
notificationCount: 0,
notificationPriority: '',
sound: '',
sticky: false,
tag: '',
ticker: '',
title: '',
titleLocArgs: [],
titleLocKey: '',
vibrateTimings: [],
visibility: ''
},
priority: '',
restrictedPackageName: '',
ttl: ''
},
apns: {
fcmOptions: {
analyticsLabel: '',
image: ''
},
headers: {},
payload: {}
},
condition: '',
data: {},
fcmOptions: {
analyticsLabel: ''
},
name: '',
notification: {
body: '',
image: '',
title: ''
},
token: '',
topic: '',
webpush: {
data: {},
fcmOptions: {
analyticsLabel: '',
link: ''
},
headers: {},
notification: {}
}
},
validateOnly: false
});
req.end(function (res) {
if (res.error) throw new Error(res.error);
console.log(res.body);
});
const axios = require('axios').default;
const options = {
method: 'POST',
url: '{{baseUrl}}/v1/:parent/messages:send',
headers: {'content-type': 'application/json'},
data: {
message: {
android: {
collapseKey: '',
data: {},
directBootOk: false,
fcmOptions: {analyticsLabel: ''},
notification: {
body: '',
bodyLocArgs: [],
bodyLocKey: '',
bypassProxyNotification: false,
channelId: '',
clickAction: '',
color: '',
defaultLightSettings: false,
defaultSound: false,
defaultVibrateTimings: false,
eventTime: '',
icon: '',
image: '',
lightSettings: {
color: {alpha: '', blue: '', green: '', red: ''},
lightOffDuration: '',
lightOnDuration: ''
},
localOnly: false,
notificationCount: 0,
notificationPriority: '',
sound: '',
sticky: false,
tag: '',
ticker: '',
title: '',
titleLocArgs: [],
titleLocKey: '',
vibrateTimings: [],
visibility: ''
},
priority: '',
restrictedPackageName: '',
ttl: ''
},
apns: {fcmOptions: {analyticsLabel: '', image: ''}, headers: {}, payload: {}},
condition: '',
data: {},
fcmOptions: {analyticsLabel: ''},
name: '',
notification: {body: '', image: '', title: ''},
token: '',
topic: '',
webpush: {
data: {},
fcmOptions: {analyticsLabel: '', link: ''},
headers: {},
notification: {}
}
},
validateOnly: false
}
};
try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}
const fetch = require('node-fetch');
const url = '{{baseUrl}}/v1/:parent/messages:send';
const options = {
method: 'POST',
headers: {'content-type': 'application/json'},
body: '{"message":{"android":{"collapseKey":"","data":{},"directBootOk":false,"fcmOptions":{"analyticsLabel":""},"notification":{"body":"","bodyLocArgs":[],"bodyLocKey":"","bypassProxyNotification":false,"channelId":"","clickAction":"","color":"","defaultLightSettings":false,"defaultSound":false,"defaultVibrateTimings":false,"eventTime":"","icon":"","image":"","lightSettings":{"color":{"alpha":"","blue":"","green":"","red":""},"lightOffDuration":"","lightOnDuration":""},"localOnly":false,"notificationCount":0,"notificationPriority":"","sound":"","sticky":false,"tag":"","ticker":"","title":"","titleLocArgs":[],"titleLocKey":"","vibrateTimings":[],"visibility":""},"priority":"","restrictedPackageName":"","ttl":""},"apns":{"fcmOptions":{"analyticsLabel":"","image":""},"headers":{},"payload":{}},"condition":"","data":{},"fcmOptions":{"analyticsLabel":""},"name":"","notification":{"body":"","image":"","title":""},"token":"","topic":"","webpush":{"data":{},"fcmOptions":{"analyticsLabel":"","link":""},"headers":{},"notification":{}}},"validateOnly":false}'
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}
#import
NSDictionary *headers = @{ @"content-type": @"application/json" };
NSDictionary *parameters = @{ @"message": @{ @"android": @{ @"collapseKey": @"", @"data": @{ }, @"directBootOk": @NO, @"fcmOptions": @{ @"analyticsLabel": @"" }, @"notification": @{ @"body": @"", @"bodyLocArgs": @[ ], @"bodyLocKey": @"", @"bypassProxyNotification": @NO, @"channelId": @"", @"clickAction": @"", @"color": @"", @"defaultLightSettings": @NO, @"defaultSound": @NO, @"defaultVibrateTimings": @NO, @"eventTime": @"", @"icon": @"", @"image": @"", @"lightSettings": @{ @"color": @{ @"alpha": @"", @"blue": @"", @"green": @"", @"red": @"" }, @"lightOffDuration": @"", @"lightOnDuration": @"" }, @"localOnly": @NO, @"notificationCount": @0, @"notificationPriority": @"", @"sound": @"", @"sticky": @NO, @"tag": @"", @"ticker": @"", @"title": @"", @"titleLocArgs": @[ ], @"titleLocKey": @"", @"vibrateTimings": @[ ], @"visibility": @"" }, @"priority": @"", @"restrictedPackageName": @"", @"ttl": @"" }, @"apns": @{ @"fcmOptions": @{ @"analyticsLabel": @"", @"image": @"" }, @"headers": @{ }, @"payload": @{ } }, @"condition": @"", @"data": @{ }, @"fcmOptions": @{ @"analyticsLabel": @"" }, @"name": @"", @"notification": @{ @"body": @"", @"image": @"", @"title": @"" }, @"token": @"", @"topic": @"", @"webpush": @{ @"data": @{ }, @"fcmOptions": @{ @"analyticsLabel": @"", @"link": @"" }, @"headers": @{ }, @"notification": @{ } } },
@"validateOnly": @NO };
NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/v1/:parent/messages:send"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"POST"];
[request setAllHTTPHeaderFields:headers];
[request setHTTPBody:postData];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSLog(@"%@", httpResponse);
}
}];
[dataTask resume];
open Cohttp_lwt_unix
open Cohttp
open Lwt
let uri = Uri.of_string "{{baseUrl}}/v1/:parent/messages:send" in
let headers = Header.add (Header.init ()) "content-type" "application/json" in
let body = Cohttp_lwt_body.of_string "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}" in
Client.call ~headers ~body `POST uri
>>= fun (res, body_stream) ->
(* Do stuff with the result *)
"{{baseUrl}}/v1/:parent/messages:send",
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([
'message' => [
'android' => [
'collapseKey' => '',
'data' => [
],
'directBootOk' => null,
'fcmOptions' => [
'analyticsLabel' => ''
],
'notification' => [
'body' => '',
'bodyLocArgs' => [
],
'bodyLocKey' => '',
'bypassProxyNotification' => null,
'channelId' => '',
'clickAction' => '',
'color' => '',
'defaultLightSettings' => null,
'defaultSound' => null,
'defaultVibrateTimings' => null,
'eventTime' => '',
'icon' => '',
'image' => '',
'lightSettings' => [
'color' => [
'alpha' => '',
'blue' => '',
'green' => '',
'red' => ''
],
'lightOffDuration' => '',
'lightOnDuration' => ''
],
'localOnly' => null,
'notificationCount' => 0,
'notificationPriority' => '',
'sound' => '',
'sticky' => null,
'tag' => '',
'ticker' => '',
'title' => '',
'titleLocArgs' => [
],
'titleLocKey' => '',
'vibrateTimings' => [
],
'visibility' => ''
],
'priority' => '',
'restrictedPackageName' => '',
'ttl' => ''
],
'apns' => [
'fcmOptions' => [
'analyticsLabel' => '',
'image' => ''
],
'headers' => [
],
'payload' => [
]
],
'condition' => '',
'data' => [
],
'fcmOptions' => [
'analyticsLabel' => ''
],
'name' => '',
'notification' => [
'body' => '',
'image' => '',
'title' => ''
],
'token' => '',
'topic' => '',
'webpush' => [
'data' => [
],
'fcmOptions' => [
'analyticsLabel' => '',
'link' => ''
],
'headers' => [
],
'notification' => [
]
]
],
'validateOnly' => null
]),
CURLOPT_HTTPHEADER => [
"content-type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
request('POST', '{{baseUrl}}/v1/:parent/messages:send', [
'body' => '{
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": false,
"fcmOptions": {
"analyticsLabel": ""
},
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": {
"analyticsLabel": ""
},
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": false
}',
'headers' => [
'content-type' => 'application/json',
],
]);
echo $response->getBody();
setUrl('{{baseUrl}}/v1/:parent/messages:send');
$request->setMethod(HTTP_METH_POST);
$request->setHeaders([
'content-type' => 'application/json'
]);
$request->setContentType('application/json');
$request->setBody(json_encode([
'message' => [
'android' => [
'collapseKey' => '',
'data' => [
],
'directBootOk' => null,
'fcmOptions' => [
'analyticsLabel' => ''
],
'notification' => [
'body' => '',
'bodyLocArgs' => [
],
'bodyLocKey' => '',
'bypassProxyNotification' => null,
'channelId' => '',
'clickAction' => '',
'color' => '',
'defaultLightSettings' => null,
'defaultSound' => null,
'defaultVibrateTimings' => null,
'eventTime' => '',
'icon' => '',
'image' => '',
'lightSettings' => [
'color' => [
'alpha' => '',
'blue' => '',
'green' => '',
'red' => ''
],
'lightOffDuration' => '',
'lightOnDuration' => ''
],
'localOnly' => null,
'notificationCount' => 0,
'notificationPriority' => '',
'sound' => '',
'sticky' => null,
'tag' => '',
'ticker' => '',
'title' => '',
'titleLocArgs' => [
],
'titleLocKey' => '',
'vibrateTimings' => [
],
'visibility' => ''
],
'priority' => '',
'restrictedPackageName' => '',
'ttl' => ''
],
'apns' => [
'fcmOptions' => [
'analyticsLabel' => '',
'image' => ''
],
'headers' => [
],
'payload' => [
]
],
'condition' => '',
'data' => [
],
'fcmOptions' => [
'analyticsLabel' => ''
],
'name' => '',
'notification' => [
'body' => '',
'image' => '',
'title' => ''
],
'token' => '',
'topic' => '',
'webpush' => [
'data' => [
],
'fcmOptions' => [
'analyticsLabel' => '',
'link' => ''
],
'headers' => [
],
'notification' => [
]
]
],
'validateOnly' => null
]));
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
append(json_encode([
'message' => [
'android' => [
'collapseKey' => '',
'data' => [
],
'directBootOk' => null,
'fcmOptions' => [
'analyticsLabel' => ''
],
'notification' => [
'body' => '',
'bodyLocArgs' => [
],
'bodyLocKey' => '',
'bypassProxyNotification' => null,
'channelId' => '',
'clickAction' => '',
'color' => '',
'defaultLightSettings' => null,
'defaultSound' => null,
'defaultVibrateTimings' => null,
'eventTime' => '',
'icon' => '',
'image' => '',
'lightSettings' => [
'color' => [
'alpha' => '',
'blue' => '',
'green' => '',
'red' => ''
],
'lightOffDuration' => '',
'lightOnDuration' => ''
],
'localOnly' => null,
'notificationCount' => 0,
'notificationPriority' => '',
'sound' => '',
'sticky' => null,
'tag' => '',
'ticker' => '',
'title' => '',
'titleLocArgs' => [
],
'titleLocKey' => '',
'vibrateTimings' => [
],
'visibility' => ''
],
'priority' => '',
'restrictedPackageName' => '',
'ttl' => ''
],
'apns' => [
'fcmOptions' => [
'analyticsLabel' => '',
'image' => ''
],
'headers' => [
],
'payload' => [
]
],
'condition' => '',
'data' => [
],
'fcmOptions' => [
'analyticsLabel' => ''
],
'name' => '',
'notification' => [
'body' => '',
'image' => '',
'title' => ''
],
'token' => '',
'topic' => '',
'webpush' => [
'data' => [
],
'fcmOptions' => [
'analyticsLabel' => '',
'link' => ''
],
'headers' => [
],
'notification' => [
]
]
],
'validateOnly' => null
]));
$request->setRequestUrl('{{baseUrl}}/v1/:parent/messages:send');
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
'content-type' => 'application/json'
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
$headers=@{}
$headers.Add("content-type", "application/json")
$response = Invoke-WebRequest -Uri '{{baseUrl}}/v1/:parent/messages:send' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": false,
"fcmOptions": {
"analyticsLabel": ""
},
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": {
"analyticsLabel": ""
},
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": false
}'
$headers=@{}
$headers.Add("content-type", "application/json")
$response = Invoke-RestMethod -Uri '{{baseUrl}}/v1/:parent/messages:send' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": false,
"fcmOptions": {
"analyticsLabel": ""
},
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": {
"analyticsLabel": ""
},
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": false
}'
import http.client
conn = http.client.HTTPSConnection("example.com")
payload = "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}"
headers = { 'content-type': "application/json" }
conn.request("POST", "/baseUrl/v1/:parent/messages:send", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
import requests
url = "{{baseUrl}}/v1/:parent/messages:send"
payload = {
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": False,
"fcmOptions": { "analyticsLabel": "" },
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": False,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": False,
"defaultSound": False,
"defaultVibrateTimings": False,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": False,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": False,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": { "analyticsLabel": "" },
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": False
}
headers = {"content-type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
library(httr)
url <- "{{baseUrl}}/v1/:parent/messages:send"
payload <- "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}"
encode <- "json"
response <- VERB("POST", url, body = payload, content_type("application/json"), encode = encode)
content(response, "text")
require 'uri'
require 'net/http'
url = URI("{{baseUrl}}/v1/:parent/messages:send")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request.body = "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}"
response = http.request(request)
puts response.read_body
require 'faraday'
conn = Faraday.new(
url: 'https://example.com',
headers: {'Content-Type' => 'application/json'}
)
response = conn.post('/baseUrl/v1/:parent/messages:send') do |req|
req.body = "{\n \"message\": {\n \"android\": {\n \"collapseKey\": \"\",\n \"data\": {},\n \"directBootOk\": false,\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"notification\": {\n \"body\": \"\",\n \"bodyLocArgs\": [],\n \"bodyLocKey\": \"\",\n \"bypassProxyNotification\": false,\n \"channelId\": \"\",\n \"clickAction\": \"\",\n \"color\": \"\",\n \"defaultLightSettings\": false,\n \"defaultSound\": false,\n \"defaultVibrateTimings\": false,\n \"eventTime\": \"\",\n \"icon\": \"\",\n \"image\": \"\",\n \"lightSettings\": {\n \"color\": {\n \"alpha\": \"\",\n \"blue\": \"\",\n \"green\": \"\",\n \"red\": \"\"\n },\n \"lightOffDuration\": \"\",\n \"lightOnDuration\": \"\"\n },\n \"localOnly\": false,\n \"notificationCount\": 0,\n \"notificationPriority\": \"\",\n \"sound\": \"\",\n \"sticky\": false,\n \"tag\": \"\",\n \"ticker\": \"\",\n \"title\": \"\",\n \"titleLocArgs\": [],\n \"titleLocKey\": \"\",\n \"vibrateTimings\": [],\n \"visibility\": \"\"\n },\n \"priority\": \"\",\n \"restrictedPackageName\": \"\",\n \"ttl\": \"\"\n },\n \"apns\": {\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"image\": \"\"\n },\n \"headers\": {},\n \"payload\": {}\n },\n \"condition\": \"\",\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\"\n },\n \"name\": \"\",\n \"notification\": {\n \"body\": \"\",\n \"image\": \"\",\n \"title\": \"\"\n },\n \"token\": \"\",\n \"topic\": \"\",\n \"webpush\": {\n \"data\": {},\n \"fcmOptions\": {\n \"analyticsLabel\": \"\",\n \"link\": \"\"\n },\n \"headers\": {},\n \"notification\": {}\n }\n },\n \"validateOnly\": false\n}"
end
puts response.status
puts response.body
use serde_json::json;
use reqwest;
#[tokio::main]
pub async fn main() {
let url = "{{baseUrl}}/v1/:parent/messages:send";
let payload = json!({
"message": json!({
"android": json!({
"collapseKey": "",
"data": json!({}),
"directBootOk": false,
"fcmOptions": json!({"analyticsLabel": ""}),
"notification": json!({
"body": "",
"bodyLocArgs": (),
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": json!({
"color": json!({
"alpha": "",
"blue": "",
"green": "",
"red": ""
}),
"lightOffDuration": "",
"lightOnDuration": ""
}),
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": (),
"titleLocKey": "",
"vibrateTimings": (),
"visibility": ""
}),
"priority": "",
"restrictedPackageName": "",
"ttl": ""
}),
"apns": json!({
"fcmOptions": json!({
"analyticsLabel": "",
"image": ""
}),
"headers": json!({}),
"payload": json!({})
}),
"condition": "",
"data": json!({}),
"fcmOptions": json!({"analyticsLabel": ""}),
"name": "",
"notification": json!({
"body": "",
"image": "",
"title": ""
}),
"token": "",
"topic": "",
"webpush": json!({
"data": json!({}),
"fcmOptions": json!({
"analyticsLabel": "",
"link": ""
}),
"headers": json!({}),
"notification": json!({})
})
}),
"validateOnly": false
});
let mut headers = reqwest::header::HeaderMap::new();
headers.insert("content-type", "application/json".parse().unwrap());
let client = reqwest::Client::new();
let response = client.post(url)
.headers(headers)
.json(&payload)
.send()
.await;
let results = response.unwrap()
.json::()
.await
.unwrap();
dbg!(results);
}
curl --request POST \
--url {{baseUrl}}/v1/:parent/messages:send \
--header 'content-type: application/json' \
--data '{
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": false,
"fcmOptions": {
"analyticsLabel": ""
},
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": {
"analyticsLabel": ""
},
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": false
}'
echo '{
"message": {
"android": {
"collapseKey": "",
"data": {},
"directBootOk": false,
"fcmOptions": {
"analyticsLabel": ""
},
"notification": {
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": {
"color": {
"alpha": "",
"blue": "",
"green": "",
"red": ""
},
"lightOffDuration": "",
"lightOnDuration": ""
},
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
},
"priority": "",
"restrictedPackageName": "",
"ttl": ""
},
"apns": {
"fcmOptions": {
"analyticsLabel": "",
"image": ""
},
"headers": {},
"payload": {}
},
"condition": "",
"data": {},
"fcmOptions": {
"analyticsLabel": ""
},
"name": "",
"notification": {
"body": "",
"image": "",
"title": ""
},
"token": "",
"topic": "",
"webpush": {
"data": {},
"fcmOptions": {
"analyticsLabel": "",
"link": ""
},
"headers": {},
"notification": {}
}
},
"validateOnly": false
}' | \
http POST {{baseUrl}}/v1/:parent/messages:send \
content-type:application/json
wget --quiet \
--method POST \
--header 'content-type: application/json' \
--body-data '{\n "message": {\n "android": {\n "collapseKey": "",\n "data": {},\n "directBootOk": false,\n "fcmOptions": {\n "analyticsLabel": ""\n },\n "notification": {\n "body": "",\n "bodyLocArgs": [],\n "bodyLocKey": "",\n "bypassProxyNotification": false,\n "channelId": "",\n "clickAction": "",\n "color": "",\n "defaultLightSettings": false,\n "defaultSound": false,\n "defaultVibrateTimings": false,\n "eventTime": "",\n "icon": "",\n "image": "",\n "lightSettings": {\n "color": {\n "alpha": "",\n "blue": "",\n "green": "",\n "red": ""\n },\n "lightOffDuration": "",\n "lightOnDuration": ""\n },\n "localOnly": false,\n "notificationCount": 0,\n "notificationPriority": "",\n "sound": "",\n "sticky": false,\n "tag": "",\n "ticker": "",\n "title": "",\n "titleLocArgs": [],\n "titleLocKey": "",\n "vibrateTimings": [],\n "visibility": ""\n },\n "priority": "",\n "restrictedPackageName": "",\n "ttl": ""\n },\n "apns": {\n "fcmOptions": {\n "analyticsLabel": "",\n "image": ""\n },\n "headers": {},\n "payload": {}\n },\n "condition": "",\n "data": {},\n "fcmOptions": {\n "analyticsLabel": ""\n },\n "name": "",\n "notification": {\n "body": "",\n "image": "",\n "title": ""\n },\n "token": "",\n "topic": "",\n "webpush": {\n "data": {},\n "fcmOptions": {\n "analyticsLabel": "",\n "link": ""\n },\n "headers": {},\n "notification": {}\n }\n },\n "validateOnly": false\n}' \
--output-document \
- {{baseUrl}}/v1/:parent/messages:send
import Foundation
let headers = ["content-type": "application/json"]
let parameters = [
"message": [
"android": [
"collapseKey": "",
"data": [],
"directBootOk": false,
"fcmOptions": ["analyticsLabel": ""],
"notification": [
"body": "",
"bodyLocArgs": [],
"bodyLocKey": "",
"bypassProxyNotification": false,
"channelId": "",
"clickAction": "",
"color": "",
"defaultLightSettings": false,
"defaultSound": false,
"defaultVibrateTimings": false,
"eventTime": "",
"icon": "",
"image": "",
"lightSettings": [
"color": [
"alpha": "",
"blue": "",
"green": "",
"red": ""
],
"lightOffDuration": "",
"lightOnDuration": ""
],
"localOnly": false,
"notificationCount": 0,
"notificationPriority": "",
"sound": "",
"sticky": false,
"tag": "",
"ticker": "",
"title": "",
"titleLocArgs": [],
"titleLocKey": "",
"vibrateTimings": [],
"visibility": ""
],
"priority": "",
"restrictedPackageName": "",
"ttl": ""
],
"apns": [
"fcmOptions": [
"analyticsLabel": "",
"image": ""
],
"headers": [],
"payload": []
],
"condition": "",
"data": [],
"fcmOptions": ["analyticsLabel": ""],
"name": "",
"notification": [
"body": "",
"image": "",
"title": ""
],
"token": "",
"topic": "",
"webpush": [
"data": [],
"fcmOptions": [
"analyticsLabel": "",
"link": ""
],
"headers": [],
"notification": []
]
],
"validateOnly": false
] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/v1/:parent/messages:send")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error as Any)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()