Documentation and APIs

Learn how to use our serverless platform to create voice, video and messaging applications and services by reading our getting started guide. It's the best way to become familiar with the platform architecture and capabilities.

Number Management
SMS
Anonymize
Authenticate – Multi Factor Authentication
Authenticate – One Tap Authentication
Engage
WhatsApp
Programmable Voice(India)
Email

Engage

This document covers the api structure of newly launched ENGAGE SOULTION which provides the customers multiple options for consuming the bulk messaging services, message capacity(can handle upto 100k sms at a time), lightweight UI, comprehensive reporting and useful insights in the dashboard.

Engage Messaging

Notify

This api allows to send messages to multiple users at a time (upto 1 lakh users). All the messages are pushed to our queuing system and is dispatched with constant rate to our suppliers. This api better fits for use cases where delivery time is not the prime issue and some amount of delay is acceptable. For instance, sending bulk campaigns and promotional messages in a given time period.

Given below is the Full URL for notify service:

https://engage-api.digo.link/notify

Query parameters details

Name Description Type
page_number page number of the report to be fetched. By default its set to 0 I.e. first page. Optional
page_size Limit of total records in one page at a time. By default, its set to 100 Optional

Push SMS

This api allows users to send transactional and promotional messages with 1 message at a time ensuring minimum latency. It better fits for use cases like OTP transactions and likewise which needs to be delivered in shortest time.

It can also automatically convert the long URL present in the message into shortend form when tiny parameter is set to 1.

Given below is the Full URL for push message service:

https://engage-api.digo.link/v1/messaging/sms

2.1.1 Resource Information

Following format needs will be available in both the request and responses:

Name Type
Response Formats JSON
Request Formats JSON
Content-Type Application/json
Requires Authentication? Yes (user should be active in system)
Rate Limted? No
2.1.2 Request parameter details

Headers:

Name Description Type
Authorization Bearer token with no expire time Mandatory
X-Authorization Basic Authorization token for inv internal api’s Mandatory

Below is the sample request format for the api body in json format:

copy

    { 
        "from": "652322XXX", 
        "to": "9181309XXXX", 
        "msg": "hiii ..This is a test for transactional message!!", 
        "dlr":{ 
        "mask":1, 
        "url":"https://client-url.com" 
        }, 
    “tiny”:”0”, 
    “type”:”transactional” 
    }    

Note : If tiny flag is set to 1 in the request, then the URL present in the message field will be converted to tiny URL and actual URL in the message will be replaced by it. This will help in reducing the message size. Following is the sample of tiny URL
https://su.digo.link/XXXXXXX

If you have a custom tiny URL domain with yourself and want it to be embedded in message instead of
https://su.digo.link/XXXXXX
, then you need to follow below 2 steps:

1. Point Your domain URL to su.digo.link so that whenever your domain URL is clicked, it is automatically redirected to su.digo.link.

Client domain -> su.digo.link

2. Provide the domain details to our technical support team so that necessary changes can be done in backend.

2.1.3 Parameter Description

The following table lists the parameters associated with the request and shows whether the parameter is Mandatory (M), in which case the message will be discarded if the parameter is omitted, or Optional (O), in which case the parameter is not essential and conditional (C) depending upon some condition.

M – Must – parameter is mandatory

C – Depends – parameter is conditional

Optional – parameter is optional and if absent default values are used

Request parameter details

Tag Name Tag Value Type Length
type “promotional” or “transactional” M 100
from Registered senderid/ long code to be used for sending message M 50
transactionID Id to be passed for tracking purpose at client’s end M 200
dlr.url URL to which asynchronous response and DLR will be sent. Enterprise user should manag e a system to receive or accept the response. Note: it will receive tiny url callback details as well. C 200
dlr.mask Enable both success/failure DLR by puting it 1 and 0 for only success ones. M 10
tiny Enable tiny url feature with ‘1’ and disable with ‘0’ M 1
msg Content of message M 1000
to Mobile Number to which transactional/promotional message will be sent(always include country code) M Depends on destination
2.1.4 Sample Response Details

A unique message id in uid format will be generated on successful submission of the message.

2.1.4.1 Response Description

Below are the descriptions for the fields present in api response:

Field Name Description Type Length
type Unique id generated on successful generation of message. In case of promotional message, id corresponds to default generated transactionID. M 50
2.1.4.3 Sample Sync Response

➢When Request successfully sent to Rest API platform

copy
    
        { 

            ‘id’:’10f3c521-94ed-4191-87c7-46f7XXXXXXXX’
        }        
    

➢When input validation error is found

copy
    
        {
            "status": 0,
            "message": "Validation Error.",
            "data: [
                {
                    "msg": "maximum charcter length allowed is 50",
                    "param": "from",
                    "location": "body"
                }
            ]    
        }      
    

What’s New