LOX24 API Dokumentation (DE) (2.20)

Download OpenAPI specification:

Einleitung

In diesem Dokument finden Sie die Spezifikation für unsere LOX24 SMS Gateway API. Das Dokument hilft Ihnen dabei unsere SMS API in Ihre Applikation zu integieren und damit SMS zu versenden und zu empfangen. Sie können unsere SMS API unter der URL https://api.lox24.eu finden. Die einzelnen Funkionen sprechen Sie mit Hilfe eines /funktion an. Z.B. https://api.lox24.eu/me um Ihre Account Informationen abzurufen oder https://api.lox24.eu/sms um eine SMS zu versenden.

Highlights

  • Nutzen Sie HTTPS, um Ihre Nachrichten SSL verschlüsselt zu übertragen
  • Versenden Sie verkettete (überlange) Nachrichten, welche beim Empfänger als eine zusammenhängende SMS ankommen
  • Senden Sie Ihre SMS im GSM 03.38 Zeichensatz oder in allen Sprachen als Unicode
  • Setzen Sie für jede SMS den Absender als Rufnummer mit bis zu 15 Ziffern oder Text mit bis zu 11 Zeichen
  • Senden Sie mit nur einer Anfrage eine Massen-SMS an tausende Rufnummern
  • Empfangen Sie SMS einer Inbound-Rufnummer über HTTPS oder per Mail
  • Prüfen Sie jederzeit den Status Ihrer SMS
  • Sichern Sie die Schnittstelle mit API-Keys und IP-Sperren

Anfragen Content-Type

Der Content-Type für POST und PUT Anfragen wird gesetzt über application/json oder multipart/form-data (für Schnittstellen mit Dateiupload).

Antwort-Header

Jede API-Antwort enthält eine eindeutige Anforderungskennung im Header „X-LOX24-REQUEST-ID“. Diese 32-stellige alphanumerische Kennung wird für jede Anfrage generiert und kann für Supportzwecke verwendet werden, wenn Probleme gemeldet oder bestimmte API-Aufrufe nachverfolgt werden sollen.

Zeitangaben

Die meisten Zeitangaben werden als unix timestamp (integer) übertragen.

IP-Blockierung

Wenn innerhalb einer Minute mehr als drei Anforderungen mit falschen Authentifizierungsdaten von einer IP-Adresse empfangen werden, dann werden alle nachfolgenden Anfragen von dieser IP für die nächsten zehn Minuten mit einer Antwort Status 429 (Too Many Requests) gesperrt.

Authentication

Alle Funktionen erfordern eine Authentifizierung. Hierzu müssen Sie einen API-Key v2 in Ihrem Web-Account erstellen unter (http://account.lox24eu “Einstellungen” und “API-Einstellungen”). Sobald Sie den Key erstellt haben übertragen Sie diesen als HTTP header in dieser Form:

curl -X GET https://api.lox24.eu/me \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
curl -X POST https://api.lox24.eu/groups/7116/phones \
  -H 'Content-Type: application/json' \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -d '{
    "phone": "+4917663804817",
    "a": "o2"
}'

Ältere Authentifizierungsmethode

Wir unterstützen auch weiterhin die alte Version der Authentifizierung mit den beiden Headern 'X-LOX24-CLIENT-ID' und 'X-LOX24-AUTH-TOKEN', wobei die Client-ID identisch mit der Kundennummer ist, welche für den Login im Web-Account verwendet wird.

curl -X GET https://api.lox24.eu/me \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -H 'X-LOX24-CLIENT-ID: 1234567'

Wichtig!

Teilen oder veröffentkichen Sie Ihren geheimen API-Key niemals. Halten Sie den Key geheim. Ein unabsichtlich veröffentlichter Key kann jederzeit in Ihrem Web-Account (https://account.lox24.eu) in den "Einstellungen" und "API-Einstellungen" deaktiviert oder gelöscht werden.

token

In Ihrem Web-Account können Sie nach dem Login unter "Einstellungen" und "API-Einstellungen" einen API-Key erstellen, einsehen, aktivieren oder auch löschen.

Security Scheme Type: API Key
Header parameter name: X-LOX24-AUTH-TOKEN

user

User ist eine Hilfsschnittstelle, um z.B. den Kontostand bzw. die Kreditlinie abzufragen. Dies kann hilfreich sein, um zu bestimmen ob noch ausreichend Guthaben vorhanden ist, um weitere SMS zu versenden.

Kundenprofilinfomationen

Mit dieser Schnittstelle können Sie Ihren Prepaid-Kontostand bzw. Ihre Postpaid-Kreditlinie prüfen. Das Guthaben wird Ihnen exkl. Mehrwertsteuer angezeigt. Daneben liefert die Schnittstelle Informationen zu Ihren verfügbaren SMS-Typen und vorhandenen Massen-SMS Gruppen.

Authorizations:
token

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/me \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "id": 1,
  • "currency": "EUR",
  • "balance_changed_at": 0,
  • "is_text_deleted": true,
  • "balance_amount": 0,
  • "services": [
    ],
  • "groups": {
    }
}

sms

Die SMS Schnittstelle dient dazu einzelne SMS zu versenden. Dies beinhaltet den richtigen SMS Versand aber auch den "Dryrun" zu Testzwecken. Daneben gibt es eine Reihe von Funktionen um versendete SMS abzufragen, SMS zu löschen oder den Versand zu stoppen.

  • Einzel-SMS verschicken
  • Versendete SMS abfragen
  • Zeitversetzte SMS stoppen
  • SMS Daten löschen
  • SMS Daten abfragen

Wenn Sie keine einzelnen SMS versenden wollen, sondern Massen-SMS über die API senden möchten, dann ist der Endpoint "bulks" relevant.

SMS Zustellbericht (DLR) Webhook

Das Ereignis 'sms.delivery' sendet bei Änderungen des dlr_code. So können Sie feststellen, ob eine SMS erfolgreich zugestellt wurde, abgelehnt wurde oder noch zugestellt wird.

Jede übermittelte SMS hat einen Zustellungsbericht-Code Webhook-Ereignisbenachrichtigungen

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "sms.delivery"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json
Example

Ereignis gesendet wenn sich der SMS-Zustellstatus ändert

{
  • "id": "a3cd6e19-8af2-498d-ad07-c7840f1b4ac8",
  • "api_version": "2022-05-25",
  • "name": "sms.delivery",
  • "created_at": 1653378603,
  • "attempt_total": 4,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
}

Test SMS Zustellbericht (DLR) Webhook

Das Ereignis 'sms.delivery.dryrun' wird für einen simulierten SMS-Versand verwendet. Siehe Simulieren Sie den Versand einer SMS (zum Testen).

Jede übermittelte SMS hat einen Zustellungsbericht-Code (DLR).

Webhook-Ereignisbenachrichtigungen

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "sms.delivery.dryrun"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "api_version": "2022-05-25",
  • "name": "sms.delivery.dryrun",
  • "created_at": 0,
  • "attempt_total": 4,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
}

SMS E-Mail Parsing Erfolgreich Webhook

Wird ausgelöst, wenn E-Mail zu SMS erfolgreich geparst wird

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "sms.email.parsing.success"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json

Event sent when email to SMS parsing is successful

{
  • "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
  • "api_version": "2022-05-25",
  • "name": "sms.email.parsing.success",
  • "created_at": 1653378803,
  • "attempt_total": 1,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "5590fa05-fb88-6fc0-bf3b-4d32f63dd863"
}

SMS E-Mail Parsing Fehler Webhook

Wird ausgelöst, wenn das Parsen von E-Mail zu SMS fehlschlägt

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "sms.email.parsing.fail"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json

Event sent when email to SMS parsing fails

{
  • "id": "a3cd6e19-8af2-498d-ad07-c7840f1b4ac8",
  • "api_version": "2022-05-25",
  • "name": "sms.email.parsing.fail",
  • "created_at": 1653378603,
  • "attempt_total": 1,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
}

Alle SMS abfragen

Gibt die Liste der Textnachrichten in der Postbox zurück, geordnet nach dem Feld created_at in absteigender Ordnung. Die Postbox enthält alle gesendeten, nicht gesendeten und abgebrochenen SMS. Optional können Sie auch nach dem Preis oder dem Zeitpunkt der Übermittlung an den Netzbetreiber sortieren. Sie haben auch die Möglichkeit, verschiedene Suchkriterien zu übertragen, um die Ausgabe der Nachrichten des Postfachs einzuschränken.

Authorizations:
token
query Parameters
page
integer
Default: 1

Aktuelle Seite

_order[created_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortierung nach Zeitstempel, wann die Entität erstellt wurde

_order[gateway_sent_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortiere nach Verarbeitungsdatum der SMS

is_sent
boolean

Boolean Filter für das Feld is_sent

is_unicode
boolean

Boolean Filter für das Feld is_unicode

uuid
string

Finde eine SMS Anhand Ihrer unique ID

uuid[]
Array of strings

Finde mehrere SMS Anhand Ihrer unique IDs

iso2
string

Exact Filter SMS nach Ihrem Zielland (ISO 3166-1 alpha-2)

iso2[]
Array of strings

Exact Filter SMS nach Ihren Zielländern (ISO 3166-1 alpha-2)

dlr_code
integer

Exact Filter SMS nach dem Zustellbericht

dlr_code[]
Array of integers

Exact Filter SMS nach den Zustellberichten

status_code
integer

Exact Filter SMS nach dem Status Code

status_code[]
Array of integers

Exact Filter SMS nach den Status Codes

gateway_sent_at
integer

Range Filter SMS nach Ihrer Übertragungszeit zum Netzbetreiber

gateway_sent_at[]
Array of integers

Exact und range Filter nach Übertragungszeit an den Netzbetreiber

delivery_at
integer

Exact Filter für die Zustellzeit

delivery_at[]
Array of integers

Exact und range Filter für die Zustellzeit

created_at
integer

Exact Filter Entitäten nach Ihrer Übertragungszeit an die API

created_at[]
Array of integers

Exact und range Filter nach der Erstellungszeit der Entitäten

chars_count
integer

Range Filter SMS nach Ihrer Zeichenzahl

chars_count[]
Array of integers

Exact und range Filter nach der Zeichenzahl

parts_count
integer

Range Filter SMS nach der Anzahl der SMS-Teile

parts_count[]
Array of integers

Exact und range Filter nach der Anzahl der SMS-Teile

bulk
string

Exact Filter nach der Massen-SMS (Bulk)

bulk[]
Array of strings

Exact und range Filter nach der Massen-SMS (Bulk)

source
integer

Range Filter SMS nach der vom Kunden übertragenen nummerischen ID

source[]
Array of integers

Exact und range Filter der SMS nach dem Parameter sources

text
string

Partial Filter SMS nach dem Nachrichtentext

phone
string

Partial Filter SMS nach der Zielrufnummer

sender_id
string

Partial Filter SMS nach der Absenderkennung

ip
string

Partial Filter SMS nach der Ursprungs-IP

key_id
integer

Exact Filter nach der API Key ID

key_id[]
Array of integers

Exact Filter nach den API Key IDs

callback_data
string

Exact Filter nach callback_data Wert

callback_data[]
Array of strings

Exact Filter nach callback_data Werten

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/sms \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

SMS senden

Sendet die Textnachricht mittels POST request welcher alle erforderlichen Daten enthält, wie Text und Zielrufnummer.

Authorizations:
token
Request Body schema: application/json
required

The new sms resource

text
required
string (property.sms.text)

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.

sender_id
required
string (property.messages.sender_id) ^(\+?[1-9]\d{0,14}|[a-zA-Z0-9 ]{1,11})$

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.

phone
required
string (property.common.phone_number) [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$

Zielrufnummer:

  • +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.

property.messages.delivery_at (integer) or null
source
integer or null (property.messages.source)

Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.

is_unicode
boolean or null (property.messages.is_unicode)

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
(property.messages.voice_lang (string or null)) or null
callback_data
string or null (property.common.callback_data) <= 36 characters

Wert (String) welcher an Ihren Endpoint zurückgeschickt wird. Sie können z.B. Ihre eigene ID so übergeben und mit dem Zustellbericht (DLR) zurückbekommen.

property.messages.service_code (any) or null
property.messages.is_text_deleted (boolean) or null

Responses

Request samples

Content type
application/json
Example

Beispiel einer einfachen SMS-Nachricht mit nur erforderlichen Feldern

{
  • "text": "Hallo! Das ist eine Test-SMS.",
  • "sender_id": "+491701234567",
  • "phone": "+14155552671"
}

Response samples

Content type
Example

API response for a successfully request with minimum parameters

{
  • "@context": "/contexts/sms",
  • "@id": "/sms/11111111-2222-3333-4444-555555555555",
  • "@type": "sms",
  • "text": "Hello! This is a test SMS message.",
  • "sender_id": "+19388888025",
  • "phone": "+14155552671",
  • "delivery_at": 0,
  • "status_code": 0,
  • "gateway_sent_at": 0,
  • "source": 0,
  • "dlr_code": 0,
  • "ip": "139.59.136.251",
  • "created_at": 1755868416,
  • "is_unicode": false,
  • "uuid": "11111111-2222-3333-4444-555555555555",
  • "iso2": "US",
  • "voice_lang": null,
  • "parts_count": 1,
  • "chars_count": 34,
  • "callback_data": null,
  • "bulk_id": null,
  • "key_id": 8291,
  • "service_code": "direct",
  • "is_text_deleted": false,
  • "price": 0.056,
  • "is_sent": false,
  • "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
  • "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
}

SMS senden simulieren (Testumgebung)

Diese Schnittstelle simuliert die Antwort der API auf den SMS Versand, überträgt aber keine SMS ins Mobilfunknetz und verursacht keine Kosten. Die Schnittstelle kann zum Testen im Integrationsprozess verwendet werden. Der Parameter uuid hat immer den Rückgabewert 11111111-2222-3333-4444-55555555555. Die Daten werden bei LOX24 nicht gespeichert, dadurch ist eine Abfrage der übertragenen Daten mit GET /sms/{id} nicht möglich. DLR Zustellberichte werden wie für richtige SMS an Ihre URL oder Mail zurückübertragen, wobei der Status 0 ist.

Authorizations:
token
Request Body schema: application/json
required

The new sms resource

text
required
string (property.sms.text)

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.

sender_id
required
string (property.messages.sender_id) ^(\+?[1-9]\d{0,14}|[a-zA-Z0-9 ]{1,11})$

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.

phone
required
string (property.common.phone_number) [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$

Zielrufnummer:

  • +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.

property.messages.delivery_at (integer) or null
source
integer or null (property.messages.source)

Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.

is_unicode
boolean or null (property.messages.is_unicode)

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
(property.messages.voice_lang (string or null)) or null
callback_data
string or null (property.common.callback_data) <= 36 characters

Wert (String) welcher an Ihren Endpoint zurückgeschickt wird. Sie können z.B. Ihre eigene ID so übergeben und mit dem Zustellbericht (DLR) zurückbekommen.

property.messages.service_code (any) or null
property.messages.is_text_deleted (boolean) or null

Responses

Request samples

Content type
application/json
Example

Beispiel einer einfachen SMS-Nachricht mit nur erforderlichen Feldern

{
  • "text": "Hallo! Das ist eine Test-SMS.",
  • "sender_id": "+491701234567",
  • "phone": "+14155552671"
}

Response samples

Content type
Example

API response for a successfully request with minimum parameters

{
  • "@context": "/contexts/sms",
  • "@id": "/sms/11111111-2222-3333-4444-555555555555",
  • "@type": "sms",
  • "text": "Hello! This is a test SMS message.",
  • "sender_id": "+19388888025",
  • "phone": "+14155552671",
  • "delivery_at": 0,
  • "status_code": 0,
  • "gateway_sent_at": 0,
  • "source": 0,
  • "dlr_code": 0,
  • "ip": "139.59.136.251",
  • "created_at": 1755868416,
  • "is_unicode": false,
  • "uuid": "11111111-2222-3333-4444-555555555555",
  • "iso2": "US",
  • "voice_lang": null,
  • "parts_count": 1,
  • "chars_count": 34,
  • "callback_data": null,
  • "bulk_id": null,
  • "key_id": 8291,
  • "service_code": "direct",
  • "is_text_deleted": false,
  • "price": 0.056,
  • "is_sent": false,
  • "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
  • "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
}

Noch nicht versendete SMS stoppen

Mit dieser Schnittstelle können Sie die Übertragung von SMS stoppen welche in der Zukunft verschickt werden sollen (zeitversetzt). Außerdem kann im Einzelfall die Übertragung an den Netzbetreiber einige wenige Sekunden dauern, so dass Sie auch SMS für den Sofortversand im Ausnahmefall noch löschen können.

Authorizations:
token
query Parameters
_order[created_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortierung nach Zeitstempel, wann die Entität erstellt wurde

_order[gateway_sent_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortiere nach Verarbeitungsdatum der SMS

is_sent
boolean

Boolean Filter für das Feld is_sent

is_unicode
boolean

Boolean Filter für das Feld is_unicode

uuid
string

Finde eine SMS Anhand Ihrer unique ID

uuid[]
Array of strings

Finde mehrere SMS Anhand Ihrer unique IDs

iso2
string

Exact Filter SMS nach Ihrem Zielland (ISO 3166-1 alpha-2)

iso2[]
Array of strings

Exact Filter SMS nach Ihren Zielländern (ISO 3166-1 alpha-2)

dlr_code
integer

Exact Filter SMS nach dem Zustellbericht

dlr_code[]
Array of integers

Exact Filter SMS nach den Zustellberichten

status_code
integer

Exact Filter SMS nach dem Status Code

status_code[]
Array of integers

Exact Filter SMS nach den Status Codes

gateway_sent_at
integer

Range Filter SMS nach Ihrer Übertragungszeit zum Netzbetreiber

gateway_sent_at[]
Array of integers

Exact und range Filter nach Übertragungszeit an den Netzbetreiber

delivery_at
integer

Exact Filter für die Zustellzeit

delivery_at[]
Array of integers

Exact und range Filter für die Zustellzeit

created_at
integer

Exact Filter Entitäten nach Ihrer Übertragungszeit an die API

created_at[]
Array of integers

Exact und range Filter nach der Erstellungszeit der Entitäten

chars_count
integer

Range Filter SMS nach Ihrer Zeichenzahl

chars_count[]
Array of integers

Exact und range Filter nach der Zeichenzahl

parts_count
integer

Range Filter SMS nach der Anzahl der SMS-Teile

parts_count[]
Array of integers

Exact und range Filter nach der Anzahl der SMS-Teile

bulk
string

Exact Filter nach der Massen-SMS (Bulk)

bulk[]
Array of strings

Exact und range Filter nach der Massen-SMS (Bulk)

source
integer

Range Filter SMS nach der vom Kunden übertragenen nummerischen ID

source[]
Array of integers

Exact und range Filter der SMS nach dem Parameter sources

text
string

Partial Filter SMS nach dem Nachrichtentext

phone
string

Partial Filter SMS nach der Zielrufnummer

sender_id
string

Partial Filter SMS nach der Absenderkennung

ip
string

Partial Filter SMS nach der Ursprungs-IP

key_id
integer

Exact Filter nach der API Key ID

key_id[]
Array of integers

Exact Filter nach den API Key IDs

callback_data
string

Exact Filter nach callback_data Wert

callback_data[]
Array of strings

Exact Filter nach callback_data Werten

Responses

Request samples

curl -X POST https://api.lox24.eu/sms/ops/batch_cancel?uuid=20f39273-0566-11ea-a637-96000028b339  \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
application/json
{
  • "deleted_sms_count": 0
}

Massen-SMS (Bulk) löschen

Mit dieser API können Sie Massen-SMS (Bulk) unwiderruflich löschen, egal ob bereits versendet oder nicht. Die SMS erscheinen auch im Einzelverbindungsnachweis nicht mehr. Bitte beachten Sie, dass aus diesem Grund eine spätere Reklamation des Einzelverbindungsnachweieses nicht mehr möglich sind. Wenn Sie die SMS nur stoppen möchten, ist dies nicht die richtige Schnittstelle.

Authorizations:
token
query Parameters
_order[created_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortierung nach Zeitstempel, wann die Entität erstellt wurde

_order[gateway_sent_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortiere nach Verarbeitungsdatum der SMS

is_sent
boolean

Boolean Filter für das Feld is_sent

is_unicode
boolean

Boolean Filter für das Feld is_unicode

uuid
string

Finde eine SMS Anhand Ihrer unique ID

uuid[]
Array of strings

Finde mehrere SMS Anhand Ihrer unique IDs

iso2
string

Exact Filter SMS nach Ihrem Zielland (ISO 3166-1 alpha-2)

iso2[]
Array of strings

Exact Filter SMS nach Ihren Zielländern (ISO 3166-1 alpha-2)

dlr_code
integer

Exact Filter SMS nach dem Zustellbericht

dlr_code[]
Array of integers

Exact Filter SMS nach den Zustellberichten

status_code
integer

Exact Filter SMS nach dem Status Code

status_code[]
Array of integers

Exact Filter SMS nach den Status Codes

gateway_sent_at
integer

Range Filter SMS nach Ihrer Übertragungszeit zum Netzbetreiber

gateway_sent_at[]
Array of integers

Exact und range Filter nach Übertragungszeit an den Netzbetreiber

delivery_at
integer

Exact Filter für die Zustellzeit

delivery_at[]
Array of integers

Exact und range Filter für die Zustellzeit

created_at
integer

Exact Filter Entitäten nach Ihrer Übertragungszeit an die API

created_at[]
Array of integers

Exact und range Filter nach der Erstellungszeit der Entitäten

chars_count
integer

Range Filter SMS nach Ihrer Zeichenzahl

chars_count[]
Array of integers

Exact und range Filter nach der Zeichenzahl

parts_count
integer

Range Filter SMS nach der Anzahl der SMS-Teile

parts_count[]
Array of integers

Exact und range Filter nach der Anzahl der SMS-Teile

bulk
string

Exact Filter nach der Massen-SMS (Bulk)

bulk[]
Array of strings

Exact und range Filter nach der Massen-SMS (Bulk)

source
integer

Range Filter SMS nach der vom Kunden übertragenen nummerischen ID

source[]
Array of integers

Exact und range Filter der SMS nach dem Parameter sources

text
string

Partial Filter SMS nach dem Nachrichtentext

phone
string

Partial Filter SMS nach der Zielrufnummer

sender_id
string

Partial Filter SMS nach der Absenderkennung

ip
string

Partial Filter SMS nach der Ursprungs-IP

key_id
integer

Exact Filter nach der API Key ID

key_id[]
Array of integers

Exact Filter nach den API Key IDs

callback_data
string

Exact Filter nach callback_data Wert

callback_data[]
Array of strings

Exact Filter nach callback_data Werten

Responses

Request samples

#!/usr/bin/env bash
curl -X POST https://api.lox24.eu/sms/ops/batch_delete?uuid=20f39273-0566-11ea-a637-96000028b339  \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
application/json
{
  • "deleted_sms_count": 0
}

Einzel SMS abfragen

Gibt die Daten einer spezifischen SMS mittels Ihrer ID (uuid) zurück. Wenn die SMS nicht gefunden wurde, wird eine HTTP 404 Antwort zurück gegeben.

Authorizations:
token
path Parameters
uuid
required
string

SMS ID (uuid)

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/sms/20f39273-0566-11ea-a637-96000028b339 \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "text": "string",
  • "sender_id": "+491701234567",
  • "phone": "+14155552671",
  • "delivery_at": 0,
  • "status_code": 0,
  • "gateway_sent_at": 0,
  • "source": 0,
  • "dlr_code": 1,
  • "ip": "192.168.1.1",
  • "created_at": 0,
  • "is_unicode": true,
  • "uuid": "string",
  • "iso2": "US",
  • "voice_lang": "DE",
  • "parts_count": 1,
  • "chars_count": 0,
  • "callback_data": "string",
  • "bulk_id": null,
  • "key_id": 1,
  • "service_code": "direct",
  • "is_text_deleted": true,
  • "price": 0,
  • "is_sent": true,
  • "requests": "string",
  • "clicks": "string"
}

SMS Löschen

Löscht eine SMS anhand Ihrer ID (uuid). Die Antwort enthält den Body und einen HTTP Code 204 im Erfolgsfall oder wenn die SMS nicht gefunden wurde einen 404. Achtung, bitte bedenken Sie, dass die SMS ebenfalls aus dem Einzelverbindungsnachweis gelöscht wird. Eine spätere Reklamation der Abrechnung ist in diesem Fall nicht mehr möglich.

Authorizations:
token
path Parameters
uuid
required
string

SMS ID (uuid)

Responses

Request samples

#!/usr/bin/env bash
curl -X DELETE https://api.lox24.eu/sms/20f39273-0566-11ea-a637-96000028b339 \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

bulks

Die bulks Schnittstelle dient dazu Massen-SMS zu versenden. Dies beinhaltet den richtigen Massen-SMS Versand an mehrere Rufnummern und/oder Gruppen aber auch den "Dryrun" zu Testzwecken. Daneben gibt es eine Reihe von Funktionen um den Status einer Massensendung abzufragen oder die Sendung zu stoppen.

  • Massen-SMS verschicken
  • Status der Massen-SMS abfragen
  • Massen-SMS stoppen

Wenn Sie keine Massen-SMS versenden wollen, sondern individuelle SMS über die API senden möchten, dann ist der Endpoint "sms" relevant.

Massen-SMS Mail Fehler-Webhook Webhook

Das Ereignis bulk.email.parsing.fail wird bei einem E-Mail-Parsing-Fehler gesendet.

Webhook-Benachrichtigungen

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "bulk.email.parsing.fail"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json

Ereignis gesendet wenn das Massen-E-Mail-Parsing fehlschlägt

{
  • "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
  • "api_version": "2022-05-25",
  • "name": "bulk.email.parsing.fail",
  • "created_at": 1653378903,
  • "attempt_total": 1,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "6601ab16-ca99-7fe1-cf4c-5e43f74ee974"
}

Massen-SMS Mail Erfolg Webhook

Das Ereignis bulk.email.parsing.success wird bei erfolgreichem Parsen einer E-Mail zu SMS Bulk E-Mail gesendet.

Webhook-Benachrichtigungen

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "bulk.email.parsing.success"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json

Ereignis gesendet wenn die Massen-E-Mail erfolgreich geparst wird

{
  • "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
  • "api_version": "2022-05-25",
  • "name": "bulk.email.parsing.success",
  • "created_at": 1653378803,
  • "attempt_total": 1,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "5590fa05-fb88-6fc0-bf3b-4d32f63dd863"
}

Massen-SMS (Bulk) Sendungen anzeigen

Gibt die Übersicht aller Massen-SMS Kampagnen zurück. Geordnet nach dem Feld created_at in absteigender Reihenfolge. Das Postfach enthält alle gesendeten, nicht gesendeten und abgebrochenen SMS. Optional können Sie auch nach dem Preis oder dem Zeitpunkt der Übermittlung an den Netzbetreiber sortieren. Sie haben auch die Möglichkeit, verschiedene Suchkriterien zu übertragen, um die Ausgabe der Nachrichten des Postfachs einzuschränken.

Authorizations:
token
query Parameters
page
integer
Default: 1

Aktuelle Seite

_order[created_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortierung nach Zeitstempel, wann die Entität erstellt wurde

_order[delivery_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortierung nach Zeitstempel, wann die Nachricht an das Mobilfunknetz übertragen wurde/sollte

_order[processed_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortierung nach Zeitstempel, wann die Entität zuletzt geändert wurde

_order[msg_total_count]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortieren Sie nach der Gesamtzahl der zugehörigen SMS

text
string

Partial Filter SMS nach dem Nachrichtentext

sender_id
string

Partial Filter SMS nach der Absenderkennung

status_code
integer

Exact Filter nach dem Status Code

status_code[]
Array of integers

Exact Filter nach den Status Codes

created_at
integer

Exact Filter Entitäten nach Ihrer Übertragungszeit an die API

created_at[]
Array of integers

Exact und range Filter nach der Erstellungszeit der Entitäten

delivery_at
integer

Exact Filter für die Zustellzeit

delivery_at[]
Array of integers

Exact und range Filter für die Zustellzeit

processed_at
integer

Exact Filter nach der letzten Änderung der Entitäten

processed_at[]
Array of integers

Exact and range filter entities by the last changes timestamps

msg_total_count
integer

Exact Filter nach der Anzahl der SMS in der Massen-SMS Sendung

msg_total_count[]
Array of integers

Exact und range Filter nach der Anzahl der SMS in der Massen-SMS Sendung

source
integer

Range Filter SMS nach der vom Kunden übertragenen nummerischen ID

source[]
Array of integers

Exact und range Filter der SMS nach dem Parameter sources

key_id
integer

Exact Filter nach der API Key ID

key_id[]
Array of integers

Exact Filter nach den API Key IDs

is_unicode
boolean

Boolean Filter für das Feld is_unicode

is_dryrun
boolean

Boolean Filter nach dem Feld is_dryrun um Testsendungen und normale Sendungen zu unterscheiden

exists[is_unicode]
boolean

Boolean und exists Filter nach dem Feld is_unicode um GSM und Unicode Nachrichten zu unterscheiden

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/bulks \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

Massen-SMS (Bulk) erstellen

Erstellen Sie eine Massen-SMS-Kampagne, indem Sie eine POST-Anfrage mit Nachrichtendetails und Empfängerinformationen senden.

Authorizations:
token
Request Body schema: application/json
required

The new bulks resource

One of
property.messages.delivery_at (integer) or null
sender_id
required
string (property.messages.sender_id) ^(\+?[1-9]\d{0,14}|[a-zA-Z0-9 ]{1,11})$

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.

text
required
string (property.bulks.text) <= 1785 characters

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

phones
required
Array of strings or null (property.bulks.phones) [ items [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$ ]

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.

msg_groups
Array of integers or null (property.bulks.msg_groups)

Liste der Gruppen an welche die SMS versendet werden soll. Alternativ oder als Ergänzung zu phones.

is_unicode
boolean or null (property.messages.is_unicode)

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
property.messages.service_code (any) or null
source
integer or null (property.messages.source)

Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.

(property.messages.voice_lang (string or null)) or null
property.messages.is_text_deleted (boolean) or null

Responses

Request samples

Content type
application/json
{
  • "delivery_at": 0,
  • "sender_id": "+491701234567",
  • "text": "string",
  • "phones": [
    ],
  • "msg_groups": [
    ],
  • "is_unicode": true,
  • "service_code": "direct",
  • "source": 0,
  • "voice_lang": "DE",
  • "is_text_deleted": true
}

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "uuid": "string",
  • "delivery_at": 0,
  • "sender_id": "+491701234567",
  • "text": "string",
  • "phones": [
    ],
  • "msg_groups": [
    ],
  • "status_code": 0,
  • "msg_total_count": 0,
  • "created_at": 0,
  • "processed_at": 0,
  • "ip": "192.168.1.1",
  • "is_unicode": true,
  • "is_dryrun": true,
  • "service_code": "direct",
  • "key_id": 1,
  • "source": 0,
  • "voice_lang": "DE",
  • "is_text_deleted": true,
  • "msg_total_cost": 0
}

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:
token
Request Body schema: application/json
required

The new bulks resource

One of
property.messages.delivery_at (integer) or null
sender_id
required
string (property.messages.sender_id) ^(\+?[1-9]\d{0,14}|[a-zA-Z0-9 ]{1,11})$

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.

text
required
string (property.bulks.text) <= 1785 characters

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

phones
required
Array of strings or null (property.bulks.phones) [ items [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$ ]

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.

msg_groups
Array of integers or null (property.bulks.msg_groups)

Liste der Gruppen an welche die SMS versendet werden soll. Alternativ oder als Ergänzung zu phones.

is_unicode
boolean or null (property.messages.is_unicode)

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
property.messages.service_code (any) or null
source
integer or null (property.messages.source)

Um Ihre SMS später besser im Einzelverbindungsnachweis identifizieren zu können, gibt es die Möglichkeit eine individuelle nummerische (integer) ID mitzugeben.

(property.messages.voice_lang (string or null)) or null
property.messages.is_text_deleted (boolean) or null

Responses

Request samples

Content type
application/json
{
  • "delivery_at": 0,
  • "sender_id": "+491701234567",
  • "text": "string",
  • "phones": [
    ],
  • "msg_groups": [
    ],
  • "is_unicode": true,
  • "service_code": "direct",
  • "source": 0,
  • "voice_lang": "DE",
  • "is_text_deleted": true
}

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "uuid": "string",
  • "delivery_at": 0,
  • "sender_id": "+491701234567",
  • "text": "string",
  • "phones": [
    ],
  • "msg_groups": [
    ],
  • "status_code": 0,
  • "msg_total_count": 0,
  • "created_at": 0,
  • "processed_at": 0,
  • "ip": "192.168.1.1",
  • "is_unicode": true,
  • "is_dryrun": true,
  • "service_code": "direct",
  • "key_id": 1,
  • "source": 0,
  • "voice_lang": "DE",
  • "is_text_deleted": true,
  • "msg_total_cost": 0
}

Gibt die Einträge der Massen-SMS (Bulk) Sendung zurück

Fragt die einzelne Massen-SMS Sendung (Bulk) anhand der Bulk ID (uuid) ab. Wenn die Sendung nicht gefunden wird, ist die Antwort ein HTTP Code 404.

Authorizations:
token
path Parameters
id
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Massen-SMS ID (Bulk-ID)

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339 \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "uuid": "string",
  • "delivery_at": 0,
  • "sender_id": "+491701234567",
  • "text": "string",
  • "phones": [
    ],
  • "msg_groups": [
    ],
  • "status_code": 0,
  • "msg_total_count": 0,
  • "created_at": 0,
  • "processed_at": 0,
  • "ip": "192.168.1.1",
  • "is_unicode": true,
  • "is_dryrun": true,
  • "service_code": "direct",
  • "key_id": 1,
  • "source": 0,
  • "voice_lang": "DE",
  • "is_text_deleted": true,
  • "msg_total_cost": 0
}

Massen-SMS (Bulk) Sendung löschen

Entfernen Sie die Bulk-Sendung nach der ID . Endpunkt-Antwort hat keinen Body und sendet im Erfolgsfall den HTTP-Code 204, wenn die SMS entfernt wurde, oder 404, wenn sie nicht existiert. Achtung! Die Sendung wird auch aus dem Einzelverbindungsnachweis gelöscht. Spätere Reklamationen sind daher wegen fehlender Rückverfolgbarkeit ausgeschlossen.

Authorizations:
token
path Parameters
id
required
string

Bulk ID

Responses

Request samples

#!/usr/bin/env bash
curl -X DELETE https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339 \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Abbrechen der Massen-SMS Sendung

Massen-SMS Verarbeitung abbrechen, wenn der status_code = 0 (Neue nicht versendete Massen-SMS) oder status_code = 5 (Massen-SMS in Verarbeitung) ist und für die einzelnen SMS welche nocht nicht versendet sind (is_sent = False)

Authorizations:
token
path Parameters
id
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Massen-SMS ID (Bulk-ID)

Responses

Request samples

#!/usr/bin/env bash
curl -X PUT https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339/cancel \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "uuid": "string",
  • "delivery_at": 0,
  • "status_code": 0,
  • "msg_total_count": 0,
  • "created_at": "string",
  • "processed_at": 0,
  • "ip": "192.168.1.1",
  • "is_unicode": true,
  • "is_dryrun": true,
  • "service_code": "direct",
  • "key_id": 1,
  • "source": 0,
  • "voice_lang": "DE",
  • "is_text_deleted": true,
  • "msg_total_cost": 0
}

Status einer Massen-SMS Sendung abfragen

Kurze Informationen über den Bulk-Status erhalten

Authorizations:
token
path Parameters
id
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Massen-SMS ID (Bulk-ID)

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339/status \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "uuid": "string",
  • "delivery_at": 0,
  • "status_code": 0,
  • "msg_total_count": 0,
  • "created_at": "string",
  • "processed_at": 0,
  • "ip": "192.168.1.1",
  • "is_unicode": true,
  • "is_dryrun": true,
  • "service_code": "direct",
  • "key_id": 1,
  • "source": 0,
  • "voice_lang": "DE",
  • "is_text_deleted": true,
  • "msg_total_cost": 0
}

incomings

Diese Schnittstelle dient dazu Inbound SMS abzufragen (pull). Die Liste aller eingehenden SMS, sowie den Inhalt einer bestimmten SMS. Bitte beachten Sie aber, dass Sie die SMS auch als push erhalten können, sobald diese eingehen. Die push Variante ist zu bevorzugen, da Sie hier nicht auf eingehende SMS prüfen müssen, sondern diese direkt an Ihr Script gesendet bekommen.

Eingehende Inbound SMS Webhook

Das Ereignis 'sms.incoming' wird bei einer eingehenden/beantwortenden SMS (mobile originated - SMS-MO - Inbound SMS) gesendet.

Webhook-Benachrichtigungen

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "sms.incoming"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json

Ereignis gesendet wenn eine eingehende SMS empfangen wird

{
  • "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
  • "api_version": "2022-05-25",
  • "name": "sms.incoming",
  • "created_at": 1653378703,
  • "attempt_total": 1,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "4489ef94-ef77-5ef9-ae2a-3c21e52cc752"
}

Ruft alle Inbound SMS ab

Abrufen der Liste der eingehenden SMS, geordnet nach dem Feld received_at in absteigender Reihenfolge. Das Postfach enthält alle empfangen Inbound-SMS und Antwort-SMS. Für SMS-Antworten wird die Eigenschaft 'msg_uuid' durch den entsprechend Wert der ursprünglich versendeten /sms gefüllt.

Authorizations:
token
query Parameters
page
integer
Default: 1

Aktuelle Seite

_order[received_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortieren nach timestamp als die SMS empfangen wurde

text
string

Partial Filter SMS nach dem Nachrichtentext

from
string

Partial Textfilter nach der Absenderrufnummer

to
string

Partial Textfilter nach der Inbound Rufnummer

msg_uuid
string

Exact Filter nach der ursprünglichen SMS ID

msg_uuid[]
Array of strings

Exact Filter nach den ursprünglichen SMS IDs

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/incomings \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

Ruft den Eintrag der eingehenden SMS ab

Abrufen der spezifischen eingehenden SMS. Das Postfach enthält alle empfangen Inbound-SMS und Antwort-SMS. Für SMS-Antworten wird die Eigenschaft 'msg_uuid' durch den entsprechend Wert der ursprünglich versendeten /sms gefüllt.

Authorizations:
token
path Parameters
uuid
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

ID der eingehenden Nachricht

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/incomings/20f39273-0566-11ea-a637-96000028b339 \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "uuid": "string",
  • "to": "+14155552671",
  • "from": "+14155552671",
  • "received_at": 0,
  • "text": "string",
  • "msg_uuid": "string"
}

SMS aus Posteingang löschen

Eingegangene SMS (Inbound- oder Antwort SMS) kann anhand der UUID vom Server gelöscht werden.

Authorizations:
token
path Parameters
uuid
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

ID der eingehenden Nachricht

Responses

Request samples

#!/usr/bin/env bash
curl -X DELETE https://api.lox24.eu/incomings/20f39273-0566-11ea-a637-96000028b339 \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

groups

Die Funktion "Groups" ermöglicht es Ihnen SMS Verteiler für eine Massen-SMS anzulegen. Jede Gruppe ist ein Verteiler welcher mehrere Nummern enthält. Mit den Funktionen können Sie Gruppen erstellen, ändern, einsehen oder löschen.

Ruft die Sammlung von Gruppen ab

Gibt alle Ihre Gruppen (SMS-Verteilerliste) zurück.

Authorizations:
token
query Parameters
page
integer
Default: 1

Aktuelle Seite

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/groups \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

Eine Gruppe erstellen

Mit diesem Befehl erstellen Sie eine SMS-Mailingliste, die in unserem System für Sie gespeichert wird. Eine Mailingliste hat einen Namen, eine Beschreibung und fünf zusätzliche Spalten, die Sie zusätzlich zur Telefonnummer hinzufügen können.

Authorizations:
token
Request Body schema: application/json
required

The new groups resource

name
required
string (property.group.name) [ 1 .. 50 ] characters

Gruppenname

description
string or null (property.group.description) <= 255 characters

Gruppenbeschreibung

name_a
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_b
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_c
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_d
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_e
string or null (property.group.column_name) <= 50 characters

Name der Spalte

object or null
deleted_at
string or null <date-time> (property.group.deleted_at)

Datum und Uhrzeit, wann die Gruppe gelöscht wird

id
integer (property.group.id) >= 1

Gruppen-ID

count_items
integer (property.group.count_items) >= 0

Anzahl der Elemente in der Gruppe

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "name_a": "string",
  • "name_b": "string",
  • "name_c": "string",
  • "name_d": "string",
  • "name_e": "string",
  • "phones": {
    },
  • "deleted_at": "2019-08-24T14:15:22Z",
  • "id": 1,
  • "count_items": 0
}

Response samples

Content type
{
  • "@context": "string",
  • "@id": "string",
  • "@type": "string",
  • "id": 1,
  • "name": "string",
  • "description": "string",
  • "name_a": "string",
  • "name_b": "string",
  • "name_c": "string",
  • "name_d": "string",
  • "name_e": "string",
  • "count_items": 0,
  • "deleted_at": "2019-08-24T14:15:22Z"
}

Ruft den Eintrag von Gruppen ab

Gibt die Daten der spezifischen Gruppe zurück, wie Gruppen- und Spaltenname.

Authorizations:
token
path Parameters
id
required
integer >= 0

Gruppen-ID

Responses

Request samples

#!/usr/bin/env bash
curl https://api.lox24.eu/groups/12344  \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@context": "string",
  • "@id": "string",
  • "@type": "string",
  • "id": 1,
  • "name": "string",
  • "description": "string",
  • "name_a": "string",
  • "name_b": "string",
  • "name_c": "string",
  • "name_d": "string",
  • "name_e": "string",
  • "count_items": 0,
  • "deleted_at": "2019-08-24T14:15:22Z"
}

Eine Gruppe bearbeiten

Ändern Sie die Konfiguration einer Gruppe, wie den Gruppennamen oder die Beschreibung.

Authorizations:
token
path Parameters
id
required
integer >= 0

Gruppen-ID

Request Body schema: application/json
required

The updated groups resource

name
required
string (property.group.name) [ 1 .. 50 ] characters

Gruppenname

description
string or null (property.group.description) <= 255 characters

Gruppenbeschreibung

name_a
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_b
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_c
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_d
string or null (property.group.column_name) <= 50 characters

Name der Spalte

name_e
string or null (property.group.column_name) <= 50 characters

Name der Spalte

object or null
deleted_at
string or null <date-time> (property.group.deleted_at)

Datum und Uhrzeit, wann die Gruppe gelöscht wird

id
integer (property.group.id) >= 1

Gruppen-ID

count_items
integer (property.group.count_items) >= 0

Anzahl der Elemente in der Gruppe

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "name_a": "string",
  • "name_b": "string",
  • "name_c": "string",
  • "name_d": "string",
  • "name_e": "string",
  • "phones": {
    },
  • "deleted_at": "2019-08-24T14:15:22Z",
  • "id": 1,
  • "count_items": 0
}

Response samples

Content type
{
  • "@context": "string",
  • "@id": "string",
  • "@type": "string",
  • "id": 1,
  • "name": "string",
  • "description": "string",
  • "name_a": "string",
  • "name_b": "string",
  • "name_c": "string",
  • "name_d": "string",
  • "name_e": "string",
  • "count_items": 0,
  • "deleted_at": "2019-08-24T14:15:22Z"
}

Eine Gruppe löschen

Löschen Sie die Gruppe zusammen mit allen zugehörigen Telefonnummern.

Authorizations:
token
path Parameters
id
required
integer >= 0

Gruppen-ID

Responses

Request samples

#!/usr/bin/env bash
curl -X DELETE https://api.lox24.eu/groups/12344  \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

phones

Diese Schnittstelle dient als Ergänzung zu Gruppen. Mit Hilfe von Telefonen können Sie Telefonnummern in Ihrer SMS-Verteilerliste hinzufügen, löschen oder ändern. Es ist auch möglich, den Inhalt einer Gruppe über diese Schnittstelle zu exportieren.

CSV der Telefone exportieren

Beispiel CSV
id phone col_A col_B col_C col_D col_E callback_data
7848412 +49123456780 Name Second name Foo Bar Zoo 12345
7848413 +49123456781 Name Second name Foo Bar Zoo 12346
7848414 +49123456782 Name Second name Foo Bar Zoo 12347
7848415 +49123456783 Name Second name Foo Bar Zoo 12348

Die Namen der Spalten entsprechen den Werten in den Feldern name_X des entsprechenden /group Objekts. Wenn der entsprechende Wert fehlt, ist der Default col_X, wobei X = (a, b, c, d, e).

Authorizations:
token
path Parameters
id
required
integer >= 0

Gruppen-ID

Responses

Request samples

#!/usr/bin/env bash
curl https://api.lox24.eu/groups/7116/file/csv  \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Ruft die Sammlung von Telefonen nach Gruppen-ID ab

Ruft die Sammlung von Telefonen nach Gruppen-ID ab

Authorizations:
token
path Parameters
id
required
integer >= 0

Gruppen-ID

Responses

Request samples

#!/usr/bin/env bash
curl https://api.lox24.eu/groups/7116/phones  \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ]
}

Ein Telefon erstellen

Erstellen Sie einen Eintrag mit einer Telefonnummer.

Authorizations:
token
path Parameters
id
required
integer >= 0

Gruppen-ID

Request Body schema: application/json
required

The new phones resource

phone
required
string (property.phone.phone) <= 30 characters

Telefonnummer

a
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

b
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

c
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

d
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

e
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

callback_data
string or null (property.common.callback_data) <= 36 characters

Wert (String) welcher an Ihren Endpoint zurückgeschickt wird. Sie können z.B. Ihre eigene ID so übergeben und mit dem Zustellbericht (DLR) zurückbekommen.

Responses

Request samples

Content type
application/json
{
  • "phone": "string",
  • "a": "string",
  • "b": "string",
  • "c": "string",
  • "d": "string",
  • "e": "string",
  • "callback_data": "string"
}

Response samples

Content type
{
  • "@context": "string",
  • "@id": "string",
  • "@type": "string",
  • "id": "string",
  • "phone": "string",
  • "a": "string",
  • "b": "string",
  • "c": "string",
  • "d": "string",
  • "e": "string",
  • "callback_data": "string",
  • "subscribed_at": 0,
  • "unsubscribed_at": 0,
  • "unsubscribe_reason": 0
}

Telefone stapelweise erstellen

Anstatt mehrere Anfragen zu senden, ist es besser, eine einzige Anfrage mit einer Liste von Telefon-Objekten als Anfragekörper zu senden.

Authorizations:
token
path Parameters
id
required
integer >= 0

Gruppen-ID

Request Body schema: application/json
required

The new groups resource

Array
phone
required
string (property.phone.phone) <= 30 characters

Telefonnummer

a
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

b
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

c
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

d
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

e
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

callback_data
string or null (property.common.callback_data) <= 36 characters

Wert (String) welcher an Ihren Endpoint zurückgeschickt wird. Sie können z.B. Ihre eigene ID so übergeben und mit dem Zustellbericht (DLR) zurückbekommen.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
{
  • "@context": "string",
  • "@id": "string",
  • "@type": "string",
  • "hydra:totalItems": 0,
  • "hydra:member": {
    }
}

Ruft den Eintrag von Telefon ab

Abfragen eines Eintrags mit einer Telefonnummer.

Authorizations:
token
path Parameters
id
required
integer >= 0

Telefon-Identifikator

Responses

Request samples

#!/usr/bin/env bash
curl https://api.lox24.eu/phones/12344  \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@context": "string",
  • "@id": "string",
  • "@type": "string",
  • "id": "string",
  • "phone": "string",
  • "a": "string",
  • "b": "string",
  • "c": "string",
  • "d": "string",
  • "e": "string",
  • "callback_data": "string",
  • "subscribed_at": 0,
  • "unsubscribed_at": 0,
  • "unsubscribe_reason": 0
}

Den Eintrag von Telefon bearbeiten

Bearbeiten Sie einen Eintrag mit einer Telefonnummer.

Authorizations:
token
path Parameters
id
required
integer >= 0

Telefon-Identifikator

Request Body schema: application/json
required

The updated phones resource

phone
required
string (property.phone.phone) <= 30 characters

Telefonnummer

a
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

b
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

c
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

d
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

e
string or null (property.phone.column) <= 1530 characters

Telefon-Spaltendaten

callback_data
string or null (property.common.callback_data) <= 36 characters

Wert (String) welcher an Ihren Endpoint zurückgeschickt wird. Sie können z.B. Ihre eigene ID so übergeben und mit dem Zustellbericht (DLR) zurückbekommen.

Responses

Request samples

Content type
application/json
{
  • "phone": "string",
  • "a": "string",
  • "b": "string",
  • "c": "string",
  • "d": "string",
  • "e": "string",
  • "callback_data": "string"
}

Response samples

Content type
{
  • "@context": "string",
  • "@id": "string",
  • "@type": "string",
  • "id": "string",
  • "phone": "string",
  • "a": "string",
  • "b": "string",
  • "c": "string",
  • "d": "string",
  • "e": "string",
  • "callback_data": "string",
  • "subscribed_at": 0,
  • "unsubscribed_at": 0,
  • "unsubscribe_reason": 0
}

Den Eintrag von Telefon löschen

Löschen Sie einen Eintrag mit einer Telefonnummer.

Authorizations:
token
path Parameters
id
required
integer >= 0

Telefon-Identifikator

Responses

Request samples

#!/usr/bin/env bash
curl -X DELETE https://api.lox24.eu/phones/12344  \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

campaigns

Über die campaigns Schnittstelle können Sie eine Short-Link-Kampagne erstellen. Eine Short-Link-Kampagne dient dazu eine Short-Link zu erstellen, welchen Sie im Anschluss für den Einzel- und Massen-SMS Versand nutzen können. Sie können über die Schnittstelle ebenfalls die bestehenden Short-Links abfragen und diese ändern oder löschen.

Erstellen eines Kurzlinks

Schnittstelle zum erstellen eines Kurzlinks mit den Parametern Ziel-URL, Typ und Name.

Authorizations:
token
Request Body schema: application/json
required

The new short_link_campaigns resource

type
required
integer (property.short_link_campaigns.type)
Enum: 1 2

Typ der Kurze Link-Kampagne

name
required
string (property.short_link_campaigns.name) <= 100 characters

Name der Kurze Link-Kampagne

url
required
string (property.short_link_campaigns.url)

URL der Kurze Link-Kampagne

group_id
integer or null (property.short_link_campaigns.group_id)

Gruppen-ID der Kurze Link-Kampagne

Responses

Request samples

Content type
application/json
{
  • "type": 1,
  • "name": "string",
  • "url": "string",
  • "group_id": 0
}

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "type": 1,
  • "id": "string",
  • "name": "string",
  • "url": "string",
  • "created_at": 0,
  • "group_id": 0
}

Erstellen eines Anmelde-Links (Subscribe)

Erstellt eine spezielle Art von Kurzlink-Kampagne, die den Benutzer zu einem Anmeldeformular weiterleitet. Sie können die ID der Gruppe angeben, zu der die Telefonnummern der abonnierten Benutzer hinzugefügt werden sollen.

Authorizations:
token
Request Body schema: application/json
required

The new short_link_campaigns resource

name
required
string (property.short_link_campaigns.name) <= 100 characters

Name der Kurze Link-Kampagne

group_id
required
integer or null (property.short_link_campaigns.group_id)

Gruppen-ID der Kurze Link-Kampagne

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "group_id": 0
}

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "type": 1,
  • "id": "string",
  • "name": "string",
  • "url": "string",
  • "created_at": 0,
  • "group_id": 0
}

Erstellt eine spezielle Art von Kurzlink-Kampagne, die den Benutzer zu einem Abmeldeformular weiterleitet. Sie können die ID der Gruppe angeben, aus der die Telefonnummern der Benutzer entfernt werden.

Erstellt eine spezielle Art von Kurzlink-Kampagne, die den Benutzer zu einem Abmeldeformular weiterleitet. Sie können die ID der Gruppe angeben, aus der die Telefonnummern der Benutzer entfernt werden.

Authorizations:
token
Request Body schema: application/json
required

The new short_link_campaigns resource

name
required
string (property.short_link_campaigns.name) <= 100 characters

Name der Kurze Link-Kampagne

group_id
required
integer or null (property.short_link_campaigns.group_id)

Gruppen-ID der Kurze Link-Kampagne

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "group_id": 0
}

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "type": 1,
  • "id": "string",
  • "name": "string",
  • "url": "string",
  • "created_at": 0,
  • "group_id": 0
}

requests

Über requests können Sie die Resultate Ihrer Short-Link-Kampagne auslesen. Sie können je nachdem, ob Sie eine SMS mit einfachem oder erweitertem Tracking versendet haben feststellen welche Rufnummern wie oft auf die Links in Ihren SMS geklickt haben. Über diese Schnittstelle ist es damit möglichen herauszufinden welche Empfänger oder welche SMS wie gut gelaufen sind.

Klicks nach einer Massen-SMS-ID

Liste aller Anfragen nach einer SMS-Bulk-ID auf.

Authorizations:
token
path Parameters
id
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Massen-SMS ID (Bulk-ID)

query Parameters
page
integer
Default: 1

Aktuelle Seite

_order[date]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortiere eine Liste nach der Eigenschaft 'date'

ip
string

Partial case-insensitive Textfilter nach einer IP-Adresse

url
string

Partial case-insensitive Textfilter nach einer Ziel-URL

user_agent
string

Partial kurze Links nach User-Agent filtern (Teilübereinstimmung)

country
string

Exact Filter nach dem Ländercode

country[]
Array of strings

Exact Filter nach den Ländercodes

referer
string

Partial case-insensitive Textfilter nach einer referer

date
integer

Exact kurze Link-Anfragen nach exaktem Datum filtern

date[]
Array of integers

Exact Kurze Link-Anfragen nach Datum filtern (Array von Werten)

type
integer

Exact kurze Links nach Typ filtern (exakte Übereinstimmung)

type[]
Array of integers

Range kurze Links nach Typ filtern (Array von Werten)

browser
string

Partial case-insensitive Textfilter nach einem Browsernamen

os
string

Partial ase-insensitive Textfilter nach dem Namen eines Betriebssystems

os_version
string

Partial case-insensitive Textfilter nach einer Betriebssystemversion

software_type
string

Partial case-insensitive Textfilter nach einem Software-Typ

hardware_type
string

Partial case-insensitive Textfilter nach einem Hardware-Typ

date[between]
string

Bereich Kurze Link-Anfragen nach Datumsbereich filtern

date[gt]
string

Kurze Link-Anfragen nach Datum größer als filtern

date[gte]
string

Kurze Link-Anfragen nach Datum größer oder gleich filtern

date[lt]
string

Kurze Link-Anfragen nach Datum kleiner als filtern

date[lte]
string

Kurze Link-Anfragen nach Datum kleiner oder gleich filtern

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/bulks/{bulk_id_here}/requests \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

Klicks nach Kampagne auflisten

Listet alle Klicks auf Shortlinks für eine bestimmte Kampagne auf

Authorizations:
token
path Parameters
code
required
string

short_link_campaigns code

query Parameters
page
integer
Default: 1

Aktuelle Seite

_order[date]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortiere eine Liste nach der Eigenschaft 'date'

ip
string

Partial case-insensitive Textfilter nach einer IP-Adresse

url
string

Partial case-insensitive Textfilter nach einer Ziel-URL

user_agent
string

Partial kurze Links nach User-Agent filtern (Teilübereinstimmung)

country
string

Exact Filter nach dem Ländercode

country[]
Array of strings

Exact Filter nach den Ländercodes

referer
string

Partial case-insensitive Textfilter nach einer referer

date
integer

Exact kurze Link-Anfragen nach exaktem Datum filtern

date[]
Array of integers

Exact Kurze Link-Anfragen nach Datum filtern (Array von Werten)

type
integer

Exact kurze Links nach Typ filtern (exakte Übereinstimmung)

type[]
Array of integers

Range kurze Links nach Typ filtern (Array von Werten)

browser
string

Partial case-insensitive Textfilter nach einem Browsernamen

os
string

Partial ase-insensitive Textfilter nach dem Namen eines Betriebssystems

os_version
string

Partial case-insensitive Textfilter nach einer Betriebssystemversion

software_type
string

Partial case-insensitive Textfilter nach einem Software-Typ

hardware_type
string

Partial case-insensitive Textfilter nach einem Hardware-Typ

date[between]
string

Bereich Kurze Link-Anfragen nach Datumsbereich filtern

date[gt]
string

Kurze Link-Anfragen nach Datum größer als filtern

date[gte]
string

Kurze Link-Anfragen nach Datum größer oder gleich filtern

date[lt]
string

Kurze Link-Anfragen nach Datum kleiner als filtern

date[lte]
string

Kurze Link-Anfragen nach Datum kleiner oder gleich filtern

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu//short_link_campaigns/{campaign_id}/requests \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

SMS-Klicks für eine SMS

Liste aller Klicks für eine einzelne SMS-ID

Authorizations:
token
path Parameters
uuid
required
string

SMS ID (uuid)

query Parameters
page
integer
Default: 1

Aktuelle Seite

_order[date]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortiere eine Liste nach der Eigenschaft 'date'

ip
string

Partial case-insensitive Textfilter nach einer IP-Adresse

url
string

Partial case-insensitive Textfilter nach einer Ziel-URL

user_agent
string

Partial kurze Links nach User-Agent filtern (Teilübereinstimmung)

country
string

Exact Filter nach dem Ländercode

country[]
Array of strings

Exact Filter nach den Ländercodes

referer
string

Partial case-insensitive Textfilter nach einer referer

date
integer

Exact kurze Link-Anfragen nach exaktem Datum filtern

date[]
Array of integers

Exact Kurze Link-Anfragen nach Datum filtern (Array von Werten)

type
integer

Exact kurze Links nach Typ filtern (exakte Übereinstimmung)

type[]
Array of integers

Range kurze Links nach Typ filtern (Array von Werten)

browser
string

Partial case-insensitive Textfilter nach einem Browsernamen

os
string

Partial ase-insensitive Textfilter nach dem Namen eines Betriebssystems

os_version
string

Partial case-insensitive Textfilter nach einer Betriebssystemversion

software_type
string

Partial case-insensitive Textfilter nach einem Software-Typ

hardware_type
string

Partial case-insensitive Textfilter nach einem Hardware-Typ

date[between]
string

Bereich Kurze Link-Anfragen nach Datumsbereich filtern

date[gt]
string

Kurze Link-Anfragen nach Datum größer als filtern

date[gte]
string

Kurze Link-Anfragen nach Datum größer oder gleich filtern

date[lt]
string

Kurze Link-Anfragen nach Datum kleiner als filtern

date[lte]
string

Kurze Link-Anfragen nach Datum kleiner oder gleich filtern

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/sms/{sms_id}/requests \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

click rate

Mittels dieser Schnittstelle können Sie die Anzahl der Klicks Ihrer SMS-Sendungen messen.

Liste der SMS-Klicks

Abrufen der Liste von SMS, welche einen Short-Link enthalten, und der jeweiligen Anzahl an Klicks.

Authorizations:
token
query Parameters
page
integer
Default: 1
_order[created_at]
string
Default: "asc"
Enum: "asc" "desc"

Sort a list by 'created_at' property

requests_count
integer

Exact filter by the requests count value

requests_count[]
Array of integers

Exact and range filter by the requests count value

created_at
integer

Exact filter by SMS creating date

created_at[]
Array of integers

Exact and range filter by SMS creating date

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/sms/clicks \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

SMS-Klicks für eine SMS

Abfrage der Klicks auf einen Short-Link für eine spezifische SMS. Wenn die SMS nicht existiert oder nicht enthalten ist, wird der HTTP-Code 404 zurückgegeben.

Authorizations:
token
path Parameters
uuid
required
string

SMS ID (uuid)

Responses

Request samples

#!/usr/bin/env bash
curl https://api.lox24.eu/sms/clicks/sms_uuid_here  \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "uuid": "string",
  • "created_at": 0,
  • "requests_count": 0
}

Fraud Detection API

Die Fraud Detection API hilf dabei, verdächtige Anfragen an Ihren Dienst zu identifizieren. Die API erhält von Ihnen unter Einhaltung der in Europa gültigen Datenschutzbestimmungen Daten wie Telefonnummer, E-Mail und IP-Adresse Ihres potentiellen Kunden. Unser System prüft diese anhand von Datenbanken, Algorithmen und künstlicher Intelligenz. Die API gibt schließlich eine Bewertung über die Wahrscheinlichkeit bzw. das Risiko eines Betrugs. Das Risiko wird dabei gemessen als Betrugswahrscheinlichkeit von 0 bis 100, wobei 0 eine kleine Betrugswahrscheinlichkeit (guter Risikowert) und 100 eine äußerst hohe Betrugswahrscheinlichkeit (schlechter Risikowert) darstellt.

Der Dienst ermöglicht es Ihnen auch selber, jeden Teil der Anfrage separat zu prüfen, indem Sie z. B. nur die Telefondaten übergeben.

Neben der Risikobewertung enthält die Antwort der Fraud Detection AP auch zusätzliche Informationen, die Ihnen bei Ihrer eigenen Risikoeinschätzung weiterhelfen:

  • über das Telefon:
    • Region
    • Art der Nummer (Mobiltelefon, VoIP, etc.)
    • gültiges Format
    • ob die Nummer überhaupt möglich ist
  • über die E-Mail:
    • ist eine solche E-Mail möglich
    • ist die Domäne der angegebenen E-Mail verdächtig
  • über die IP-Adresse
    • Region
    • Bundesland
    • Stadt
    • Postleitzahl
    • geografische Koordinaten
    • ISP
    • Risikobewertung des ISP
    • Typ des Proxyservers (falls verwendet)
    • Art der Verbindung
  • über die Anschrift
    • Landescode (ISO 3166-1 alpha-2)
    • Stadt
    • Postleitzahl
    • Straßename
    • Hausnummer

Je nach gewähltem Tarif 'direct' sind die Antwort und die Bearbeitungsgeschwindigkeit der Anfrage unterschiedlich. Economy Anfragen bieten sich z.B. für einen simplen Login an. Pro Anfragen für eine Neukundenanmeldung und Direkt Anfragen für einen Produktverkauf:

  • 'direkt' - die Antwort enthält alle Detaildaten und die Anfrage wird in einer separaten Warteschlange mit erhöhter Priorität bearbeitet.

Da das Scoring einige Zeit in Anspruch nimmt, wird die Anfrage im asynchronen Modus verarbeitet und nach der Verarbeitung sendet der Dienst die Anfragedaten im JSON-Format an die von Ihnen angegebene HTTP-URL oder E-Mail zurück. Diesen Wert können Sie im Web-Account unter Einstellungen und Benachrichtigungen festlegen (Ereignisbenachrichtigungen). Sie können auch den Status der Anfrage anhand ihrer ID überprüfen, indem Sie eine Anfrage an die API senden. Wir empfehlen Ihnen jedoch dringend, das Benachrichtigungssystem (Webhook) zu verwenden, da der Dienst bei einer großen Anzahl von Anfragen Ihrerseits Ihre Anfragen blockieren könnte.

Fraud Check Completed Webhook

Triggered when a Fraud Detection request is completed

Authorizations:
token
Request Body schema: application/json
required
id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Eindeutige Entitäts-UUID

api_version
string (property.common.api_version)

Version der Datenstruktur der Meldung

name
string
Value: "fraud-check.done"

Name des Webhook-Ereignisses

created_at
integer (property.common.created_at) >= 0

Zeitstempel, wann die Entität vom Benutzer zum System hinzugefügt wurde

attempt_total
integer (property.common.attempt_total) [ 1 .. 4 ]

Gesamtzahl der Zustellversuche von Benachrichtigungs-Webhooks

attempt_number
integer (property.common.attempt_number) >= 1

Aktuelle Nummer des Webhook-Benachrichtigungsversuchs

object

Event-specific data payload

notification_task_id
string <uuid>

Notification task identifier (request identifier)

Responses

Request samples

Content type
application/json

Ereignis gesendet wenn die Betrugserkennungsprüfung abgeschlossen ist

{
  • "id": "a7bc0d53-2ab6-822c-df31-a1284b5f8ea2",
  • "api_version": "2022-05-25",
  • "name": "fraud-check.done",
  • "created_at": 1653379003,
  • "attempt_total": 1,
  • "attempt_number": 1,
  • "data": {
    },
  • "notification_task_id": "7712ab27-cd00-8ef2-da5d-6f54f85ff085"
}

Liste der Anti-Betrugs Abfragen

Fragt die Liste aller bisherigen Anfragen an die Fraud Detection API ab

Authorizations:
token
query Parameters
page
integer
Default: 1

Aktuelle Seite

_order[created_at]
string (order.ordering)
Default: "asc"
Enum: "asc" "desc"

Sortierung nach Zeitstempel, wann die Entität erstellt wurde

id
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Exact Filter nach der ID der Betrugsanfrage

id[]
Array of strings (property.common.uuid) [ items^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... ]

Exact Filter nach den Betrugsanfrage-IDs

callback_data
string

Einmalige Filterung von Entitäten durch die callback_data

request_phone.phone
string

Partial Filter nach dem Telefonwert der Anfrage

request_email.email
string

Partial Filter nach dem E-Mail-Wert der Anfrage

request_ip.ip
string

Partial Filter nach dem IP-Wert der Anfrage

status_code
integer

Exact Filter von Betrugsanfragen nach dem Statuscode

status_code[]
Array of integers

Exact Filter von Betrugsanfragen nach den Statuscodes

Responses

Request samples

#!/usr/bin/env bash
curl -X GET https://api.lox24.eu/fraud-checks \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "hydra:member": [
    ],
  • "hydra:totalItems": 0,
  • "hydra:view": {
    },
  • "hydra:search": {
    }
}

Frau Detectinon Abfrage

Erstellt eine Anfrage an die Fraud Detection API um den Risikofaktor für einen Betrug zu bestimmen.

Authorizations:
token
Request Body schema: application/json
required

The new fraud-check resource

service_code
required
string (property.fraud-check.service_code)
Enum: "economy" "pro" "direct"

Der Servicecode bestimmt die Art der Betrugsabfrage, die Sie durchführen. economy enthält nur einen Risikowert, während pro und direct mehr Details zu den Ergebnissen enthalten, so dass Sie Ihre eigene Entscheidung treffen können. direct Abfragen werden ebenfalls mit Priorität bearbeitet. (siehe /me)

(property.common.callback_data (string or null)) or null
property.common.phone_number (string) or null
property.fraud-check.email (string) or null
property.fraud-check.ip (string) or null
schema.fraud-check-address-fraud_request_write (object) or null

Responses

Request samples

Content type
application/json
{
  • "service_code": "economy",
  • "callback_data": "string",
  • "phone": "+14155552671",
  • "email": "string",
  • "ip": "strings",
  • "address": {
    }
}

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "id": "string",
  • "status_code": 0,
  • "risk_score": 100,
  • "service_code": "economy",
  • "created_at": 0,
  • "updated_at": 0,
  • "callback_data": "string",
  • "request_phone": {
    },
  • "request_email": {
    },
  • "request_ip": {
    },
  • "request_address": {
    },
  • "price": 0
}

Abfrage der Risikoprüfung

Gibt das Ergebnis einer vorherigen Anfrage an die Fraud Detection API zurück.

Authorizations:
token
path Parameters
id
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Fraud Detection Abfrage ID

Responses

Request samples

#!/usr/bin/env bash
curl https://api.lox24.eu/fraud-checks/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Response samples

Content type
{
  • "@id": "string",
  • "@type": "string",
  • "@context": "string",
  • "id": "string",
  • "status_code": 0,
  • "risk_score": 100,
  • "service_code": "economy",
  • "created_at": 0,
  • "updated_at": 0,
  • "callback_data": "string",
  • "request_phone": {
    },
  • "request_email": {
    },
  • "request_ip": {
    },
  • "request_address": {
    },
  • "price": 0
}

Abfrage Löschen

Löscht eine vorherige Abfrage an die Fraud Detection API mit allen Daten.

Authorizations:
token
path Parameters
id
required
string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...

Fraud Detection Abfrage ID

Responses

Request samples

#!/usr/bin/env bash
curl -X DELETE https://api.lox24.eu/fraud-checks/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee  \
  -H 'Content-Type: application/json' \
  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'

Filter und Sortieren

Die LOX24 API nutzt ein generisches Filter System um Inhalte zu filtern und
zu sortieren. Sie können in der jeweiligen Funktionsbeschreibung einsehen, welche Filter verfügbar sind.

Suchfilter

Die API nutzt zwei Arten von Textfiltern:

  • partial wird genutzt um Inhalte zu finden bei denen die Zeichenkette im Textfeld enthalten ist
  • exact wird genutzt um Inhalte zu finden bei denen das Textfeld mit dem Suchwort übereinstimmt

Hinweis: Suchfilter mit der exact Strategie, können mehrere Suchworte in der gleichen Anfrage enthalten (in diesem Fall ähnlich zu einer SQL IN Anfrage).

Anwendungsbeispiel

Finde SMS bei denen die Telefonnummer (phone) die Zahlen "4979" und der Text (text) die Zeichen "hello" enthält:

curl -X GET https://api.lox24.eu/sms?phone=4979&text=hello \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -H 'X-LOX24-CLIENT-ID: 1234567' 

Finde SMS mit dem Zielland (iso2) gleich 'DE' oder 'CH' und den status_code = 0

curl -X GET https://api.lox24.eu/sms?iso2[]=DE&iso2[]=CH&status_code=0 \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -H 'X-LOX24-CLIENT-ID: 1234567' 

Boolescher Filter

Der boolesche Filter erlaubt es, nach booleschen Feldern und Werten zu suchen.

Syntax: ?property=<true|false|1|0>

Finde SMS welche noch nicht ins Mobilfunknetz gesendet wurden:

curl -X GET https://api.lox24.eu/sms?sent=0 \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -H 'X-LOX24-CLIENT-ID: 1234567' 

Exists filter

The exists filter allows to select items based on a nullable field value

Syntax: ?exists[property]=<true|false|1|0>

Get bulks which has property is_unicode=null (sms encoding auto-detection):

curl -X GET https://api.lox24.eu/bulks?exists[is_unicode]=0 \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -H 'X-LOX24-CLIENT-ID: 1234567'

Bereich Filter

Der Bereichsfilter ermöglicht die Filterung nach einem Wert kleiner, größer, kleiner oder gleich, größer oder gleich und zwischen zwei Werten.

Syntax: ?property[<lt|gt|lte|gte|between>]=value

Anwendungsbeispiel

Filter SMS welche erstellt wurden (created_at) zwischen 1575158400 (2019-12-01) und 1575676800 (2019-12-07):

curl -X GET https://api.lox24.eu/sms?created_at[between]=1575158400..1575676800 \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -H 'X-LOX24-CLIENT-ID: 1234567' 

Sortierung

Der Ordnungsfilter ermöglicht es Ihnen, eine Sammlung nach den vorgegebenen Eigenschaften zu sortieren. Parameter: _order

Anwendungsbeispiel

Sortieren Sie die SMS-Sammlung nach dem Feld 'created_at' in absteigender Reihenfolge:

curl -X GET https://api.lox24.eu/sms?_order[created_at]=desc \
  -H 'Host: api.lox24.eu' \
  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \
  -H 'X-LOX24-CLIENT-ID: 1234567' 

SMS Zustellberichte (DLR)

Für jede übermittelte SMS gibt es einen Zustellbericht (DLR). Es gibt zwei Wege diese Zustellberichte zu erhalten:

  1. push http: Wir senden die Zustellberichte über einen HTTP GET Request oder eine E-Mail (webhook) an Ihren Endpoint. Mehr Informationen unter Ereignisbenachrichtigungen
  2. pull http: Sie fragen den DLR mittels des Endpoints GET /sms/{id} (id - SMS id) ab und prüfen den Parameter dlr_code

Beschreibung der Zustellberichte (Parameter dlr_code):

Status code Beschreibung
0 NONE: Es liegt kein Zustellbericht vor
1 DELIVERY_OK: Die Nachricht wurde erfolgreich auf dem Endgerät zugestellt
2 DELIVERY_QUEUE: Die Nachricht wurde zwischengespeichert bis zur Zustellung
4 DELIVERY_SUBMIT_ACK: Die Nachricht befindet sich in der Zustellung
8 DELIVERY_EXPIRED: Die Nachricht konnte innerhalb eines spezifischen Zeitfensters nicht zugestellt werden. Die Zielrufnummer ist z.B. nicht im Netz registriert.
16 DELIVERY_REJECTED: Die Nachricht wurde abgelehnt. Die Nummer kann ungültig sein oder Zielnummer oder Inhalt der SMS wurden vom Netzbetreiber blockiert.

Kodierung und Zeichenzahl

Grundsätzlich muss der SMS Text UTF-8 Encoded an den Gateway übertragen werden. Sie haben dabei die Möglichkeit über den Parameter „encoding“ zu entscheiden, ob Sie eine normale 7 bit oder UCS-2 SMS verschicken wollen.

GSM 7 bit Standard-Zeichensatz (GSM 03.38)

Das Basis Zeichensatz enthält alle Zeichen die bei einer normalen 7 bit SMS als 1 Zeichen übertragen werden können. Die Zeichen des erweiterten Zeichensatzes können ebenfalls übertragen werden, benötigen aber jeweils 2 Zeichen für die Übertragung. SMS welche mit dem GSM Zeichensatz übermittelt werden, können 160 Zeichen enthalten bzw. aus mehre-ren verketteten SMS mit jeweils 153 Zeichen bestehen.

Basic Character Set

0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70
0x00 @ Δ SP 0 ¡ P ¿ p
0x01 £ _ ! 1 A Q a q
0x02 $ Φ " 2 B R b r
0x03 ¥ Γ # 3 C S c s
0x04 è Λ ¤ 4 D T d t
0x05 é Ω % 5 E U e u
0x06 ù Π & 6 F V f v
0x07 ì Ψ ' 7 G W g w
0x08 ò Σ ( 8 H X h x
0x09 Ç Θ ) 9 I Y i y
0x0A LF Ξ * : J Z j z
0x0B Ø ESC + ; K Ä k ä
0x0C ø Æ , < L Ö l ö
0x0D CR æ - = M Ñ m ñ
0x0E Å ß . > N Ü n ü
0x0F å É / ? O § o à
  • LF ist ein Zeilenumbruch.
  • CR is a Carriage Return control, or filler.
  • ESC is an Escape control.
  • SP ist ein Leerzeichen.

Basic Character Set Extension

0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70
0x00
0x01
0x02
0x03
0x04 ^
0x05
0x06
0x07
0x08 {
0x09 }
0x0A FF
0x0B SS2
0x0C [
0x0D CR2 ~
0x0E ]
0x0F |
  • FF is a Page Break control. If not recognized, it shall be treated like LF.
  • CR2 is a control character. No language specific character shall be encoded at this position.
  • SS2 is a second Single Shift Escape control reserved for future extensions.

UCS-2 (Unicode SMS)

Mit UCS-2 können 1.112.064 Zeichen und damit alle verbreiteten Schriften dargestellt werden. Jedes Zeichen wird einfach berechnet, Unicode SMS können pro SMS jedoch nur aus 70 Zeichen bestehen, bzw. aus mehreren verketteten SMS mit jeweils 67 Zeichen bestehen.

Verkettete SMS (Concatenated SMS)

Aus technischen Gründen können mit einer GSM-SMS nur 160 Zeichen Text (Unicode 70 Zeichen Text) übertragen werden. Wenn Sie eine SMS mit mehr Zeichen versenden, dann versenden Sie eine so genannte concatenated SMS. Bei überlangen Kurzmitteilun-gen/Multi-SMS (Concatenated SMS, Long SMS), werden längere Texte aufgeteilt und einzeln versendet und jeder einzelne Teil als separate Kurzmitteilung abgerechnet. Das Empfangsgerät setzt die Teile dann wieder zu einem zusammenhängenden Text zusammen. Damit dem Gerät die Verknüpfung der SMS angezeigt werden kann, werden 7 Zeichen (bzw. 3 bei Unicode) benötigt, Ihnen stehen damit bei einer überlangen SMS nur noch 153 Zeichen (bzw. 67 bei Unicode) für Ihren Text zur Verfügung.

Inbound SMS und Antwort-SMS

Inbound SMS und Antwort SMS:

Sie können eingehende SMS (mobile originated - SMS-MO) per Push auf ein Script auf Ihrem Web-Server gesendet bekommen. Eingehende SMS können Sie für Ihre individuelle Inbound Rufnummer erhalten. Sie können diese im Web-Account unter Einstellungen und Inbound Nummer bestellen. Ebenfalls können Sie kostenlos Antworten auf nach Deutschland verschickte Economy SMS erhalten.

Sie können für jede Rufnummer einen individuellen Endpoint (HTTPS oder Mail) angeben. Alternativ können Sie auch alle eingehenden Nachrichten mittels unseres Ereignisbenachrichtigungsdienstes erhalten.

Push-Service bedeutet, dass unser Gateway Daten an ein Skript auf Ihrem Webspace überträgt. Bei Rückgabe eines HTTP Status Codes < 200 or >= 300, wird unser System automatisch drei weitere Zustellversuche unternehmen. Die Antwort Ihres Skripts wird nicht berücksichtigt, daher müssen Sie Ihr Skript überwachen. Im Falle von Störungen erfolgt keine Benachrichtigung durch uns. Die URL für alle Push-Dienste können Sie in Ihrem LOX24-Webaccount (Einstellungen -> API Einstellungen) eingeben. Alternativ können Sie die Push-Dienste auch per normaler E-Mail erhalten.

Inbound SMS werden als HTTP GET mit den Parametern sender_id für die Rufnummer des Absenders, text für den Nachrichtentext und time als Unixtimestamp für die Uhrzeit des SMS Eingangs. Bei den Antwort-SMS auf Economy SMS erhalten Sie außerdem uuid zur Zurodnung zur ursprünglich versendeten SMS. Bei einer Inbound Rufnummer erhalten Sie mit phone die Inbound Rufnummer und mit id die ID der eingehenden SMS.

Inbound SMS per Mail enthält ein JSON Objekt mit den gleichen Parametern.

Parameter Typ Beschreibung
id integer Identifikations-ID für Inbound-SMS (nicht bei Economy Antwort-SMS)
phone string Rufnummer der Inbound Rufnummer (nicht bei Economy Antwort-SMS)
sender_id string Absenderrufnummer der eingehenden SMS
text string Nachrichtentext
time integer Uhrzeit zu der die SMS bei LOX24 eingegangen ist
uuid UUID Zuordnung zur ursprünglich versendeten SMS (optional)

Kannel API (emulation)

Einleitung

In dieser Anleitung zeigen wir Ihnen wie Sie unsere SMS API mit Ihrem Kannel Client nutzen können, um SMS über Kannel an uns zu schicken.

Wenn Sie bereits Kannel für Ihre SMPP Verbindungen nutzen, können Sie LOX24 ganz einfach als zusätzliche Anbindung hinzufügen. Es sind keine Änderungen an Kannel notwendig, lediglich die Konfiguration wird um LOX24 ergänzt.

Support: berlin@lox24.eu

API Key

Um mit Kannel SMS zu verschicken benötigen Sie den API-Key. In Ihrem Web-Account erstellen Sie einen Schlüssel vom Typ 'Kannel API'. Gehen Sie in die "Einstellungen" -> "API Einstellungen" und klicken Sie auf den Button "API Key erstellen". Der Name ist beliebig, als Version wählen Sie "Kannel API".

Account page and API key

Konfiguration

Sie haben zwei Möglichkeiten SMS mit Kannel zu verschicken:

  • wir senden die Zustellberichte (DLR) direk an Sie zurück
  • wir senden die Zustellberichte (DLR) an Kannel zurück, was diese dann wie von Ihren SMPP Verbindungen gewohnt an Sie weiterleitet

Hinweis: Mehr über die Zustellberichte (DLR) im Allgemeinen können Sie hier nachlesen:

Zustellberichte direkt an Ihren Endpoint

Die LOX24 API wird die Zustellberichte ohne Umweg über Kannel direkt an die von Ihnen hinterlegte URL oder Mail Adresse senden.

Ergänzen Sie Ihre Kannel-Konfiguration wie folgt:

group = smsc
smsc = http
system-type = kannel
smsc-id = "lox24"
allowed-smsc-id = "lox24"
port = 10443
send-url = "https://lox24.eu/api/kannel/{SERVICE_CODE}.php"
smsc-username = "{USER_ID}"
smsc-password = "{API_KEY}"
max-sms-octets = 1530

Wobei:

  • SERVICE_CODE - der Name des SMS Typs in Kleinbuchstaben, z.B. 'text2speech', 'direct' etc.
  • USER_ID - Ihre Account ID (Kunden-Nr.), identisch mit der ID für den Login unter account.lox24.eu
  • API_KEY - der API Schlüssel vom Typ 'API Kannel'. Hier Können Sie sehen wir Sie diesen erstellen.

Zustellberichte zurück an Kannel

Wir senden die Zustellberichte zurück an Kannel. Kannel leitet diese dann wie von Ihnen konfiguriert an Sie weiter.

Ergänzen Sie Ihre Kannel-Konfiguration wie folgt:

  group = smsc
  smsc = http
  system-type = kannel
  smsc-id = "lox24"
  allowed-smsc-id = "lox24"
  port = 10443
  send-url = "https://lox24.eu/api/kannel/{SERVICE_CODE}.php"
  smsc-username = "{USER_ID}"
  smsc-password = "{API_KEY}"
  dlr-url = "http://youhosthere.com:10443/?username={USER_ID}&password={API_KEY}"
  connect-allow-ip = "127.0.0.1;213.133.127.70;116.203.64.153;85.10.245.*"
  max-sms-octets = 1530

Wobei:

  • SERVICE_CODE - der Name des SMS Typs in Kleinbuchstaben, z.B. 'text2speech', 'direct' etc.
  • USER_ID - Ihre Account ID (Kunden-Nr.), identisch mit der ID für den Login unter account.lox24.eu
  • API_KEY - der API Schlüssel vom Typ 'API Kannel'. Hier Können Sie sehen wir Sie diesen erstellen.
  • yourhostthere.com:10443 - Die Web-Adresse Ihres Kannel Clients ist.

Weitere Hinweise

LOX24 Zustellberichte

Falls Sie in den API-Einstellungen einen API v2 Status URL/E-mail Endpoint im Web-Account konfiguriert haben, können Sie auf dlr-url verzichten und die Zustellberichte in der gleichen Form erhalten wie bei einer normalen SMS über unsere API v2. Mehr hierzu hier.

SMSC port

Im Konfigurationsbeispiel haben wir den Port 10443 genutzt. Sie können aber jeden beliebigen Port nutzen. Wir empfehlen Ihnen Ihre Firewall entsprechend zu konfigurieren, um nur Anfragen des LOX24 SMS Servers zuzulassen (116.203.64.153,213.133.127.70,85.10.245.*).

Unterstützte Variablen DLR Url

Die LOX24 Kannel API unterstüzt für die DLR Url die folgenden Variablen:

  • %d - Kannel report type (integer):

    • 1: Delivered to phone
    • 2: Non-Delivered to Phone
    • 4: Queued on SMSC
    • 8: Delivered to SMSC
    • 16: Non-Delivered to SMSC
  • %q - Die international Rufnummer (E.164), welche die Nachricht erhält.

  • %T - Die Uhrzeit des Zustellberichts als Unix Timestamp.

Hinweis: Sie können weitere Variablen verwenden, wir garantieren aber nicht die ordnungsgemäße Funktionsweise.

Parameter

from

(required)

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.

to

(required)

Zielrufnummer (international)

text

(required)

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.

coding

(optional)

Sie können SMS mit dem Parameter 'coding' verschicken:

0 - GSM 03.38 (default), 1 - 8-bit or 2 - UCS-2 encoding.

Wir verarbeiten 8-bit und UCS-2 identisch als Unicode SMS.

dlr-url

(optional)

Geben Sie eine URL an, an welche Sie die Zustellberichte von Kannel gesendet bekommen möchten. Falls Sie den Parameter nicht übergeben, nutzen wir den API v2 DLR endpoint Ihrer API Konfiguration (falls vorhanden).

deferred

(optional)

Können Sie nutzen, um die SMS zeitversetzt in der Zukunft zu verschicken. Die Angabe erfolgt in Minuten. Falls der Wert leer bleibt, wird die SMS sofort verschickt.

Beispiel request

Dieses Beispiel zeigt, wie Sie eine SMS an Ihre Kannel Installtion senden können. Die smsbox ist in diesem Beispiel auf dem lokalen Server und Port 9001.

http://127.0.0.1:9001/cgi-bin/sendsms?dlr-url=http://yourhost.com/dlr_test.php?status=%d%26time=%T%26q=%q%26customid=1234567&from=sender&password=test1&smsc=lox24&text=test%20message&to=+49751234567&username=test1&coding=0

Empfehlung

Ergänzen Sie die DLR url mit einem individuellen Parameter für Ihre eigene Message-ID, in unserem Beispiel ist dies customid = 1234567.

SSML und Spracherkennung

Spracherkennung

Die Sprache Ihrer Nachricht wird automatisch erkannt wenn der Wert voice_lang ist null. Es gelten folgende Regeln:

Deutsch (DE)

Wenn keine Standardsprache definiert ist und die Zielrufnummer mit folgender Vorwahl beginnt, senden wir die SMS in Deutsch: '+49', '+41', '+43', '+79'.

Spanisch (ES)

Wenn keine Standardsprache definiert ist und die Zielrufnummer mit folgender Vorwahl beginnt, senden wir die SMS in Spanisch: '+52', '+57', '+34', '+54', '+51', '+58', '+56', '+593', '+502', '+53', '+591', '+504', '+595', '+503', '+505', '+506', '+507', '+598', '+240'.

SSML Support

Die API unterstützt jetzt einige Funktionen von [SSML (Speech Synthesis Markup Language)] (https://en.wikipedia.org/wiki/Speech_Synthesis_Markup_Language) für die erweiterte Formatierung von Sprachnachrichten.

Unterstützte Funktionen

Verfügbare Tags
  • <break> - Pausen in die Ansage einfügen
  • <say-as> - Aussprache des Textes kontrollieren

Tag Spezifikationen

<break> Tag
  • Zweck: Pausen zwischen Wörtern oder Sätzen einfügen
  • Attribute: time (z. B. „1s“, „500ms“)
  • Preisgestaltung: 1 Sekunde Pause entspricht 2 Zeichen für die Rechnungsstellung
<say-as> Tag
  • Zweck: Kontrollieren, wie der Text interpretiert und gesprochen wird
  • Attribute:
    • interpret-as="characters" - Text Buchstabe für Buchstabe buchstabieren
  • Hinweis: Derzeit wird nur der Wert "characters" unterstützt.

Usage

Umschließen Sie den Inhalt Ihrer Nachricht mit dem <speak> Root-Element:

<speak>
  Your verification code is <say-as interpret-as="characters">A1B2C3</say-as>.
  <break time="1s"/>
  Please enter it now.
</speak>

Email to SMS

SMS per E-Mail

Sie können SMS-Nachrichten auf zwei verschiedene Arten per E-Mail versenden: Sie können eine einzelne SMS an eine bestimmte Telefonnummer senden oder eine SMS an eine Gruppe von Telefonnummern senden.

Mail2SMS an einzelne Nummer

Um eine einzelne SMS zu versenden, sollte die E-Mail wie folgt formatiert werden:

{{user_id}}.{{api_key}}.{{phone}}.{{service_code}}.{{sender_id}}.{{text_source}}.{{encoding}}.{{max_sms_parts}}@mail2sms.lox24.eu

Mail2SMS an mehrere Rufnummern (Gruppen-SMS)

Um eine SMS an Telefonnummern einer bestimmten Gruppe zu senden, verwenden Sie das folgende Format:

{{user_id}}.{{api_key}}.{{group_id}}.{{service_code}}.{{sender_id}}.{{text_source}}.{{encoding}}.{{max_sms_parts}}@email2bulk.lox24.eu
Parameter:
Nr. Name Beschreibung
1 user_id User ID (Ganzzahl), identisch mit der Benutzeranmeldung bei LOX24
2 api_key "Email2SMS"-API-Schlüssel von der API-Schlüssel-Einstellungsseite ("Einstellungen" -> "API-Einstellungen")
3 phone/group_id Bei Einzel-SMS ist dies die Telefonnummer im E.164-Format ohne führendes "+" (z. B. "491701234567"). Bei Gruppen-SMS ist dies die Gruppen-ID, die Sie in Ihrem Web-Konto finden oder über die API abfragen können.
4 service_code Servicecode 'text2speech' oder 'direkt' (Standard).
5 sender_id Absender-ID: eine ganze Zahl von 1 bis 6 (Standardwert 1). Auswahl des Absenders aus den zuvor im Konto gespeicherten Absendern ("Einstellungen" -> "Absenderkennungen") Wenn die Absender-ID nicht gefunden wurde, ist der Standardwert "email2sms".
6 text_source Textquelle: 0 - Betreff und Haupttext (standardmäßig), 1 - nur Betreff, 2 - nur Haupttext
7 encoding Eine ganze Zahl: 0 - normales GSM (Standard), 1 - Unicode, 2 - automatische Erkennung (anhand des gesamten Textes der Anfrage)
8 max_sms_parts Eine ganze Zahl zwischen 1 und 10. Standardwert ist 1. Es gibt eine Begrenzung der Textlänge beim Verarbeiten der E-Mail. Zusätzliche Zeichen werden für die Verkettung in Nachrichten verwendet, die länger als die Standardgrenzen sind.

Mail2SMS Beispiele

Gruppen SMS Beispiele

Senden von SMS an Telefone mit einer Gruppen-ID = 12345 (Mindestparameter)

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345@email2bulk.lox24.eu

SMS an Telefone mit einer Gruppen-ID = 12345 mit dem Dienst 'direct' senden

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct@email2bulk.lox24.eu

Senden Sie SMS an Telefone mit der Gruppennummer 12345 mit dem Dienst 'direct' und der Absenderkennung 2

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2@email2bulk.lox24.eu

Senden Sie SMS an Telefone mit der Gruppennummer 12345 mit dem Dienst 'direct', mit der Absenderkennung 2 und dem Text im Betreff der E-Mail.

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2.1@email2bulk.lox24.eu

Senden von SMS an Telefone mit einer Gruppen-ID = 12345 mit dem Dienst 'direct', mit Absender-ID = 2, mit Text aus dem Betreff der E-Mail und automatischer Erkennung der Kodierung

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2.1.2@email2bulk.lox24.eu
Einzel SMS Beispiele

SMS an eine einzelne Telefonnummer senden "+1234567890" (Mindestparameter)

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890@mail2sms.lox24.eu

SMS an eine einzelne Telefonnummer "+1234567890" mit dem Dienst 'direct' senden

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct@mail2sms.lox24.eu

Senden Sie eine SMS an eine einzelne Rufnummer "+1234567890" mit dem Dienst 'direct' und der Absenderkennung = 2

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2@mail2sms.lox24.eu

Senden Sie eine SMS an eine einzelne Telefonnummer "+1234567890" mit dem Dienst 'direct', mit der Absenderkennung = 2, und dem Text aus dem Betreff der E-Mail

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2.1@mail2sms.lox24.eu

Senden von SMS an eine einzelne Telefonnummer "+1234567890" mit dem Dienst 'direct', mit Absender-ID = 2, mit Text aus dem Betreff der E-Mail und automatischer Erkennung der Kodierung

1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2.1.2@mail2sms.lox24.eu

Fehlerantworten

Die meisten Fehler werden ignoriert, um eine unerwünschte Überflutung zu vermeiden, einschließlich authentifizierungsbezogener Fehler. Bei einigen Fehlern sendet das System jedoch eine JSON-Antwort mit einer Fehlerbeschreibung.

Error JSON

Name Beschreibung
field Fehlerfeld in der Anfrage
description Fehlerbeschreibung
request EMail-Adresse, an die die Anfrage gesendet wurde
Beispiel

{"field":"group_id","description":"Group with id = 12345 was not found!","request":"1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct@email2bulk.lox24.eu"}

Warnung vor E-Mail-Weiterleitung

Bitte beachten Sie, dass die Mail Schnittstelle nicht mit Weiterleitungen funktioniert. Die Mail muss direkt an den Mail2SMS Gateway gesendet werden.

Ereignisbenachrichtigungen

Ereignisbenachrichtigungen

Das Ereignisbenachrichtigungssystem dient als Ersatz für das veraltete System zur Übermittlung von Zustellberichten und eingehenden SMS (diese alten Systeme gelten als veraltet, werden nicht verbessert und werden nicht zur weiteren Verwendung empfohlen).

Mit dem Ereignisbenachrichtigungssystem können Sie Informationen über bestimmte Ereignisse an bestimmte URIs (http oder E-Mail) senden. Sie können das System so anpassen, dass Benachrichtigungen über ein Ereignis an verschiedene URIs gesendet werden. Sie können auch verschiedene Benachrichtigungen an die gleiche URI schicken.

Um die Benachrichtigungen zu konfigurieren, öffnen Sie die Einstellungsseite in Ihrem Web-Account (account.lox24.eu -> Einstellungen -> Benachrichtigungen), klicken Sie auf "Neuen Webhook erstellen" und geben Sie im Feld URI die http-Adresse oder E-Mail ein, an die Sie Benachrichtigungen erhalten möchten. Standardmäßig werden alle möglichen Ereignisse an die angegebene URI gesendet. Wenn Sie nur über bestimmte Ereignisse benachrichtigt werden möchten, markieren Sie das Kästchen neben den Ereignissen, über die Sie benachrichtigt werden möchten.

Wenn Sie zusätzliche Benachrichtigungen wünschen, wiederholen Sie die obige Vorgehensweise. Es können maximal fünf individuelle Benachrichtigungseinstellungen erstellt werden.

Die Ereignisinformationen werden im JSON-Objektformat übermittelt, das für alle Ereignisse das gleiche Format hat und sich nur in den Daten des Ereignisses selbst unterscheidet.

Struktur des Ereignisobjekts

Feld Typ Beschreibung
id string (36 chars) Ereignis ID
api_version string Version der Datenstruktur
name string Ereignis Name, e.g. 'sms.delivery'
created_at integer Unix timestamp des Ereignisses
attempt_total integer Gesamtzahl der Übertragungsvesuche (re-tries).
attempt_number integer Aktueller Übertragungsversuch
data object Ereignisdaten (siehe Liste der Ereignisse)
notification_task_id string (36 chars) ID des Übertragungsversuchs
Beispielereignis
{
    "id": "a3cd6e19-8af2-498d-ad07-c7840f1b4ac8",
    "data": {
        "id": "d6c12ac4-cc7d-11ec-b6da-525400bbb7dc",
        "key_id": 8207,
        "dlr_code": 1,
        "status_code": 100,
        "callback_data": "some data from user's request here"
    },
    "name": "sms.delivery",
    "created_at": 1653378603,
    "api_version": "2022-05-25",
    "attempt_number": 1,
    "attempts_total": 4,
      "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
}

Ereignis-Transportarten

Das Benachrichtigungssystem kann Ereignisinformationen auf zwei Arten senden: HTTPS und E-Mail.

HTTP

Das json wird als Body der http-Anfrage mit der Kopfzeile Content-Type: application/json gesendet. Der Dienst wird weiterhin versuchen, die Anfrage zu senden (in zunehmenden Zeitabständen), bis er eine Antwort mit einem Statuscode >= 200 und < 300 erhält oder die Anzahl der Versuche den im Feld attempt_number angegebenen Wert erreicht.

HINWEIS: Die Antwort Ihres Endpunkt-Skripts wird nicht berücksichtigt, daher müssen Sie Ihr Skript überwachen. Im Falle von Störungen erfolgt keine Benachrichtigung durch uns.

E-Mail

Das json wird als Body der E-Mail mit einem einzigen Versuch von einer E-Mail no-reply@lox24.eu gesendet.

Hosts und IP-Adressen des Dienstes

Warnmeldungen werden von den folgenden Hosts gesendet: 162.55.80.140 und 162.55.80.141. Wenn Sie eine Firewall verwenden, vergessen Sie nicht, diese IP-Adressen auf die Whitelist zu setzen.

Ereignisliste

Release notes

In den Versionshinweisen erfahren Sie, was in der API neu ist. Wie immer begrüßen wir Ihr Feedback.

2.20 (2025-08-20)

Hinzugefügt

  • Antwort-Header – Alle API-Antworten enthalten nun einen eindeutigen X-LOX24-REQUEST-ID-Header für Support- und Tracking-Zwecke.

2.19 (2025-08-15)

Geändert

  • OpenAPI-Spezifikation reorganisiert - Wichtige Umstrukturierung mit mehreren semantischen Fehlern behoben
  • Rendering der Dokumentation - Dynamisches OpenAPI-JSON-Browser-Rendering wurde durch statische kompilierte HTML-Seiten ersetzt

Hinzugefügt

  • Webhooks-Dokumentation - Umfassende Beschreibung der Webhooks und Details zur Implementierung hinzugefügt
  • Neue Webhook-Ereignisse für E-Mail zu SMS Parsing: sms.email.parsing.success und sms.email.parsing.fail

2.18 (2023-10-03)

Neu

2.17 (2023-06-28)

Neu

2.16 (2023-01-09)

Neu

2.15 (2022-10-25)

Neu

2.14 (2022-08-17)

Neu

  • Phone's read-only Eigenschaften subscribed_at, unsubscribed_at und unsubscribed_reason hinzugefügt ( siehe Phone API)

2.13 (2022-08-01)

Neu

2.12 (2022-05-05)

Neu

2.11 (2022-03-31)

New

2.10 (2021-09-23)

Neu

Fixes

  • Die Liste der eingehenden SMS ist standardmäßig nach absteigenden Werten des Feldes received_at geordnet.

2.9 (2021-05-06)

Neu

  • Es wurde die Möglichkeit hinzugefügt, sich mit der neuen Version des API-Schlüssels mit einem einzigen Header X-LOX24-AUTH-TOKEN`` zu authentifizieren. Der Header X-LOX24-AUTH-CLIENT-ID``` ist veraltet und wird nicht mehr empfohlen.

2.8.1 (2021-04-01)

Neu

  • Sprachnachrichten. Die Eigenschaft voice_lang wurde zu SMS und Bulk Anfrage/Antwort Objekten hinzugefügt.

2.8.0 (2021-02-21)

New

  • Temporäre Sperrung von IPs mit falschen Anmeldedaten.

2.7.1 (2021-02-16)

Fixes

2.7 (2020-07-17)

New

Kannel (https://lox24.eu/api/kannel/{service}}).

2.6 (2020-06-23)

New

  • Neue Funktion SMS mit zusätzlichen Daten zu versenden welche an den Endpoint der Zustellberichte zurückgegeben werden.

2.5 (2020-06-10)

Developer

  • Hinzugefügt Beispielcode für Phones und Groups.

2.4 (2020-05-29)

Developer

  • Hinzugefügt Beispielcode in GoLang, Java und Python.

2.3 (2020-05-25)

New

  • Neuer boolean Filter für Abfrage der Massen-SMS GET /bulks nach der Eigenschaft is_dryrun.
  • Neuer Wert für den Zeitstempel der letzten Änderung des Kontostands balance_changed_at für den Endpoint GET /me.

2.2 (2020-04-24)

Neu

  • Neue Endpoints GET /incomings und GET /incomings/{id} um alle Inbound SMS und Antworten abzufragen.
  • Emulation DLR Zustellberichte webhook mittels POST /sms/dryrun.
  • Neuer exact Filter nach key_id bei GET /bulks und GET /sms.

Developer

  • Neue Beispiele in PHP, C# and Javascript für /sms, /bulks und /incomings Endpoints.
  • Neuer Abschnitt Inbound SMS and Reply-SMS für eingehende SMS (SMS-MO).

Fixed

  • Fehler bei der Speicherung der IP-Adresse, des Datums und der Uhrzeit der letzten API-Schlüsselverwendung behoben

2.1 (2020-03-18)

Neu

  • Die Funktion, die Ihnen hilft, bulk sms in nur einer HTTP-Anfrage zu erstellen:
    • mit personalisierten Text aus Daten der Massen-SMS Gruppe
    • mit Vorabberechnung der SMS Kosten
    • schnelle asynchrone Bearbeitung Ihrer Sendung
    • Möglichkeit die Sendung auch während der Verarbeitung noch abzubrechen
  • Neuer Endpoibt POST /groups/{id}/phones/batch
    • mehrere Rufnummern einer Gruppe gleichzeitig hinzufügen POST /groups/{id}/phones
  • Neuer Filter GET /sms nach dem Parameter bulk
  • Neuer Filter GET /bulks nach dem Parameter source
  • API-Schlüssel-ID-Informationen zu den Antworten sms und bulks hinzugefügt

Fixed

  • Eigenschaft Preis zum SMS-Antwortobjekt hinzugefügt
  • Beschreibung der Berechtigungsparameter in der API-Dokumentation

2.0-beta (2019-12-15)

Neu

  • API v2.0 wurde in Übereinstimmung mit Industriestandards entwickelt, um die Integration so einfach wie möglich zu gestalten. Darüber hinaus können Sie jetzt mit einer einzigen Abfrage große Mengen an SMS versenden und jederzeit detaillierte Informationen über die Nachrichten abrufen.

  • Die umfangreiche Gruppenfunktionalität ermöglicht es Ihnen, Ihre Mailinglisten in unserer Hochleistungs-Cloud zu verwalten und damit eigene Ressourcen zu sparen. All dies ist nach wie vor konform mit den europäischen Datenschutzstandards und dem deutschen Telekommunikationsgesetz.

Developer

Sie finden die neue API-Beschreibung unter https://doc.lox24.eu/