Push notification with Failover

Push notification with Failover

Overview

https://dev.infobip.com/push-messaging
https://developer.nexmo.com/messages/overview
https://www.twilio.com/docs/sms/send-messages?code-sample=code-send-an-sms-with-a-statuscallback-url-2&code-language=Node.js&code-sdk-version=3.x



https://docs.google.com/document/d/1MLLiUUQPOpPwXWA0twN-rksCbRYkcz6TrNul9OKcXNc/edit

Push notification with failover api allows you to send and It is enables instant and automated direct communication between business owners and clients Utilizes SMS as Failover scenario.

CURL
Node.js
This is an example
var x as int
Operations
SDK API

sdk api for devices

POST /device/registerToken
POST /device/5c3e0f8a94b6a10913e90f5b/user
POST /message/pushDelivered
Register device
POST /device/registerToken

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Request body

application/x-www-form-urlencoded
Object
deviceType
string required

ANDROID | IOS

deviceToken
string required

Fcm or apn device registration token to receive pushes

appCode
string required

Application code used in app initialization

deviceID
string required

Unique device identifier

Responses

200 200
Register user data for device
POST /device/5c3e0f8a94b6a10913e90f5b/user

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Request body

application/x-www-form-urlencoded
Object
userId
string required

Custom unique data about user for application

username
string required

Custom unique data about user for application

phone
string required

Custom unique data about user for application

email
string required

Custom unique data about user for application

Responses

200 200
Webhook action PUSH delivered
POST /message/pushDelivered

Triggers by sdk when device succesfully receive the pushes

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Request body

application/x-www-form-urlencoded
Object
deviceID
string required
appCode
string required
deviceType
string required
deviceToken
string required
messageId
string required

Responses

200 200
Scenarios
POST /omni/v1/scenario
DELETE /omni/v1/scenarios/5c9506b28904767a7d34ebfc
GET /omni/v1/scenarios
GET /omni/v1/scenarios/5c94f2468577652df37b485c
PUT /omni/v1/scenarios/5c94f2468577652df37b485c
PATCH /omni/v1/scenarios/5c8674ebe6fada09931e2529
Create Scenario
POST /omni/v1/scenario

create via push, read via get, update via push and specifying id

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Request body

Responses

200 200
Delete Scenario
DELETE /omni/v1/scenarios/5c9506b28904767a7d34ebfc

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}

Responses

200 200
List Scenarios
GET /omni/v1/scenarios

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Responses

200 200
Read Scenario
GET /omni/v1/scenarios/5c94f2468577652df37b485c

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}

Responses

200 200
PUT Scenario replace update
PUT /omni/v1/scenarios/5c94f2468577652df37b485c

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Responses

200 200
Patch Scenario safe update
PATCH /omni/v1/scenarios/5c8674ebe6fada09931e2529

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Responses

200 200
Messages
POST /omni/v1/messages
POST /sms/v1/messages
POST /push/v1/messages
GET /push/v1/messages/5cc1b6f13b8f9c001200b71d
send OMNI message
POST /omni/v1/messages

with or without channel

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Request body

Responses

200 200
send SMS message
POST /sms/v1/messages

with or without channel

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Request body

Responses

200 200
send PUSH message
POST /push/v1/messages

with or without channel

Request headers

Authorization
string optional
Default:
Bearer {token}
Content-Type
string required

Request body

Responses

200 200
get PUSH message
GET /push/v1/messages/5cc1b6f13b8f9c001200b71d

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}

Responses

200 200
Auth
GET /auth/mobily
auth in dashboard
GET /auth/mobily

TODO: Add Description

Request parameters

apiKey
string required

Your apiKey

userId
string required

Unique user identifier

Request headers

Authorization
string optional
Default:
Bearer {token}

Responses

200 200
Applications
GET /push/v1/applications
Read App
GET /push/v1/applications

TODO: Add Description

Request headers

Authorization
string optional
Default:
Bearer {token}

Responses

200 200
Misc
POST /msgSend.php
POST /voiceBalance.php
Mobily send sms
POST /msgSend.php

TODO: Add Description

Request parameters

apiKey
string required
numbers
number double required
sender
string required
msg
string required
msgId
integer int32 required
timeSend
integer int32 required
dateSend
integer int32 required
deleteKey
integer int32 required
lang
integer int32 required
returnJson
integer int32 required
applicationType
integer int32 required

Request headers

Authorization
string optional
Default:
Bearer {token}

Responses

200 200
Alfacell validate APIKEY
POST /voiceBalance.php

TODO: Add Description

Request parameters

returnJson
integer int32 required
apiKey
string required

Request headers

Authorization
string optional
Default:
Bearer {token}

Responses

200 200
Type Definitions
CreateScenarioRequest
Object
name
string required
flow
Array of Flow required
Example
{
  "name" : "PUSH && SMS",
  "flow" : [
    {
      "from" : "dashboard.api",
      "appCode" : "someAppCode",
      "timeout" : 50,
      "channel" : "push"
    },
    {
      "from" : "hamarshi",
      "channel" : "sms"
    }
  ]
}
Flow
Object
from
string required
Example:
dashboard.api
appCode
string
Example:
someAppCode
timeout
integer int32
Example:
50
channel
string required
Example:
push
PatchScenario-safeupdateRequest
Object
name
string required
Example
{
  "name" : "new scenario name"
}
PUTScenario-replaceupdateRequest
Object
flow
Array of Flow1 required
name
string required
Example
{
  "flow" : [
    {
      "from" : "dashboard.api",
      "appCode" : "someAppCode",
      "timeout" : 44,
      "channel" : "push"
    }
  ],
  "name" : "single flow"
}
Flow1
Object
from
string required
Example:
dashboard.api
appCode
string required
Example:
someAppCode
timeout
integer int32 required
Example:
44
channel
string required
Example:
push
sendOMNImessageRequest
Object
appCode
string required
pushContent
PushContent required
from
string required
channel
string required
destinations
Array of Destination required
Example
{
  "appCode" : "5cc06ac69a0a430012c4fac4",
  "pushContent" : {
    "text" : "test text"
  },
  "from" : "Notification",
  "channel" : "push",
  "destinations" : [
    {
      "uid" : "abf436b522ebd15a"
    }
  ]
}
PushContent
Object
text
string required
Destination
Object
uid
string required
Example:
abf436b522ebd15a
sendSMSmessageRequest
Object
text
string required
from
string required
destinations
string required
Example
{
  "text" : "test sms message with api",
  "from" : "Notification",
  "destinations" : "298459235982,19845792835"
}
sendPUSHmessageRequest
Object
text
string required
actions
Object required
appCode
string required
from
string required
destinations
Array of Destination required
Example
{
  "text" : "test with api starts 1ccaccfa*",
  "actions" : { },
  "appCode" : "5cc06ac69a0a430012c4fac4",
  "from" : "test",
  "destinations" : [
    {
      "uid" : "abf436b522ebd15a"
    }
  ]
}