Retrieves the entry of SMS
Getting the single SMS entity by the ID (uuid). If SMS not found then HTTP code 404 will response.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Unique entity UUID
SMS ID (uuid)
Responses
Section titled “ Responses ”Sms resource
SMS
object
JSON-LD ID
JSON-LD type
The message text can have a length of up to 1530 characters. With a Unicode SMS, the maximum character length is reduced to 670 characters. Internal encoding is UTF-8.
Sender-ID of the message. Can be a number (up to 15 digits) or a text (up to 11 character). In case of a number please use preferentially E.164 phone number format. A sender of text may contain spaces but no other special characters. Please note that some countries do not support own sender IDs or do require pre-registration. Our system automatically tries to detect whether a sender ID is a text or a phone number. Avoid special characters in a number and enter it the same way as it would be dialed on a phone.
For voice messages (text2speech, text2speech_ssml): if sender_id does not conform to E.164 format (e.g., missing leading +, non-digit characters), the message will be sent from the system default number +493075435114. Some downstream telephony providers may override or not respect the user-defined sender number — the actual caller ID presented to the recipient depends on provider capabilities.
Recipient (international) number:
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (if the account is registered in Germany) will be convert to +491701234567
If the number is not in an E.164 format then the service will convert it based on user’s address. To avoid problems with the converting please use E.164 preferentially.
Scheduled delivery timestamp
Status of the sms. For more info see SMS status codes
Timestamp when message was sent to the mobile network provider
Message source or origin
Status of the SMS delivery from gateway
IP address of the host which sent request
Timestamp when the entity was added to the system by the user
True if message contains Unicode characters, False otherwise
Unique entity UUID
Country code
Voice message language. Possible values: null (auto-detection) or one of: EN (English), DE (German), FR (French), IT (Italian), ES (Spanish), PL (Polish), NL (Dutch), RO (Romanian), PT (Portuguese), CS (Czech), HU (Hungarian), SV (Swedish), DA (Danish), FI (Finnish), SK (Slovak), HR (Croatian), TR (Turkish), RU (Russian), BG (Bulgarian), UK (Ukrainian).
Count of the SMS parts (concatenated messages)
Count of chars in the message text
String which will be send back to your endpoint. E.g. it can be usable to pass your system message id.
Bulk ID
API key identifier
Service or gateway code
True if message text was deleted, False otherwise
Price
True - SMS was sent, False - SMS wasn’t sent yet
Link to all requests by a SMS list
Link to count of request by a short link
Maximum number of delivery attempts for voice services (text2speech, text2speech_ssml). Allowed values: null, 1, 2, or 3 for text2speech/text2speech_ssml services; must be null for other services.
Example
{ "@context": { "hydra": "http://www.w3.org/ns/hydra/core#" }, "sender_id": "+491701234567", "phone": "+14155552671", "status_code": 0, "dlr_code": 0, "ip": "192.168.1.1", "iso2": "US", "voice_lang": "EN", "service_code": "direct", "attempts_count_max": null}SMS
object
The message text can have a length of up to 1530 characters. With a Unicode SMS, the maximum character length is reduced to 670 characters. Internal encoding is UTF-8.
Sender-ID of the message. Can be a number (up to 15 digits) or a text (up to 11 character). In case of a number please use preferentially E.164 phone number format. A sender of text may contain spaces but no other special characters. Please note that some countries do not support own sender IDs or do require pre-registration. Our system automatically tries to detect whether a sender ID is a text or a phone number. Avoid special characters in a number and enter it the same way as it would be dialed on a phone.
For voice messages (text2speech, text2speech_ssml): if sender_id does not conform to E.164 format (e.g., missing leading +, non-digit characters), the message will be sent from the system default number +493075435114. Some downstream telephony providers may override or not respect the user-defined sender number — the actual caller ID presented to the recipient depends on provider capabilities.
Recipient (international) number:
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (if the account is registered in Germany) will be convert to +491701234567
If the number is not in an E.164 format then the service will convert it based on user’s address. To avoid problems with the converting please use E.164 preferentially.
Scheduled delivery timestamp
Status of the sms. For more info see SMS status codes
Timestamp when message was sent to the mobile network provider
Message source or origin
Status of the SMS delivery from gateway
IP address of the host which sent request
Timestamp when the entity was added to the system by the user
True if message contains Unicode characters, False otherwise
Unique entity UUID
Country code
Voice message language. Possible values: null (auto-detection) or one of: EN (English), DE (German), FR (French), IT (Italian), ES (Spanish), PL (Polish), NL (Dutch), RO (Romanian), PT (Portuguese), CS (Czech), HU (Hungarian), SV (Swedish), DA (Danish), FI (Finnish), SK (Slovak), HR (Croatian), TR (Turkish), RU (Russian), BG (Bulgarian), UK (Ukrainian).
Count of the SMS parts (concatenated messages)
Count of chars in the message text
String which will be send back to your endpoint. E.g. it can be usable to pass your system message id.
Bulk ID
API key identifier
Service or gateway code
True if message text was deleted, False otherwise
Price
True - SMS was sent, False - SMS wasn’t sent yet
Link to all requests by a SMS list
Link to count of request by a short link
Maximum number of delivery attempts for voice services (text2speech, text2speech_ssml). Allowed values: null, 1, 2, or 3 for text2speech/text2speech_ssml services; must be null for other services.
Example
{ "sender_id": "+491701234567", "phone": "+14155552671", "status_code": 0, "dlr_code": 0, "ip": "192.168.1.1", "iso2": "US", "voice_lang": "EN", "service_code": "direct", "attempts_count_max": null}Client ID or API key isn’t active or invalid!
Account isn’t activated. Please wait or contact to support!
Resource not found
IP address was temporary blocked, because during short time from it was sent many request with invalid credentials. Please wait and try later.
Code Samples
#!/usr/bin/env bashcurl -X GET https://api.lox24.eu/sms/20f39273-0566-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'using Newtonsoft.Json.Linq;using System;using System.IO;using System.Net;using System.Text;
namespace Lox24.Api{ class client { static void Main() { string key = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"; var id = "343c785b-8567-11ea-aa81-96000028b339";
string url = "https://api.lox24.eu/sms/" + id;
var httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.ReadWriteTimeout = 100000; httpWebRequest.Accept = "application/json"; //or application/ld+json httpWebRequest.Method = "GET"; httpWebRequest.KeepAlive = true; httpWebRequest.Headers.Add("X-LOX24-AUTH-TOKEN", key); httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;
try { using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse()) { int respCode = (int)resp.StatusCode; Console.WriteLine("Success:{0} {1}", respCode, "sms resource response");
Stream respStream = resp.GetResponseStream(); using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8)) { string responseText = sr.ReadToEnd(); Console.WriteLine("responseText : {0}", responseText); } } } catch (System.Net.WebException ex) { var webResponse = ex.Response as System.Net.HttpWebResponse; Console.WriteLine("Error:{0}", webResponse.StatusCode);
switch (webResponse.StatusCode) { case HttpStatusCode.Unauthorized: // 401 Console.WriteLine("Error:401 Client ID or API key isn't active or invalid!"); break; case HttpStatusCode.Forbidden: // 403 Console.WriteLine("Error:403 Account isn't activated. Please wait or contact to support!"); break; case HttpStatusCode.NotFound: // 404 Console.WriteLine("Error:404 Resource not found"); break; case HttpStatusCode.InternalServerError: // 500 case HttpStatusCode.BadGateway: //502 case HttpStatusCode.ServiceUnavailable: // 503 case HttpStatusCode.GatewayTimeout: // 504 Console.WriteLine("System error! Please contact to LOX24 support!"); break; } } } }package main
import ( "fmt" "io/ioutil" "log" "net/http")
func main() {
const Method = "GET" const URL = "https://api.lox24.eu/sms/981f6497-a03e-11ea-b2e9-b8ca3a65338c" const Token = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"
client := &http.Client{}
req, err := http.NewRequest(Method, URL, nil) if err != nil { log.Fatal(err) }
req.Header.Add("X-LOX24-AUTH-TOKEN", Token) req.Header.Add("Accept", "application/json")
res, err := client.Do(req) if err != nil { log.Fatal(err) }
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body) if err != nil { log.Fatal(err) }
switch res.StatusCode { case 200: fmt.Println((string(body))) case 401: fmt.Println("Error: code = 401 - Client ID or API key isn't active or invalid!") case 403: fmt.Println("Error: code = 403 - Account isn't activated. Please wait or contact to support!") case 404: fmt.Println("Error: code = 404 - Resource not found") default: fmt.Printf("Error: code = %d\n", res.StatusCode) }}package eu.lox24.doc.sms;
import java.io.IOException;import java.net.HttpURLConnection;import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;import java.time.Duration;
public class GetBulksItem {
public static void main(String[] args) {
var key = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"; var id = "343c785b-8567-11ea-aa81-96000028b339";
var url = "https://api.lox24.eu/sms/" + id;
var httpRequest = HttpRequest.newBuilder(URI.create(url)) .timeout(Duration.ofMillis(100000)) .setHeader("Accept", "application/json") // or application/ld+json .setHeader("X-LOX24-AUTH-TOKEN", key) .GET() .build();
var client = HttpClient.newBuilder() .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default .build();
try { var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());
if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) { System.out.println("Success:" + httpResponse.statusCode()); System.out.println("Response text : \n" + httpResponse.body());
} else {
System.out.println("Error: wrong response code " + httpResponse.statusCode()); System.out.println("Response text : \n" + httpResponse.body());
switch (httpResponse.statusCode()) {
case HttpURLConnection.HTTP_UNAUTHORIZED: // 401 System.out.println("Error:401 Client ID or API key isn't active or invalid!"); break; case HttpURLConnection.HTTP_FORBIDDEN: // 403 System.out.println("Error:403 Account isn't activated. Please wait or contact to support!"); break; case HttpURLConnection.HTTP_NOT_FOUND: // 404 System.out.println("Error:404 Resource not found"); break; case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500 case HttpURLConnection.HTTP_BAD_GATEWAY: //502 case HttpURLConnection.HTTP_UNAVAILABLE: // 503 case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504 System.out.println("System error! Please contact to LOX24 support!"); break; }
}
} catch (IOException | InterruptedException e) { e.printStackTrace(); } }}const host = 'api.lox24.eu';const token = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx";
var id = '5dd2ba0e-9830-11ea-aa81-96000028b339';
const https = require('https');const options = { hostname: host, path: '/sms/' + id, method: 'GET', headers: { 'Accept': 'application/json', 'X-LOX24-AUTH-TOKEN': token }}
const req = https.request(options, res => { if (res.statusCode == 200) { console.log('Success: code = 200'); res.on('data', d => { process.stdout.write(d) }) } else if (res.statusCode == 401) { console.log("Error: code = 401 - Client ID or API key isn't active or invalid!"); } else if (res.statusCode == 403) { console.log("Error: code = 403 - Account isn't activated. Please wait or contact to support!"); } else if (res.statusCode == 404) { console.log("Error: code = 404 - Resource not found"); } else { console.log("Error: code = " + res.statusCode ); }
})
req.on('error', error => { console.error(error)})
req.end();<?php
$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';
$id = '11111111-2222-3333-4444-55555555555';$uri = 'https://api.lox24.eu/sms/' . $id;
$curl = curl_init();
curl_setopt_array($curl, [ CURLOPT_URL => $uri, CURLOPT_HTTPHEADER => [ "X-LOX24-AUTH-TOKEN: {$token}", 'Accept: application/json', // or application/ld+json ], CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 20, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,]);
$response = curl_exec($curl);$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);curl_close($curl);
$data = json_decode($response, JSON_OBJECT_AS_ARRAY);
if(200 === $code) { echo 'Success: response data = ' . var_export($data, true);} elseif(404 === $code) { echo "SMS with id = {$id} not found!";} else { echo "Error: code = {$code}, data = " . var_export($data, true);}import jsonimport requests
token = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"sms_id = "343c785b-8567-11ea-aa81-96000028b339"
url = f'https://api.lox24.eu/sms/{sms_id}'
headers = { 'Accept': 'application/json', # or application/ld+json 'X-LOX24-AUTH-TOKEN': token,}
try: # timeout is 100 seconds res = requests.get(url, headers=headers, timeout=100) if res.status_code != 200: res.raise_for_status() else: print(f'Success: code = {res.status_code} - sms resource response') print("Response: ", json.dumps(res.json(), indent=4))
except requests.HTTPError: if res.status_code == 401: print("Error: code = 401 - Client ID or API key isn't active or invalid!") elif res.status_code == 403: print("Error: code = 403 - Account isn't activated. Please wait or contact to support!") elif res.status_code == 404: print("Error:404 Resource not found") elif res.status_code in (500, 502, 503, 504): print("System error! Please contact to LOX24 support!") else: print(f"Error: code {res.status_code}") print(json.dumps(res.json(), indent=4))