Panacea Mobile Help Centre
  • 👋Welcome to Panacea Mobile!
  • Overview
    • Getting Started
    • Multipart SMS
    • Unicode Characters
    • SMS Delivery Statuses
      • Troubleshooting SMS Delivery
    • Compliance
    • FAQs
    • International SMS
      • 🚧Country Regulations & Requirements (under construction)
  • How To Guides
    • Panacea Mobile Dashboard
    • Send a single SMS
    • Send batch campaigns
    • Send personalised batch campaigns
    • Inbox
    • Inbound Triggers
    • SMS Numbers
    • Blocked Numbers & Opt-Outs
    • Sub Accounts
    • Reporting
    • Adding prepaid credits
    • Account Settings
      • My Profile
      • My Billing
      • Security
  • Developers
    • HTTPS API
      • Single Sends
      • Batch Sends
      • Delivery Reports via API
      • Receiving Inbound SMS
      • API Response Code
      • API Keys
      • Examples
        • PHP
          • PHP API Example
          • Simple SMS Send
          • Bulk SMS Send
          • Batch Create
          • Batch Create (.zip)
          • Message Status
        • Python
          • Python API Example
    • SMPP API
      • SMPP Connection Details
  • USSD
    • What is USSD?
    • USSD Campaigns
    • Integration with your server
  • Reseller Platform
    • Reseller Platform Features
    • Getting Started
    • Reseller Settings
    • Managing Your Customer Accounts
    • Branded Platform Example
    • FAQs
Powered by GitBook
On this page
  • What is a report mask?
  • What are the different delivery status codes?
  • How to calculate the report mask?
  • Give me an example:

Was this helpful?

  1. Developers
  2. HTTPS API

Delivery Reports via API

When sending a message with Panacea Mobile, you can track the delivery of these messages. If using HTTPS, you need to add two additional fields to your request:

  • report_url: The HTTP URL for us to request when the status changes

  • report_mask: Which status messages you would like to receive

What is a report mask?

The report mask is what is known as a bitmask field indicating which status messages you want to receive.

What are the different delivery status codes?

Status Code
Description

1

Delivered

2

Undelivered

4

Queued at network

8

Sent to network

16

Failed at network

How to calculate the report mask?

To calculate the report mask, you need to pick the status codes you want to receive, and then add them together! And that’s your report mask.

For example, I want to know whether my message was delivered or failed. (1, 2, and 16)

report_mask = 1 + 2 + 16 = 19

So, in your next request, send report_mask=19 and we’ll send you these status messages where applicable.

Give me an example:

Ok, so we want to send a message and receive status reports to our server when the message is delivered or fails.

Our request parameters will look like this:

Parameter
Example Value

username

myusername

password

mypassword

to

27821340000

from

271112221113

text

Hello there, we are testing delivery reports!

report_mask

19

report_url

http://myserver.com/receive_report.php? myMessageId=12345&status=%d

The resulting URL (once we encode the data) for the request will look like this:

https://api.panaceamobile.com/json? action=message_send&username=myusername&password=mypassword&to=27821340000&from=271112221113&text=Hello+there%2C+we+are+testing+delivery+reports%21&report_mask=19&report_url=http%3A%2F%2Fmyserver.com%2Freceive_report.php%3FmyMessageId%3D12345%26status%3D%25d

Please get in touch with your Account Manager or Support to confirm your API URL as this may vary depending on your specific account configuration.

PreviousBatch SendsNextReceiving Inbound SMS

Last updated 12 months ago

Was this helpful?