FREE 2 requests/year
€0.004 + VAT
FREE requests
Send High Quality SMS worldwide, in single or multiple modes and with delivery reports.
SMS via API is the service that allows you to send certified, high-quality, and professional SMS messages worldwide, with a customized sender and delivery report.
SMS is the primary mobile communication channel, offering the certainty of message reception even in the absence of network coverage. For this reason, it is the ideal tool for real-time and secure communications such as alerts, transactional messages, two-factor authentication, and report availability.
The Openapi service allows you to quickly send the same message to one or more recipients.
The method POST/messages allows you to send one or more SMS messages directly from Openapi's gateway.
POST/messages
Here is an example of a request:
{
"test": false,
"sender": "alberto",
"body": "test invio",
"recipients": "+39-349xxxxx18"
}
POST/messages
The response returns the details of the just sent message:
{
"data": [
{
"test": false,
"sender": "alberto",
"body": "test invio",
"recipients": {
"valid": {
"count": 1
},
"invalid": {
"total": 0,
"list": []
}
},
"transaction": false,
"options": {
"flash": false,
"realtime": false,
"timestamp_send": "1564752494920"
},
"statistics": {
"error": 0,
"sent": 0,
"delivered": 0,
"total": 1,
"sms_total": 1
},
"base_price": 0.0315,
"timestamp": "1564752494920",
"last_update": "1564752494920",
"priority": 1,
"price": 0.0315,
"state": 0,
"id": "5d443a6e9f2725660f3db347"
}
],
"message": "Message Queued",
"credit": "90.90849999999988",
"success": true,
"error": null
}
GET /messages
Through the GET/messages endpoint, you can check the list of all sent SMS at any time.
{
"data": [
{
"sender": "alberto",
"timestamp": "1564411330117",
"id": "5d3f05c29f2725610c2b4e60"
},
{
"sender": "3939989741",
"timestamp": "1563554978976",
"id": "5d31f4a29f27257de166d960"
},
{
"sender": "3939989741",
"timestamp": "1562686328690",
"id": "5d24b3789f27257de1645bda"
},
{
"sender": "Sender's name",
"timestamp": "1562142688118",
"id": "5d1c67e09f27255e2f4079a3"
},
{
"sender": "Sender's name",
"timestamp": "1562142398400",
"id": "5d1c66be9f272563102e8045"
}
],
"success": true,
"message": "5 Results",
"credit": "91.00299999999986",
"error": null
}
GET /messages/{id}
The method GET /messages/{id} allows you to get information regarding the status of the sent message, such as delivery confirmation or eventual error.
{
"data": [
{
"test": false,
"sender": "Simone",
"body": "Production test 4 ",
"recipients": {
"valid": {
"count": 1
},
"invalid": {
"total": 0,
"list": []
}
},
"priority": 1,
"options": {
"flash": true,
"realtime": true,
"timestamp_send": "326152800000",
"custom": {
"test": 123,
"best": 321,
"trest": [
12,
3,
12,
3
]
},
"callback_url": "https://test.ws.messaggisms.com/callbackTest.php"
},
"transaction": false,
"statistics": {
"error": 0,
"sent": 1,
"delivered": 1,
"total": 1,
"sms_total": 1
},
"base_price": 0.03,
"timestamp": "1559743507600",
"last_update": "1559743510156",
"price": 0.036,
"state": 2,
"id": "5cf7cc139f272546624d3795"
}
],
"message": "1 Result",
"credit": "90.97149999999986",
"success": true,
"error": null
}
GET /messages/{id}/recipients
With GET /messages/{id}/recipients, starting from the message ID, you can retrieve the data of the SMS recipients, such as number, prefix, received text, sending status, and description.
{
"data": [
{
"number": "+39-3xxxxx5018",
"prefix": "+39",
"send_id": "5e5e65429f272510fb6adcc0_0",
"body": "test summary2",
"sms": 1,
"remaining_chr": 147,
"state": "DELIVERED",
"state_description": "DELIVERED_TO_HANDSET",
"price": 0.03,
"fields": [],
"message_id": "5e5e65429f272510fb6adcc0",
"i": 0,
"state_detail": "Message delivered to handset",
"timestamp_sent": {
"$date": {
"$numberLong": "1583244661371"
}
},
"real_cost": 0.03,
"report": {
"price": {
"pricePerMessage": 0.03,
"currency": "EUR"
},
"status": {
"id": 5,
"groupId": 3,
"groupName": "DELIVERED",
"name": "DELIVERED_TO_HANDSET",
"description": "Message delivered to handset"
},
"error": {
"id": 0,
"name": "NO_ERROR",
"description": "No Error",
"groupId": 0,
"groupName": "OK",
"permanent": false
},
"messageId": "5e5e65429f272510fb6adcc1",
"doneAt": "2020-03-03T15:11:03.168+0100",
"smsCount": 1,
"sentAt": "2020-03-03T15:11:01.467+0100",
"to": "393495155018"
},
"timestamp_delivery": {
"$date": {
"$numberLong": "1583244663000"
}
},
"id": "5e5e65429f272510fb6adcc1"
}
],
"message": "1 Result",
"credit": 90.20949999999985,
"success": true,
"error": null
}
GET /messages/{id}/recipients/{number}
The GET /messages/{id}/recipients/{number} method allows you to verify the same data but for a specific recipient.
{
"data": [
{
"number": "+39-3xxxxx5018",
"prefix": "+39",
"send_id": "5e5e65429f272510fb6adcc0_0",
"body": "test summary2",
"sms": 1,
"remaining_chr": 147,
"state": "DELIVERED",
"state_description": "DELIVERED_TO_HANDSET",
"price": 0.03,
"fields": [],
"message_id": "5e5e65429f272510fb6adcc0",
"i": 0,
"state_detail": "Message delivered to handset",
"timestamp_sent": {
"$date": {
"$numberLong": "1583244661371"
}
},
"real_cost": 0.03,
"report": {
"price": {
"pricePerMessage": 0.03,
"currency": "EUR"
},
"status": {
"id": 5,
"groupId": 3,
"groupName": "DELIVERED",
"name": "DELIVERED_TO_HANDSET",
"description": "Message delivered to handset"
},
"error": {
"id": 0,
"name": "NO_ERROR",
"description": "No Error",
"groupId": 0,
"groupName": "OK",
"permanent": false
},
"messageId": "5e5e65429f272510fb6adcc1",
"doneAt": "2020-03-03T15:11:03.168+0100",
"smsCount": 1,
"sentAt": "2020-03-03T15:11:01.467+0100",
"to": "393495155018"
},
"timestamp_delivery": {
"$date": {
"$numberLong": "1583244663000"
}
},
"id": "5e5e65429f272510fb6adcc1"
}
],
"message": "1 Result",
"credit": 90.20949999999985,
"success": true,
"error": null
}
Through the SMS API, it is also possible to modify the sending date of a scheduled SMS using the PUT/messages/{id} endpoint and the timestamp_send value. If the SMS has not yet been sent, it can be canceled through the DELETE/messages/{id} endpoint.
The SMS Gateway has often been integrated for appointment reminders or school communications, corporate, public utility, marketing, and onboarding flows/activations for platforms.
The service also allows you to send Flash SMS, messages that do not need to be opened but are displayed directly on the smartphone screen.
With the SMS API, it is also possible to make sending even more immediate by setting a higher priority or selecting the "realtime" option, which is very useful for sending OTPs. The realtime option incurs a 20% surcharge on the cost of each SMS, while the priority cost depends on the set value, which becomes a multiplier of the SMS cost.
The prices for sending SMS can vary depending on the destination country. For the complete list of costs, we invite you to consult the dedicated section in the Console.
Do you need help?
Haven't found the answer you're looking for?
Fill in all the details, we will get back to you as soon as possible!
SMS via API is a service that allows you to send certified, high-quality, and professional SMS messages globally. It enables sender customization and provides detailed delivery reports for each message sent.
The SMS API offers high scalability, fast sending times, and simple integration with your systems. It allows you to automate message sending and personalize content for each recipient. With the same endpoint, you can send SMS messages globally (to any country in the world). Additionally, messages can be sent to single or multiple recipients.
Yes, the API has a dedicated endpoint for monitoring the status of each message. This feature allows you to obtain detailed information about sent messages, such as recipients, delivery status, and overall statistics.
Yes, you can view all the information about a specific message, such as the sender, content, number of recipients, delivery status, and cost. It's simple and helps you keep track of all details.
Yes, the SMS API service supports sending SMS messages worldwide. Prices vary depending on the destination country and can be consulted in the dedicated section of the Console.
Yes, the SMS API service is perfect for sending OTP (One-Time Password) codes. Thanks to its speed and reliability, you can ensure the authenticity of transactions and secure user access. You can integrate the API into your platforms to automatically send OTP codes in real time, with delivery confirmation and detailed status information.
Flash SMS messages are displayed directly on the smartphone screen without needing to open them. This feature is supported by the API and can be activated through sending options.
The SMS service can be used for various purposes, including:
In addition to the "priority" option, you can use the "realtime" option to make SMS sending immediate. It’s the optimal solution for communications that need to be sent and received in seconds, such as OTP sending.
The cost for a single request starts at €0.004. Prices for sending SMS messages vary based on the destination country. To view the full list of costs, please visit the Prices section on the CONSOLE portal.