In-depth look at the JSON output and object description table of sms delivery receipt API of Vonage

In this article, I will provide a detailed explanation of the object table and JSON output of the Vonage SMS delivery receipt API. For those who are unfamiliar with these concepts, an object table is a collection of data in a tabular format, where each row represents a unique instance of the data, and each column represents a specific attribute of that data. JSON, on the other hand, is a lightweight data-interchange format that is easy for humans to read and write and easy for machines to parse and generate. By the end of this article, you will have a clear understanding of how these two concepts are used within the context of the Vonage SMS delivery receipt API.

Object and Description table

ObjectsDescription
msisdnThe number the message was sent to. Numbers are specified in E.164 format.
toThe SenderID you set in from in your request.
network-codeThe Mobile Country Code Mobile Network Code (MCCMNC) of the carrier this phone number is registered with.
messageIdThe Vonage ID for this message.
priceThe cost of the message.
statusA code that explains where the message is in the delivery process.
sctsWhen the DLR was received from the carrier in the following format YYMMDDHHMM. For example, 2001011400 is at 2020-01-01 14:00
err-codeThe status of the request. Will be a non 0 value if there has been an error, or if the status is unknown.
api-keyThe API key that sent the SMS. This is useful when multiple accounts are sending webhooks to the same endpoint.
client-refIf the client-ref is set when the SMS is sent, it will be included in the delivery receipt.
message-timestampThe time when Vonage started to push this Delivery Receipt to your webhook endpoint.
timestampA timestamp in Unix (seconds since the epoch) format.
nonceA random string to be used when calculating the signature.
sigThe signature to enable verification of the source of this webhook.
  1. msisdn: The phone number the message was sent to, formatted according to the E.164 standard. The E.164 format is used for international phone numbers and includes a plus sign (+) followed by the country code and phone number. For example, a phone number in the United States would be formatted as +1XXXXXXXXXX.

  2. to: The SenderID you set in from in your request. The SenderID is a text string that appears as the sender of an SMS message on the recipient's phone. It can be up to 11 alphanumeric characters, but not all countries or carriers support SenderID.

  3. network-code: The Mobile Country Code Mobile Network Code (MCCMNC) of the carrier this phone number is registered with. The MCCMNC is a combination of two codes that identify the country and carrier of a mobile network operator. For example, AT&T in the United States has an MCCMNC of 310410.

  4. messageId: The unique identifier assigned by Vonage for this message. This identifier can be used to track the status of the message and retrieve delivery receipts.

  5. price: The cost of the message, expressed in the currency specified in your Vonage account. The cost of a message can vary depending on the destination country, carrier, and message type.

  6. status: A code that explains where the message is in the delivery process. Possible values include delivered, failed, accepted, and buffered.

  7. scts: The time when the delivery receipt was received from the carrier, in the format YYMMDDHHMM. For example, 2001011400 is January 1st, 2020 at 2:00 PM.

  8. err-code: The status of the request. If there has been an error or if the status is unknown, this value will be non-zero. Possible error codes include 1 for an unknown error, 2 for an invalid number, and 3 for an absent subscriber.

  9. api-key: The API key that was used to send the SMS. This object can be useful when multiple accounts are sending webhooks to the same endpoint.

  10. client-ref: If the client-ref was set when the SMS was sent, this object will contain the same value. The client-ref is an optional value that can be used to identify the message in your own system.

  11. message-timestamp: The time when Vonage started to push this Delivery Receipt to your webhook endpoint, in the ISO 8601 format.

  12. timestamp: The time when the webhook was triggered, expressed as the number of seconds since the Unix epoch (January 1, 1970, at 00:00:00 UTC).

  13. nonce: A random string used for calculating the signature. This string is generated by Vonage and is included in the webhook payload.

  14. sig: A cryptographic signature that can be used to verify the authenticity of the webhook. The signature is generated using the api-secret associated with your Vonage account.

The information provided in the table is extremely useful for developers and businesses that rely on SMS messaging as part of their communication strategy. With the Vonage SMS delivery receipt API, users can receive real-time updates on the status of their messages, including whether they have been delivered, failed, or are still in the delivery process. This information can be used to track the performance of SMS campaigns, troubleshoot issues, and optimize messaging strategies. In addition, the information in the table can be integrated into other systems, such as customer relationship management (CRM) or enterprise resource planning (ERP) software, to provide a more comprehensive view of customer interactions and engagement. Overall, the information provided by the Vonage SMS delivery receipt API can help businesses to improve their messaging capabilities, increase engagement with customers, and ultimately drive revenue growth.

Explaining the JSON output

The JSON output provided is a collection of key-value pairs that contain information about the delivery of an SMS message. The "msisdn" field specifies the phone number that the message was sent to, while "to" indicates the SenderID specified in the original request. "network-code" represents the Mobile Country Code Mobile Network Code (MCCMNC) of the carrier this phone number is registered with, and "messageId" is a unique identifier assigned by Vonage for the message. The "price" field indicates the cost of the message, while "status" provides a code that explains where the message is in the delivery process. The "scts" field indicates the time when the delivery receipt was received from the carrier, and "err-code" provides the status of the request. "api-key" specifies the API key that was used to send the message, and "client-ref" contains the client reference specified in the original request. "message-timestamp" and "timestamp" indicate the time when Vonage started to push this delivery receipt to the webhook endpoint and when the webhook was triggered respectively. Lastly, "nonce" is a random string generated by Vonage for calculating the signature, and "sig" provides the cryptographic signature that can be used to verify the authenticity of the webhook.

{
"msisdn": "447700900000",
"to": "AcmeInc",
"network-code": "12345",
"messageId": "0A0000001234567B",
"price": "0.03330000",
"status": "delivered",
"scts": "2001011400",
"err-code": "0",
"api-key": "abcd1234",
"client-ref": "my-personal-reference",
"message-timestamp": "2020-01-01 12:00:00 +0000",
"timestamp": "1582650446",
"nonce": "ec11dd3e-1e7f-4db5-9467-82b02cd223b9",
"sig": "1A20E4E2069B609FDA6CECA9DE18D5CAFE99720DDB628BD6BE8B19942A336E1C"
}

Conclusion

Throughout this article, we have discussed the object table and JSON output of the Vonage SMS delivery receipt API, as well as their respective descriptions and usefulness. The object table provides a tabular format for the collection of data, while JSON is a lightweight data-interchange format that is easy to read and write for both humans and machines. The information in the table and JSON output is crucial for developers and businesses that rely on SMS messaging as part of their communication strategy, as it provides real-time updates on the status of messages, which can be used to track the performance of SMS campaigns, troubleshoot issues, and optimize messaging strategies. Overall, the Vonage SMS delivery receipt API plays a vital role in enhancing messaging capabilities and driving revenue growth for businesses.

Endnote

You can request access to the Vonage SMS delivery receipt API through the third-party data marketplace of Worldindata, this presents an excellent opportunity for businesses and developers to integrate SMS messaging capabilities into their systems. The Vonage SMS delivery receipt API is a powerful tool that provides real-time updates on the status of messages, allowing users to track the performance of their SMS campaigns, troubleshoot issues, and optimize messaging strategies. By leveraging the resources and expertise of a third-party data marketplace like Worldindata, users can streamline the integration of the Vonage SMS delivery receipt API into their systems and benefit from a more comprehensive suite of data and analytics tools. Ultimately, this can lead to more effective messaging strategies, increased engagement with customers, and higher revenue growth for businesses.