If you get or port a Mobile Number from the @voice portal, the number is not only capable to receive calls, but SMS as well. All SMS that is received on your mobile numbers is listed in the @voice platform under Reporting > Receive SMS. You can also get SMS received to be delivered to your own application by setting up a webhook.


To start receiving SMS for your mobile number on your own application, you must first setup the Incoming SMS Webhook. Webhooks are a great way for the @voice platform to deliver SMS with an external app. A webhook is essentially a POST request sent to a callback URL. With @voice, this webhook provide a simple way to allow users to send SMS messages to your web service. The webhook post data from @voice to any chosen service capable of accepting a JSON payload. Once a webhook is added to the Account, it will start listening in on for and incoming SMS messages and sending notifications to external web services.



Create a URL on your app's server to accept and process a POST request with a JSON payload

You service will receive messages as per the below schema. The webhook is a RESTful service that enables your service to process the interchange of JSON formatted messages via HTTPS protocols.


{
  "to": "61456789012",
  "from": "61499888999",
  "timestamp": "2020-06-28 21:53:47",
  "type": "text",
  "message": "This is an incoming SMS test."
}



Create an Incoming SMS webhook

To configure the webhook, from the @voice portal, head Over to Accounts - List All and click on the Connections icon. Select the Callback URL tab and enter your web service url in the Incoming SMS URL parameter.


Interacting with SMS on the @voice platform

You can also reply to the SMS directly from the @voice portal. To find out more on how to achieve this, check out this article.