PureBasic / CleverTap API / Create Campaign API - Target Users by their Identities(PUSH)
Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
; Use this online tool to generate code from sample JSON: Generate Code to Create JSON
; The following JSON is sent in the request body.
; {
; "to": {
; "FBID": [
; "102029292929388",
; "114342342453463"
; ],
; "GPID": [
; "1928288389299292"
; ],
; "Email": [
; "john@doe.com",
; "jane@doe.com"
; ],
; "Identity": [
; "JohnDoe"
; ],
; "objectId": [
; "_asdnkansdjknaskdjnasjkndja",
; "-adffajjdfoaiaefiohnefwprjf"
; ]
; },
; "tag_group": "my tag group",
; "respect_frequency_caps": false,
; "content": {
; "title": "Welcome",
; "body": "Hello world!",
; "platform_specific": {
; "windows": {
; "deep_link": "example.com",
; "key": "value_windows"
; },
; "ios": {
; "deep_link": "example.com",
; "sound_file": "example.caf",
; "category": "notification category",
; "badge_count": 1,
; "key": "value_ios"
; },
; "android": {
; "background_image": "http://example.jpg",
; "default_sound": true,
; "deep_link": "example.com",
; "large_icon": "http://example.png",
; "key": "value_android"
; }
; }
; }
; }
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckUpdateString(json,"to.FBID[0]","102029292929388")
CkJsonObject::ckUpdateString(json,"to.FBID[1]","114342342453463")
CkJsonObject::ckUpdateString(json,"to.GPID[0]","1928288389299292")
CkJsonObject::ckUpdateString(json,"to.Email[0]","john@doe.com")
CkJsonObject::ckUpdateString(json,"to.Email[1]","jane@doe.com")
CkJsonObject::ckUpdateString(json,"to.Identity[0]","JohnDoe")
CkJsonObject::ckUpdateString(json,"to.objectId[0]","_asdnkansdjknaskdjnasjkndja")
CkJsonObject::ckUpdateString(json,"to.objectId[1]","-adffajjdfoaiaefiohnefwprjf")
CkJsonObject::ckUpdateString(json,"tag_group","my tag group")
CkJsonObject::ckUpdateBool(json,"respect_frequency_caps",0)
CkJsonObject::ckUpdateString(json,"content.title","Welcome")
CkJsonObject::ckUpdateString(json,"content.body","Hello world!")
CkJsonObject::ckUpdateString(json,"content.platform_specific.windows.deep_link","example.com")
CkJsonObject::ckUpdateString(json,"content.platform_specific.windows.key","value_windows")
CkJsonObject::ckUpdateString(json,"content.platform_specific.ios.deep_link","example.com")
CkJsonObject::ckUpdateString(json,"content.platform_specific.ios.sound_file","example.caf")
CkJsonObject::ckUpdateString(json,"content.platform_specific.ios.category","notification category")
CkJsonObject::ckUpdateInt(json,"content.platform_specific.ios.badge_count",1)
CkJsonObject::ckUpdateString(json,"content.platform_specific.ios.key","value_ios")
CkJsonObject::ckUpdateString(json,"content.platform_specific.android.background_image","http://example.jpg")
CkJsonObject::ckUpdateBool(json,"content.platform_specific.android.default_sound",1)
CkJsonObject::ckUpdateString(json,"content.platform_specific.android.deep_link","example.com")
CkJsonObject::ckUpdateString(json,"content.platform_specific.android.large_icon","http://example.png")
CkJsonObject::ckUpdateString(json,"content.platform_specific.android.key","value_android")
CkHttp::ckSetRequestHeader(http,"X-CleverTap-Passcode","{{passcode}}")
CkHttp::ckSetRequestHeader(http,"X-CleverTap-Account-Id","{{id}}")
CkHttp::ckSetRequestHeader(http,"Content-Type","{{type}}")
resp.i = CkHttp::ckPostJson3(http,"https://api.clevertap.com/1/send/push.json","{{type}}",json)
If CkHttp::ckLastMethodSuccess(http) = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndIf
Debug Str(CkHttpResponse::ckStatusCode(resp))
Debug CkHttpResponse::ckBodyStr(resp)
CkHttpResponse::ckDispose(resp)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndProcedure
Curl Command
curl -X POST
-H "X-CleverTap-Account-Id: {{id}}"
-H "X-CleverTap-Passcode: {{passcode}}"
-H "Content-Type: {{type}}"
-d '{
"to": {
"FBID": [
"102029292929388",
"114342342453463"
],
"GPID": [
"1928288389299292"
],
"Email": [
"john@doe.com",
"jane@doe.com"
],
"Identity": [
"JohnDoe"
],
"objectId": [
"_asdnkansdjknaskdjnasjkndja",
"-adffajjdfoaiaefiohnefwprjf"
]
},
"tag_group": "my tag group",
"respect_frequency_caps": false,
"content": {
"title": "Welcome",
"body": "Hello world!",
"platform_specific": {
"windows": {
"deep_link": "example.com",
"key": "value_windows"
},
"ios": {
"deep_link": "example.com",
"sound_file": "example.caf",
"category": "notification category",
"badge_count": 1,
"key": "value_ios"
},
"android": {
"background_image": "http://example.jpg",
"default_sound": true,
"deep_link": "example.com",
"large_icon": "http://example.png",
"key": "value_android"
}
}
}
}'
https://api.clevertap.com/1/send/push.json
Postman Collection Item JSON
{
"name": "Create Campaign API - Target Users by their Identities(PUSH)",
"request": {
"method": "POST",
"header": [
{
"key": "X-CleverTap-Account-Id",
"value": "{{id}}"
},
{
"key": "X-CleverTap-Passcode",
"value": "{{passcode}}"
},
{
"key": "Content-Type",
"value": "{{type}}"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"to\": {\n \"FBID\": [\n \"102029292929388\",\n \"114342342453463\"\n ],\n \"GPID\": [\n \"1928288389299292\"\n ],\n \"Email\": [\n \"john@doe.com\",\n \"jane@doe.com\"\n ],\n \"Identity\": [\n \"JohnDoe\"\n ],\n \"objectId\": [\n \"_asdnkansdjknaskdjnasjkndja\",\n \"-adffajjdfoaiaefiohnefwprjf\"\n ]\n },\n \"tag_group\": \"my tag group\",\n \"respect_frequency_caps\": false,\n \"content\": {\n \"title\": \"Welcome\",\n \"body\": \"Hello world!\",\n \"platform_specific\": {\n \"windows\": {\n \"deep_link\": \"example.com\",\n \"key\": \"value_windows\"\n },\n \"ios\": {\n \"deep_link\": \"example.com\",\n \"sound_file\": \"example.caf\",\n \"category\": \"notification category\",\n \"badge_count\": 1,\n \"key\": \"value_ios\"\n },\n \"android\": {\n \"background_image\": \"http://example.jpg\",\n \"default_sound\": true,\n \"deep_link\": \"example.com\",\n \"large_icon\": \"http://example.png\",\n \"key\": \"value_android\"\n }\n }\n }\n}"
},
"url": {
"raw": "https://api.clevertap.com/1/send/push.json",
"protocol": "https",
"host": [
"api",
"clevertap",
"com"
],
"path": [
"1",
"send",
"push.json"
]
}
},
"response": [
]
}