Guni SMS Gateway (1.0.0)

Download OpenAPI specification:Download

Introduction

Integrate with your favourite platforms and Industry applications at your convenience. The Guni APIs provide powerful way for sending SMS, MMS, and build shortenurl.

Credentials

To access the API, an API key and secret are required.

Sign up for a developer account here to get access: https://app.gunisms.com.au/signup.

Benefits

Global Reach

Send millions of messages at once with a click by using our SMS Broadcast Services.

2-Way Conversation

Engage in 2-way personalised conversations with your target audience through our SMS Gateway and our other Messaging Platforms.

Bulk SMS

Send Bulk SMS to your target audience with just one API request. The more the merrier.

Brand identity

Create your own unique identity among your target audience. Use your own brand name and a dedicated phone number.

Authentication

bearer

Security Scheme Type HTTP
HTTP Authorization Scheme bearer

How to generate Token

App token is necessary for each action that requires authentication.

Go to integration portal and generate token : https://app.gunisms.com.au/integrations

1. Click Integration

2. Create APP Token

3. Copy Token

integration

Delivery Report

Guni uses webhook to send realtime SMS delivery(DLR) status. You need to update your application callback URL in the integration setting to get the status.

Go to integration portal : https://app.gunisms.com.au/integrations

1. Click Integration

2. Enter call back URL in Status URL and update

integration-dlr-status

For delivery reports or changes in the status of a message, the POST request to the specified URL will be as follows:

Note, multiple delivery report notifications will be recieved for a single message.

{
 "_id":"615afd3cb033992b3a61933f",
"status":"delivered",
"type":"send",
"sender":"+61488820568",
"receiver":"40XXXXXXX"
}

Request from Guni will contain following parameters in request's body:

  1. _id - message Id
  2. status - current status of message e.g. delivered
  3. type - type of request i.e. send
  4. reason - description of error or failure

Reply SMS

Guni uses webhook to send realtime incomming SMS. You need to update your application callback URL in the integration setting to get the status.

Go to integration portal : https://app.gunisms.com.au/integrations

1. Click Integration

2. Enter call back URL in Receive URL and update

integration-receive-status

For reply SMS, the POST request to the specified URL will be as follows:

Note, multiple reply notifications will be recieved if customer send multiple SMS to your account.

{
 "_id":"615afd3cb033992b3a61933f",
"message":"This is reply message",
"type":"receive",
"sender":"40XXXXXXX",
"receiver":"61488820568"
}

Request from Guni will contain following parameters in request's body:

  1. _id - message Id
  2. status - current status of message e.g. delivered
  3. type - type of request i.e. receive
  4. message - response from your customer

Verify App Token

Authorizations:

Responses

Response samples

Content type
application/json; charset=utf-8
{
  • "app_type": "web",
  • "app_version": "1.0",
  • "maintainence": 0,
  • "new_version": 0,
  • "force_update": 0,
  • "invalid_token": 0,
  • "refresh_token": "",
  • "show_message": 0,
  • "is_enc": false,
  • "status": true,
  • "message": "Token verified successfully!",
  • "message_type": "toast",
  • "data": {
    },
  • "error": { }
}

Single SMS API

Required body params

  • sender
  • message
  • contacts

Validation Pointers

  • sender can be max 11 characters.

  • message in English characters can be max 1600 digits and other languages can be max 800 characters.

  • contacts should start with 61 and must be 11 digits, e.g. 614xxxxxxxx

  • Max 10 contacts per request.

  • Include Bearer Token in request header.

  • Content Type - JSON

OK response will return success result as show in example request.

Authorizations:
Request Body schema: text/plain

Required body params

  • sender
  • message
  • contacts

Validation Pointers

  • sender can be max 11 characters.

  • message in English characters can be max 1600 digits and other languages can be max 800 characters.

  • contacts should start with 61 and must be 11 digits, e.g. 614xxxxxxxx

  • Max 10 contacts per request.

  • Include Bearer Token in request header.

  • Content Type - JSON

OK response will return success result as show in example request.

string

Responses

Request samples

Content type
text/plain
{
    "sender": "GuniSMS",
    "message": "My Guni SMS",
    "contacts": [
        "614xxxxxxxx"
    ]
}

Response samples

Content type
application/json; charset=utf-8
{
  • "success": true,
  • "message": "Request is being processed",
  • "queueResponse": [
    ]
}

Bulk SMS API

Required body params

  • name
  • sender
  • message
  • contacts

Validation Pointers

  • sender can be max 11 characters.

  • message in English characters can be max 1600 digits and other languages can be max 800 characters.

  • contacts should start with 61 and must be 11 digits, e.g. 614xxxxxxxx

  • Max 10000 Contacts can be sent at a time.

  • Max 10 contacts per request.

  • Include Bearer Token in request header.

  • Content Type - JSON

OK response will return success result and bulkId as data.

Authorizations:
Request Body schema: text/plain

Required body params

  • name
  • sender
  • message
  • contacts

Validation Pointers

  • sender can be max 11 characters.

  • message in English characters can be max 1600 digits and other languages can be max 800 characters.

  • contacts should start with 61 and must be 11 digits, e.g. 614xxxxxxxx

  • Max 10000 Contacts can be sent at a time.

  • Max 10 contacts per request.

  • Include Bearer Token in request header.

  • Content Type - JSON

OK response will return success result and bulkId as data.

string

Responses

Request samples

Content type
text/plain
{
    "name": "My BulkSMS",
    "description": "My BulkSMS Description",
    "sender": "GuniSMS",
    "message": "My bulk message",
    "contacts": [
        "6140XXXXXXX"
    ]
}

Response samples

Content type
application/json; charset=utf-8
{
  • "success": true,
  • "data": "601bc3a38a29cb1eb036833f",
  • "queueResponse": {
    }
}