Simulieren Sie die Erstellung einer Massen-SMS Sendung (zum Testen)
Dieser Endpunkt wird zu Testzwecken verwendet, um die Erstellung eines Bulk zu simulieren, ohne dass tatsächlich SMS erstellt und gegen eine Gebühr an den Netzbetreiber weitergeleitet werden.
Authorizations
Abschnitt betitelt „Authorizations “Request Body required
Abschnitt betitelt „Request Body required “The new bulks resource
Bulk SMS creation request payload
object
Die Absenderkennung der Nachricht kann eine Rufnummer mit bis zu 15 Ziffern oder einen Text mit bis zu 11 Zeichen enthalten. Im Fall einer Rufnummer als Absender, halten Sie sich bitte möglichst an das E.164 Format. Ein Text Absender kann Leerzeichen enhalten, aber keine anderen Sonderzeichen, Umlaute oder Satzzeichen. Bitte beachten Sie, dass der Absender nicht in jedem Zielland übertragen werden kann und teilweise die Registrierung einer Absenderkennung durch lokale Regulierung erforderlich ist.
Für Sprachnachrichten (text2speech, text2speech_ssml): Wenn sender_id nicht dem E.164-Format entspricht (z. B. fehlendes führendes +, nicht-numerische Zeichen), wird die Nachricht von der Systemstandardnummer +493075435114 gesendet. Einige nachgelagerte Telefonieanbieter können die benutzerdefinierte Absenderrufnummer überschreiben oder nicht berücksichtigen — die tatsächlich beim Empfänger angezeigte Rufnummer hängt von den Fähigkeiten des Anbieters ab.
Der Nachrichtentext kann eine Länge von maximal 1530 Zeichen im GSM Standardzeichensatz enthalten. Mit einer Unicode SMS liegt die maximale Zeichenlänge bei 670 Zeichen. Das interne Encoding ist in beiden Fällen UTF-8. Der SMS Text kann personalisiert werden wenn als Empfänger eine Gruppe gewählt wurde und diese über zusätzliche Daten in den jeweiligen Spalten verfügt. Als Platzhalter kann “[Name colA]”, “[Name colB]” etc. in den SMS Text eingebaut werden
Liste mit Zielrufnummern. Alternativ oder als Ergänzung zu msg_groups. Beispiel ‘491701234567’,‘417833663636’,‘820101234567’ Rufnummern im Format:
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (wenn Ihr Account in Deutschland registriert ist) wird es konvertiert zu +491701234567
Wenn Sie Ihre Rufnummer nicht im E.164 Format übertragen, versucht unser System die Rufnummer anhand Ihres Firmensitzes aus Ihren Profildaten in E.164 Format zu konvertieren. Um Probleme bei der automatischen Konvertierung zu vermeiden, nutzen Sie bitte bevorzugt das E.164 Format.
Liste der Gruppen an welche die SMS versendet werden soll. Alternativ oder als Ergänzung zu phones.
Definiert ob Sie eine normale GSM 03.38 SMS oder eine Unicode SMS verschicken möchten:
- GSM: is_unicode = false
- Unicode: is_unicode = true
- Auto-Detect: is_unicode = NULL
Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.
Sprache der Sprachnachricht. Mögliche Werte: null (automatische Erkennung) oder einer der folgenden Codes: EN (Englisch), DE (Deutsch), FR (Französisch), IT (Italienisch), ES (Spanisch), PL (Polnisch), NL (Niederländisch), RO (Rumänisch), PT (Portugiesisch), CS (Tschechisch), HU (Ungarisch), SV (Schwedisch), DA (Dänisch), FI (Finnisch), SK (Slowakisch), HR (Kroatisch), TR (Türkisch), RU (Russisch), BG (Bulgarisch), UK (Ukrainisch).
Bulk SMS creation request payload
object
Die Absenderkennung der Nachricht kann eine Rufnummer mit bis zu 15 Ziffern oder einen Text mit bis zu 11 Zeichen enthalten. Im Fall einer Rufnummer als Absender, halten Sie sich bitte möglichst an das E.164 Format. Ein Text Absender kann Leerzeichen enhalten, aber keine anderen Sonderzeichen, Umlaute oder Satzzeichen. Bitte beachten Sie, dass der Absender nicht in jedem Zielland übertragen werden kann und teilweise die Registrierung einer Absenderkennung durch lokale Regulierung erforderlich ist.
Für Sprachnachrichten (text2speech, text2speech_ssml): Wenn sender_id nicht dem E.164-Format entspricht (z. B. fehlendes führendes +, nicht-numerische Zeichen), wird die Nachricht von der Systemstandardnummer +493075435114 gesendet. Einige nachgelagerte Telefonieanbieter können die benutzerdefinierte Absenderrufnummer überschreiben oder nicht berücksichtigen — die tatsächlich beim Empfänger angezeigte Rufnummer hängt von den Fähigkeiten des Anbieters ab.
Der Nachrichtentext kann eine Länge von maximal 1530 Zeichen im GSM Standardzeichensatz enthalten. Mit einer Unicode SMS liegt die maximale Zeichenlänge bei 670 Zeichen. Das interne Encoding ist in beiden Fällen UTF-8. Der SMS Text kann personalisiert werden wenn als Empfänger eine Gruppe gewählt wurde und diese über zusätzliche Daten in den jeweiligen Spalten verfügt. Als Platzhalter kann “[Name colA]”, “[Name colB]” etc. in den SMS Text eingebaut werden
Liste mit Zielrufnummern. Alternativ oder als Ergänzung zu msg_groups. Beispiel ‘491701234567’,‘417833663636’,‘820101234567’ Rufnummern im Format:
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (wenn Ihr Account in Deutschland registriert ist) wird es konvertiert zu +491701234567
Wenn Sie Ihre Rufnummer nicht im E.164 Format übertragen, versucht unser System die Rufnummer anhand Ihres Firmensitzes aus Ihren Profildaten in E.164 Format zu konvertieren. Um Probleme bei der automatischen Konvertierung zu vermeiden, nutzen Sie bitte bevorzugt das E.164 Format.
Liste der Gruppen an welche die SMS versendet werden soll. Alternativ oder als Ergänzung zu phones.
Definiert ob Sie eine normale GSM 03.38 SMS oder eine Unicode SMS verschicken möchten:
- GSM: is_unicode = false
- Unicode: is_unicode = true
- Auto-Detect: is_unicode = NULL
Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.
Sprache der Sprachnachricht. Mögliche Werte: null (automatische Erkennung) oder einer der folgenden Codes: EN (Englisch), DE (Deutsch), FR (Französisch), IT (Italienisch), ES (Spanisch), PL (Polnisch), NL (Niederländisch), RO (Rumänisch), PT (Portugiesisch), CS (Tschechisch), HU (Ungarisch), SV (Schwedisch), DA (Dänisch), FI (Finnisch), SK (Slowakisch), HR (Kroatisch), TR (Türkisch), RU (Russisch), BG (Bulgarisch), UK (Ukrainisch).
Examples
Create bulk with static text and phones
Example of creating a bulk with static text to multiple phone numbers
{ "sender_id": "testbulk", "text": "Hello! This is a test bulk message.", "phones": [ "+49751234567", "+49751234568", "+49751234569" ], "service_code": "direct"}Responses
Abschnitt betitelt „ Responses “Bulks resource created
Bulk SMS details (JSON-LD)
object
JSON-LD ID
JSON-LD type
Eindeutige Entitäts-UUID
Unix-timestamp einer zeitversetzten SMS. Wenn gleich 0, wird die SMS sofort verschickt.
Die Absenderkennung der Nachricht kann eine Rufnummer mit bis zu 15 Ziffern oder einen Text mit bis zu 11 Zeichen enthalten. Im Fall einer Rufnummer als Absender, halten Sie sich bitte möglichst an das E.164 Format. Ein Text Absender kann Leerzeichen enhalten, aber keine anderen Sonderzeichen, Umlaute oder Satzzeichen. Bitte beachten Sie, dass der Absender nicht in jedem Zielland übertragen werden kann und teilweise die Registrierung einer Absenderkennung durch lokale Regulierung erforderlich ist.
Für Sprachnachrichten (text2speech, text2speech_ssml): Wenn sender_id nicht dem E.164-Format entspricht (z. B. fehlendes führendes +, nicht-numerische Zeichen), wird die Nachricht von der Systemstandardnummer +493075435114 gesendet. Einige nachgelagerte Telefonieanbieter können die benutzerdefinierte Absenderrufnummer überschreiben oder nicht berücksichtigen — die tatsächlich beim Empfänger angezeigte Rufnummer hängt von den Fähigkeiten des Anbieters ab.
Der Nachrichtentext kann eine Länge von maximal 1530 Zeichen im GSM Standardzeichensatz enthalten. Mit einer Unicode SMS liegt die maximale Zeichenlänge bei 670 Zeichen. Das interne Encoding ist in beiden Fällen UTF-8. Der SMS Text kann personalisiert werden wenn als Empfänger eine Gruppe gewählt wurde und diese über zusätzliche Daten in den jeweiligen Spalten verfügt. Als Platzhalter kann “[Name colA]”, “[Name colB]” etc. in den SMS Text eingebaut werden
Liste mit Zielrufnummern. Alternativ oder als Ergänzung zu msg_groups. Beispiel ‘491701234567’,‘417833663636’,‘820101234567’ Rufnummern im Format:
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (wenn Ihr Account in Deutschland registriert ist) wird es konvertiert zu +491701234567
Wenn Sie Ihre Rufnummer nicht im E.164 Format übertragen, versucht unser System die Rufnummer anhand Ihres Firmensitzes aus Ihren Profildaten in E.164 Format zu konvertieren. Um Probleme bei der automatischen Konvertierung zu vermeiden, nutzen Sie bitte bevorzugt das E.164 Format.
Liste der Gruppen an welche die SMS versendet werden soll. Alternativ oder als Ergänzung zu phones.
Massen-SMS (Bulk) Status:
0- neu und noch nicht verarbeitet5- in Verarbeitung10- erfolgrech verarbeitet15- vom Benutzer abgebochen20- System Fehler201- error: no recipients found
Anzahl der bereits erstellten SMS Nachrichten
Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde
Uhrzeit der letzten Änderung
IP-Adresse des Hosts, der die Anfrage gesendet hat
Definiert ob Sie eine normale GSM 03.38 SMS oder eine Unicode SMS verschicken möchten:
- GSM: is_unicode = false
- Unicode: is_unicode = true
- Auto-Detect: is_unicode = NULL
Testsendung oder normale Sendung
Service code definiert ob Sie eine text2speech oder direct sms verschicken. Wir empfehlen direct sms für eine sichere Zustellung (see /me)
API-Schlüssel-Kennung
Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.
Sprache der Sprachnachricht. Mögliche Werte: null (automatische Erkennung) oder einer der folgenden Codes: EN (Englisch), DE (Deutsch), FR (Französisch), IT (Italienisch), ES (Spanisch), PL (Polnisch), NL (Niederländisch), RO (Rumänisch), PT (Portugiesisch), CS (Tschechisch), HU (Ungarisch), SV (Schwedisch), DA (Dänisch), FI (Finnisch), SK (Slowakisch), HR (Kroatisch), TR (Türkisch), RU (Russisch), BG (Bulgarisch), UK (Ukrainisch).
Löschen von Nachrichtentext nach Zustellung der SMS
Kosten der im Bulk bereits verarbeiteten Nachrichten
Examples
Bulk created (JSON-LD)
Example response for POST /bulks with Accept: application/ld+json
{ "@context": "/contexts/Bulk", "@id": "/bulks/a1b2c3d4-e5f6-7890-abcd-ef1234567890", "@type": "Bulk", "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "delivery_at": 0, "sender_id": "testbulk", "text": "Hello! This is a test bulk message.", "phones": [ "+49751234567", "+49751234568", "+49751234569" ], "msg_groups": [ 7116, 7117 ], "status_code": 10, "msg_total_count": 1000, "created_at": 1755868416, "processed_at": 1755868500, "ip": "10.1.1.1", "is_unicode": false, "is_dryrun": false, "service_code": "direct", "key_id": 8291, "source": 0, "voice_lang": null, "is_text_deleted": false, "msg_total_cost": 56}Bulk SMS details
object
Eindeutige Entitäts-UUID
Unix-timestamp einer zeitversetzten SMS. Wenn gleich 0, wird die SMS sofort verschickt.
Die Absenderkennung der Nachricht kann eine Rufnummer mit bis zu 15 Ziffern oder einen Text mit bis zu 11 Zeichen enthalten. Im Fall einer Rufnummer als Absender, halten Sie sich bitte möglichst an das E.164 Format. Ein Text Absender kann Leerzeichen enhalten, aber keine anderen Sonderzeichen, Umlaute oder Satzzeichen. Bitte beachten Sie, dass der Absender nicht in jedem Zielland übertragen werden kann und teilweise die Registrierung einer Absenderkennung durch lokale Regulierung erforderlich ist.
Für Sprachnachrichten (text2speech, text2speech_ssml): Wenn sender_id nicht dem E.164-Format entspricht (z. B. fehlendes führendes +, nicht-numerische Zeichen), wird die Nachricht von der Systemstandardnummer +493075435114 gesendet. Einige nachgelagerte Telefonieanbieter können die benutzerdefinierte Absenderrufnummer überschreiben oder nicht berücksichtigen — die tatsächlich beim Empfänger angezeigte Rufnummer hängt von den Fähigkeiten des Anbieters ab.
Der Nachrichtentext kann eine Länge von maximal 1530 Zeichen im GSM Standardzeichensatz enthalten. Mit einer Unicode SMS liegt die maximale Zeichenlänge bei 670 Zeichen. Das interne Encoding ist in beiden Fällen UTF-8. Der SMS Text kann personalisiert werden wenn als Empfänger eine Gruppe gewählt wurde und diese über zusätzliche Daten in den jeweiligen Spalten verfügt. Als Platzhalter kann “[Name colA]”, “[Name colB]” etc. in den SMS Text eingebaut werden
Liste mit Zielrufnummern. Alternativ oder als Ergänzung zu msg_groups. Beispiel ‘491701234567’,‘417833663636’,‘820101234567’ Rufnummern im Format:
- +491701234567 (E.164)
- 00491701234567
- 491701234567
- 01701234567 (wenn Ihr Account in Deutschland registriert ist) wird es konvertiert zu +491701234567
Wenn Sie Ihre Rufnummer nicht im E.164 Format übertragen, versucht unser System die Rufnummer anhand Ihres Firmensitzes aus Ihren Profildaten in E.164 Format zu konvertieren. Um Probleme bei der automatischen Konvertierung zu vermeiden, nutzen Sie bitte bevorzugt das E.164 Format.
Liste der Gruppen an welche die SMS versendet werden soll. Alternativ oder als Ergänzung zu phones.
Massen-SMS (Bulk) Status:
0- neu und noch nicht verarbeitet5- in Verarbeitung10- erfolgrech verarbeitet15- vom Benutzer abgebochen20- System Fehler201- error: no recipients found
Anzahl der bereits erstellten SMS Nachrichten
Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde
Uhrzeit der letzten Änderung
IP-Adresse des Hosts, der die Anfrage gesendet hat
Definiert ob Sie eine normale GSM 03.38 SMS oder eine Unicode SMS verschicken möchten:
- GSM: is_unicode = false
- Unicode: is_unicode = true
- Auto-Detect: is_unicode = NULL
Testsendung oder normale Sendung
Service code definiert ob Sie eine text2speech oder direct sms verschicken. Wir empfehlen direct sms für eine sichere Zustellung (see /me)
API-Schlüssel-Kennung
Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.
Sprache der Sprachnachricht. Mögliche Werte: null (automatische Erkennung) oder einer der folgenden Codes: EN (Englisch), DE (Deutsch), FR (Französisch), IT (Italienisch), ES (Spanisch), PL (Polnisch), NL (Niederländisch), RO (Rumänisch), PT (Portugiesisch), CS (Tschechisch), HU (Ungarisch), SV (Schwedisch), DA (Dänisch), FI (Finnisch), SK (Slowakisch), HR (Kroatisch), TR (Türkisch), RU (Russisch), BG (Bulgarisch), UK (Ukrainisch).
Löschen von Nachrichtentext nach Zustellung der SMS
Kosten der im Bulk bereits verarbeiteten Nachrichten
Examples
Bulk created
Example response for POST /bulks with Accept: application/json
{ "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "delivery_at": 0, "sender_id": "testbulk", "text": "Hello! This is a test bulk message.", "phones": [ "+49751234567", "+49751234568", "+49751234569" ], "msg_groups": [ 7116, 7117 ], "status_code": 10, "msg_total_count": 1000, "created_at": 1755868416, "processed_at": 1755868500, "ip": "10.1.1.1", "is_unicode": false, "is_dryrun": false, "service_code": "direct", "key_id": 8291, "source": 0, "voice_lang": null, "is_text_deleted": false, "msg_total_cost": 56}Ungültige Eingabe
Kunden-Nr oder API Key sind ungültig oder inaktiv!
Account ist noch nicht innerhalb von 24h nach Registrierung aktiviert. Bitte warten oder Support kontaktieren
Die Anfrage war korrekt formatiert, konnte aber aufgrund semantischer Fehler nicht verarbeitet werden
Die IP-Adresse wurde vorübergehend blockiert, da in kurzer Zeit viele Anfragen mit ungültigen Anmeldeinformationen gesendet wurden. Bitte warten Sie und versuchen Sie es später.
Code Samples
#!/usr/bin/env bashcurl -X POST https://api.lox24.eu/bulks/dryrun \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \ -d '{ "sender_id": "testbulk", "text": "test bulk text", "service_code": "direct", "phones": ["+49751234567"], "msg_groups": [7117], "delivery_at": 1573724611, "is_unicode": true, "source": 1234, "voice_lang": "DE" }'using Newtonsoft.Json;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"; string url = "https://api.lox24.eu/bulks/dryrun";
var data = new { sender_id = "My Sender", text = "Test message!", service_code = "direct", phones = new string[]{"+49751234567", "+49751234568"}, msg_groups = new int[]{14514}, delivery_at = 1573724611, is_unicode = true, voice_lang = "DE" };
string postdata = JsonConvert.SerializeObject(data);
Console.WriteLine("Post data: {0}", postdata);
var httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.ReadWriteTimeout = 100000; httpWebRequest.ContentType = "application/json; charset=utf-8"; httpWebRequest.Accept = "application/json"; // or application/ld+json httpWebRequest.Method = "POST"; httpWebRequest.KeepAlive = true; httpWebRequest.Headers.Add("X-LOX24-AUTH-TOKEN", key); httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { streamWriter.Write(postdata); streamWriter.Flush(); streamWriter.Close(); } try { using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse()) {
if(resp.StatusCode == HttpStatusCode.Created) { Console.WriteLine("Success:{0} {1}", (int)resp.StatusCode, "bulks resource created"); } else { Console.WriteLine("Error: wrong response code {0} on create bulk", (int)resp.StatusCode); }
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.BadRequest: // 400 Console.WriteLine("Error:400 Invalid input"); break; 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 ( "bytes" "encoding/json" "fmt" "io/ioutil" "log" "net/http")
func main() {
const Method = "POST" const URL = "https://api.lox24.eu/bulks/dryrun" const Token = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"
payload := map[string]interface{}{ "sender_id": "testbulk", "text": "test bulk text", "service_code": "direct", "phones": []string{"+49751234567"}, "msg_groups": []int{7117}, "delivery_at": 1593724611, "is_unicode": true, "source": 1234, "voice_lang": "DE", }
jsonPayload, _ := json.Marshal(payload)
client := &http.Client{}
req, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload)) if err != nil { log.Fatal(err) }
req.Header.Add("X-LOX24-AUTH-TOKEN", Token) req.Header.Add("Content-Type", "application/json") 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 201: fmt.Println((string(body))) case 400: fmt.Println("Error: code = 400 - Invalid input") 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!") default: fmt.Printf("Error: code = %d\n", res.StatusCode) }}package eu.lox24.doc.bulks;
import org.json.JSONObject;
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 PostDryRunBulksCollection {
public static void main(String[] args) {
var key = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"; var url = "https://api.lox24.eu/bulks/dryrun";
var json = new JSONObject(); json.put("sender_id", "My Sender"); json.put("text", "Test message!"); json.put("service_code", "direct"); json.put("phones", new String[]{"+49751234567", "+49751234568", "+49751234569"}); json.put("msg_groups", new int[]{7116, 7117}); json.put("delivery_at", 1573724611); json.put("is_unicode", true); json.put("voice_lang", "DE");
var postData = json.toString();
System.out.println("Post data: " + postData);
var httpRequest = HttpRequest.newBuilder(URI.create(url)) .timeout(Duration.ofMillis(100000)) .setHeader("Content-Type", "application/json; charset=utf-8") .setHeader("Accept", "application/json") // or application/ld+json .setHeader("X-LOX24-AUTH-TOKEN", key) .POST(HttpRequest.BodyPublishers.ofString(postData)) .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_CREATED) { System.out.println("Success:" + httpResponse.statusCode() + " " + "bulks resource created"); System.out.println("Response text : \n" + httpResponse.body());
} else {
System.out.println("Error: wrong response code " + httpResponse.statusCode() + " on create bulk"); System.out.println("Response text : \n" + httpResponse.body());
switch (httpResponse.statusCode()) {
case HttpURLConnection.HTTP_BAD_REQUEST: // 400 System.out.println("Error:400 Invalid input"); break; 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_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 postObj = { sender_id: 'My Sender', text: 'Test message', service_code: 'direct', phones: ['+49751234567', '+344354634'], msg_groups: [7117], delivery_at: 1573724611, is_unicode: true, voice_lang: 'DE',};
var postdata = JSON.stringify(postObj);
const https = require('https');const options = { hostname: host, path: '/bulks/dryrun', method: 'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json', 'Content-Length': postdata.length, 'X-LOX24-AUTH-TOKEN': token }}
const req = https.request(options, res => { if (res.statusCode == 201) { console.log("Success: code = 201 - bulks resource created"); res.on('data', d => { process.stdout.write(d) }) } else if (res.statusCode == 400) { console.log("Error: code = 400 - Invalid input"); } 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 { console.log("Error: code = " + res.statusCode ); }});
req.on('error', error => { console.error(error)});
req.write(postdata);req.end();<?php
$uri = 'https://api.lox24.eu/bulks/dryrun';$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';
$body = [ 'sender_id' => 'testbulk', 'text' => 'test bulk text', 'service_code' => 'direct', 'phones' => ['+49751234567'], 'msg_groups' => [7117], 'delivery_at' => 1573724611, 'is_unicode' => true, 'source' => 1234, 'voice_lang' => 'DE',];
if(!$body = json_encode($body)) { die('JSON encoding error!');}
$curl = curl_init();
curl_setopt_array($curl, [ CURLOPT_POST => true, CURLOPT_URL => $uri, CURLOPT_POSTFIELDS => $body, CURLOPT_HTTPHEADER => [ "X-LOX24-AUTH-TOKEN: {$token}", 'Accept: application/json', // or application/ld+json 'Content-Type: application/json', ], CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 30, 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(201 === $code) { echo 'Success: response data = ' . var_export($data, true);} else { echo "Error: code = {$code}, data = " . var_export($data, true);}import jsonimport requests
token = "1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx"
url = "https://api.lox24.eu/bulks/dryrun"
data = { 'sender_id': "My Sender", 'text' : "Test message", 'service_code' : "direct", 'phones': ["+49751234567", "+49751234568"], 'msg_groups': [14514], 'delivery_at': 1573724611, 'is_unicode': True, 'voice_lang' : "DE"}
headers = { 'Accept': 'application/json', # or application/ld+json 'Content-Type': 'application/json', 'X-LOX24-AUTH-TOKEN': token,}
print("Post data: ", json.dumps(data, indent=4))
try: # timeout is 100 seconds res = requests.post(url, headers=headers, json=data, timeout=100) if res.status_code != 201: # Created res.raise_for_status() else: print(f'Success: code = {res.status_code} - bulks resource created') print("Response: ", json.dumps(res.json(), indent=4))
except requests.HTTPError: if res.status_code == 400: print("Error:400 Invalid input") elif 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 in (500, 502, 503, 504): print("System error! Please contact to LOX24 support!") else: print(f"Error: code {res.status_code}") print("Response: ", json.dumps(res.json(), indent=4))