Download OpenAPI specification:
En estas páginas encontrará nuestra documentación para la transmisión de mensajes mediante la pasarela SMS LOX24. La documentación le ayuda a integrar nuestra API SMS en sus propias aplicaciones y, por tanto, a enviar y recibir mensajes SMS. Encontrará nuestra API SMS en https://api.lox24.eu. Para acceder a las distintas funciones. Por ejemplo, https://api.lox24.eu/me para consultar su cuenta de cliente y https://api.lox24.eu/sms para enviar un SMS. Todos los puntos finales requieren autenticación mediante encabezado HTTP.
El tipo de contenido de las solicitudes POST y PUT puede establecerse como application/json
o multipart/form-data
(en puntos finales con carga de archivos).
Cada respuesta de la API incluye un identificador de solicitud único en el encabezado X-LOX24-REQUEST-ID
.
Este identificador alfanumérico de 32 caracteres se genera para cada solicitud y se puede utilizar
con fines de asistencia técnica al informar de problemas o realizar un seguimiento de llamadas API específicas.
La mayoría de las solicitudes/respuestas de fehcha y hora are unix timestamps (integer).
Si se reciben más de tres solicitudes desde una dirección IP con datos de autenticación incorrectos en un minuto, todas las solicitudes posteriores desde esta IP recibirán una respuesta con el estado 429 (Demasiadas solicitudes) en los diez minutos siguientes.
Todos los puntos finales requieren que esté autenticado. Para autenticarse, deberá crear un token de API desde su cuenta web (http://account.lox24eu "Ajustes" y "Ajustes API"). Una vez que tengas tu API Key puedes pasarla como cabecera HTTP de esta forma:
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"
}'
También seguimos soportando la versión antigua de autenticación con dos cabeceras "X-LOX24-CLIENT-ID" y "X-LOX24-AUTH-TOKEN".
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'
Nunca compartas tus claves secretas. Manténgalas guardadas y seguras. Si una clave se publica involuntariamente, puede desactivarla o eliminarla en cualquier momento en su cuenta web (https://account.lox24.eu) en "Configuración" y "Configuración de la API".
Usuario es una interfaz de asistencia, por ejemplo para consultar el saldo de la cuenta o la línea de crédito. Esto puede ser útil para determinar si todavía hay crédito suficiente para enviar más SMS.
Con esta interfaz, puede consultar el saldo de su cuenta. Si utiliza una obtendrá el saldo disponible (sin IVA). Si tiene una cuenta de pospago, obtendrá su límite de crédito de sms restante. La respuesta a la consulta también contiene información sobre tus servicios SMS disponibles y tus grupos.
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/me \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "id": 1,
- "currency": "EUR",
- "balance_changed_at": 0,
- "is_text_deleted": true,
- "balance_amount": 0,
- "services": [
- "economy"
], - "groups": {
- "24512": "/groups/24512",
- "24513": "/groups/24513",
- "24519": "/groups/24519"
}
}
El punto final sms se utiliza para enviar SMS individuales. Esto incluye los SMS normales, pero también el envío en seco con fines de prueba. Además, hay una serie de funciones para consultar los SMS enviados, borrar SMS o detener el envío.
Si no quieres enviar SMS individuales, sino enviar SMS masivos a través de la API, entonces el endpoint "bulks" es relevante.
El evento 'sms.delivery' se activa cuando se producen cambios en el dlr_code
. Esto te permite saber si un SMS se ha entregado correctamente, ha sido rechazado o aún se está entregando.
Cada SMS tiene un código de informe de entrega Tipos de transporte de acontecimientos
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "sms.delivery" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
Evento enviado cuando cambia el estado de entrega del SMS
{- "id": "a3cd6e19-8af2-498d-ad07-c7840f1b4ac8",
- "api_version": "2022-05-25",
- "name": "sms.delivery",
- "created_at": 1653378603,
- "attempt_total": 4,
- "attempt_number": 1,
- "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"
}, - "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
}
El evento 'sms.delivery.dryrun' utiliza por una emulación de envío de SMS.Véase Simular el envío de un SMS (para pruebas).
Cada SMS tiene un código de informe de entrega (DLR).
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "sms.delivery.dryrun" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
{- "id": "string",
- "api_version": "2022-05-25",
- "name": "sms.delivery.dryrun",
- "created_at": 0,
- "attempt_total": 4,
- "attempt_number": 1,
- "data": {
- "id": "string",
- "key_id": 1,
- "dlr_code": 1,
- "status_code": 0,
- "callback_data": "string"
}, - "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
}
Se activa cuando el correo electrónico a SMS se analiza correctamente
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "sms.email.parsing.success" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
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": {
- "sms": [
- {
- "uuid": "f8a34ce6-ee9f-33ae-d8fc-747622ddd9fe",
- "to": "+4915123456789",
- "text": "Hello, this is your SMS message content parsed from email."
}
], - "email": {
- "id": "email-456",
- "from": "sender@example.com",
- "to": "sms@your-domain.com",
- "subject": "SMS Request",
- "body": "Send SMS to +4915123456789: Hello, this is your SMS message content parsed from email."
}
}, - "notification_task_id": "5590fa05-fb88-6fc0-bf3b-4d32f63dd863"
}
Se activa cuando falla el análisis de correo electrónico a SMS
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "sms.email.parsing.fail" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
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": {
- "field": "recipient",
- "description": "Invalid phone number format",
- "email": {
- "id": "email-789",
- "from": "sender@example.com",
- "to": "sms@your-domain.com",
- "subject": "SMS Request",
- "body": "Send SMS to invalid-phone: Test message"
}
}, - "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
}
Obtener la lista de mensajes del buzón, ordenados por el campo created_at
en orden descendente. El buzón contiene todos los SMS enviados, no enviados y terminados. También puede ordenar opcionalmente según el precio o la hora de transmisión al operador de red. También tiene la opción de transferir diferentes criterios de búsqueda para limitar la salida de los mensajes del buzón.
page | integer Default: 1 Página actual |
_order[created_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por marca de tiempo cuando se creó la entidad |
_order[gateway_sent_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por fecha y hora de transmisión del mensaje a la red móvil |
is_sent | boolean Boolean filtrar SMS por el |
is_unicode | boolean Boolean filtrar SMS por el |
uuid | string Buscar un SMS por el identificador único |
uuid[] | Array of strings Buscar muchos SMS por los identificadores únicos |
iso2 | string Exact filtrar los SMS según el país del telefono (ISO 3166-1 alpha-2) |
iso2[] | Array of strings Exact filtrar SMS por países del teléfono (ISO 3166-1 alpha-2) |
dlr_code | integer Exact filtrar SMS por el estado del informe de entrega |
dlr_code[] | Array of integers Exact filtrar SMS por los estados del informe de entrega |
status_code | integer Exact filtrar SMS por el código de estado |
status_code[] | Array of integers Exact filtrar SMS por los códigos de estado |
gateway_sent_at | integer Exact filtrar SMS por la fecha y hora de envío a la pasarel |
gateway_sent_at[] | Array of integers Exact y range filtrar SMS por marcas de tiempo de envío a pasarela |
delivery_at | integer Exact filtrar SMS por la fecha y hora de entrega |
delivery_at[] | Array of integers Exact y range filtrar SMS por las marcas de tiempo de entrega |
created_at | integer Exact filtrar entidades por la fecha de creación |
created_at[] | Array of integers Exact y range filtrar entidades por las marcas de tiempo de creación |
chars_count | integer Range filtrar SMS por el número de caracteres del mensaje |
chars_count[] | Array of integers Exact y range filtrar SMS por el número de caracteres del mensaje |
parts_count | integer Exact filter SMS por el recuento de partes del mensaje |
parts_count[] | Array of integers Exact and range filtrar SMS por el recuento de partes del mensaje |
bulk | string Exact filtrar SMS por el Bulk |
bulk[] | Array of strings Exact y range filtrar SMS por el Bulk |
source | integer Exact filtrar SMS por las fuentes |
source[] | Array of integers Exact y range filtrar SMS por las fuentes |
text | string Partial filtro de texto sin distinción entre mayúsculas y minúsculas SMS por el texto del mensaje |
phone | string Partial text filter SMS by the phone number |
sender_id | string Partial texto Filtro de SMS sin distinción entre mayúsculas y minúsculas por el número o el texto del remitente |
ip | string Partial filtro de texto SMS por la IP que creó el mensaje |
key_id | integer Exact filtrar entidades por la clave API utilizada |
key_id[] | Array of integers Exact filtrar entidades por las claves API utilizadas |
callback_data | string Exact filrar por SMS |
callback_data[] | Array of strings Exact filtrar por SMS |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/sms \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@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"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Envíe un mensaje corto enviando una solicitud POST que incluya todos los datos necesarios del mensaje como texto y sender-ID.
The new sms resource
text required | string (property.sms.text) El texto del mensaje puede tener una longitud de hasta 1530 caracteres. Con un SMS Unicode, la longitud máxima de caracteres se reduce a 670 caracteres. La codificación interna es UTF-8. |
sender_id required | string (property.messages.sender_id) ^(\+?[1-9]\d{0,14}|[a-zA-Z0-9 ]{1,11})$ ID del remitente del mensaje. Puede ser un número (hasta 15 dígitos) o un texto (hasta 11 caracteres). Si se trata de un número, utilice preferentemente el formato de número de teléfono E.164. Un remitente de texto puede contener espacios pero no otros caracteres especiales. Tenga en cuenta que algunos países no admiten identificadores de remitente propios o exigen un registro previo. Nuestro sistema intenta detectar automáticamente si un ID de remitente es un texto o un número de teléfono. Evite los caracteres especiales en un número e introdúzcalo de la misma forma que se marcaría en un teléfono. |
phone required | string (property.common.phone_number) [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$ Número de destinatario (internacional):
Si el número no está en formato E.164, el servicio lo convertirá basándose en la dirección del usuario. Para evitar problemas con la conversión, utilice preferentemente E.164. |
property.messages.delivery_at (integer) or null | |
source | integer or null (property.messages.source) Para realizar un mejor seguimiento de tus SMS en la factura detallada, puedes utilizar el parámetro de origen para asignar un ID numérico (entero) a tus SMS. |
is_unicode | boolean or null (property.messages.is_unicode) Define si desea enviar un SMS GSM 03.38 normal (160 caracteres) o un texto Unicode para transferir caracteres como cirílico, árabe, chino y japonés (70 caracteres). Si no define este parámetro (null), nuestro sistema determinará automáticamente la codificación correcta para su texto.
|
(property.messages.voice_lang (string or null)) or null | |
callback_data | string or null (property.common.callback_data) <= 36 characters Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR). |
property.messages.service_code (any) or null | |
property.messages.is_text_deleted (boolean) or null |
Ejemplo de un mensaje SMS simple con solo campos obligatorios
{- "text": "¡Hola! Este es un SMS de prueba.",
- "sender_id": "+491701234567",
- "phone": "+14155552671"
}
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"
}
Este endpoint no envía SMS sino que emula ese proceso. Puede utilizarse para obtener el precio del SMS o probar el software durante la integración. La propiedad uuid
será siempre igual a 11111111-2222-3333-4444-55555555555
. Los datos no se guardarán en el servicio LOX24, por lo que no se puede extraer información del SMS mediante GET /sms/{id}
. DLR report se envía de la misma manera que para SMS reales, si la URL/email DLR fue configurado antes.
The new sms resource
text required | string (property.sms.text) El texto del mensaje puede tener una longitud de hasta 1530 caracteres. Con un SMS Unicode, la longitud máxima de caracteres se reduce a 670 caracteres. La codificación interna es UTF-8. |
sender_id required | string (property.messages.sender_id) ^(\+?[1-9]\d{0,14}|[a-zA-Z0-9 ]{1,11})$ ID del remitente del mensaje. Puede ser un número (hasta 15 dígitos) o un texto (hasta 11 caracteres). Si se trata de un número, utilice preferentemente el formato de número de teléfono E.164. Un remitente de texto puede contener espacios pero no otros caracteres especiales. Tenga en cuenta que algunos países no admiten identificadores de remitente propios o exigen un registro previo. Nuestro sistema intenta detectar automáticamente si un ID de remitente es un texto o un número de teléfono. Evite los caracteres especiales en un número e introdúzcalo de la misma forma que se marcaría en un teléfono. |
phone required | string (property.common.phone_number) [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$ Número de destinatario (internacional):
Si el número no está en formato E.164, el servicio lo convertirá basándose en la dirección del usuario. Para evitar problemas con la conversión, utilice preferentemente E.164. |
property.messages.delivery_at (integer) or null | |
source | integer or null (property.messages.source) Para realizar un mejor seguimiento de tus SMS en la factura detallada, puedes utilizar el parámetro de origen para asignar un ID numérico (entero) a tus SMS. |
is_unicode | boolean or null (property.messages.is_unicode) Define si desea enviar un SMS GSM 03.38 normal (160 caracteres) o un texto Unicode para transferir caracteres como cirílico, árabe, chino y japonés (70 caracteres). Si no define este parámetro (null), nuestro sistema determinará automáticamente la codificación correcta para su texto.
|
(property.messages.voice_lang (string or null)) or null | |
callback_data | string or null (property.common.callback_data) <= 36 characters Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR). |
property.messages.service_code (any) or null | |
property.messages.is_text_deleted (boolean) or null |
Ejemplo de un mensaje SMS simple con solo campos obligatorios
{- "text": "¡Hola! Este es un SMS de prueba.",
- "sender_id": "+491701234567",
- "phone": "+14155552671"
}
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"
}
Con esta API puede eliminar mensajes SMS que aún no se hayan enviado o interrumpir el proceso de envío. Para los mensajes SMS programados, la hora de transmisión debe ser futura. Si el SMS no está programado, la transmisión al proveedor de telefonía móvil puede tardar unos segundos, lo que posiblemente le permitirá detener la transmisión en casos excepcionales.
_order[created_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por marca de tiempo cuando se creó la entidad |
_order[gateway_sent_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por fecha y hora de transmisión del mensaje a la red móvil |
is_sent | boolean Boolean filtrar SMS por el |
is_unicode | boolean Boolean filtrar SMS por el |
uuid | string Buscar un SMS por el identificador único |
uuid[] | Array of strings Buscar muchos SMS por los identificadores únicos |
iso2 | string Exact filtrar los SMS según el país del telefono (ISO 3166-1 alpha-2) |
iso2[] | Array of strings Exact filtrar SMS por países del teléfono (ISO 3166-1 alpha-2) |
dlr_code | integer Exact filtrar SMS por el estado del informe de entrega |
dlr_code[] | Array of integers Exact filtrar SMS por los estados del informe de entrega |
status_code | integer Exact filtrar SMS por el código de estado |
status_code[] | Array of integers Exact filtrar SMS por los códigos de estado |
gateway_sent_at | integer Exact filtrar SMS por la fecha y hora de envío a la pasarel |
gateway_sent_at[] | Array of integers Exact y range filtrar SMS por marcas de tiempo de envío a pasarela |
delivery_at | integer Exact filtrar SMS por la fecha y hora de entrega |
delivery_at[] | Array of integers Exact y range filtrar SMS por las marcas de tiempo de entrega |
created_at | integer Exact filtrar entidades por la fecha de creación |
created_at[] | Array of integers Exact y range filtrar entidades por las marcas de tiempo de creación |
chars_count | integer Range filtrar SMS por el número de caracteres del mensaje |
chars_count[] | Array of integers Exact y range filtrar SMS por el número de caracteres del mensaje |
parts_count | integer Exact filter SMS por el recuento de partes del mensaje |
parts_count[] | Array of integers Exact and range filtrar SMS por el recuento de partes del mensaje |
bulk | string Exact filtrar SMS por el Bulk |
bulk[] | Array of strings Exact y range filtrar SMS por el Bulk |
source | integer Exact filtrar SMS por las fuentes |
source[] | Array of integers Exact y range filtrar SMS por las fuentes |
text | string Partial filtro de texto sin distinción entre mayúsculas y minúsculas SMS por el texto del mensaje |
phone | string Partial text filter SMS by the phone number |
sender_id | string Partial texto Filtro de SMS sin distinción entre mayúsculas y minúsculas por el número o el texto del remitente |
ip | string Partial filtro de texto SMS por la IP que creó el mensaje |
key_id | integer Exact filtrar entidades por la clave API utilizada |
key_id[] | Array of integers Exact filtrar entidades por las claves API utilizadas |
callback_data | string Exact filrar por SMS |
callback_data[] | Array of strings Exact filtrar por SMS |
curl -X POST https://api.lox24.eu/sms/ops/batch_cancel?uuid=20f39273-0566-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "deleted_sms_count": 0
}
Con esta API puedes borrar cualquier mensaje SMS
_order[created_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por marca de tiempo cuando se creó la entidad |
_order[gateway_sent_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por fecha y hora de transmisión del mensaje a la red móvil |
is_sent | boolean Boolean filtrar SMS por el |
is_unicode | boolean Boolean filtrar SMS por el |
uuid | string Buscar un SMS por el identificador único |
uuid[] | Array of strings Buscar muchos SMS por los identificadores únicos |
iso2 | string Exact filtrar los SMS según el país del telefono (ISO 3166-1 alpha-2) |
iso2[] | Array of strings Exact filtrar SMS por países del teléfono (ISO 3166-1 alpha-2) |
dlr_code | integer Exact filtrar SMS por el estado del informe de entrega |
dlr_code[] | Array of integers Exact filtrar SMS por los estados del informe de entrega |
status_code | integer Exact filtrar SMS por el código de estado |
status_code[] | Array of integers Exact filtrar SMS por los códigos de estado |
gateway_sent_at | integer Exact filtrar SMS por la fecha y hora de envío a la pasarel |
gateway_sent_at[] | Array of integers Exact y range filtrar SMS por marcas de tiempo de envío a pasarela |
delivery_at | integer Exact filtrar SMS por la fecha y hora de entrega |
delivery_at[] | Array of integers Exact y range filtrar SMS por las marcas de tiempo de entrega |
created_at | integer Exact filtrar entidades por la fecha de creación |
created_at[] | Array of integers Exact y range filtrar entidades por las marcas de tiempo de creación |
chars_count | integer Range filtrar SMS por el número de caracteres del mensaje |
chars_count[] | Array of integers Exact y range filtrar SMS por el número de caracteres del mensaje |
parts_count | integer Exact filter SMS por el recuento de partes del mensaje |
parts_count[] | Array of integers Exact and range filtrar SMS por el recuento de partes del mensaje |
bulk | string Exact filtrar SMS por el Bulk |
bulk[] | Array of strings Exact y range filtrar SMS por el Bulk |
source | integer Exact filtrar SMS por las fuentes |
source[] | Array of integers Exact y range filtrar SMS por las fuentes |
text | string Partial filtro de texto sin distinción entre mayúsculas y minúsculas SMS por el texto del mensaje |
phone | string Partial text filter SMS by the phone number |
sender_id | string Partial texto Filtro de SMS sin distinción entre mayúsculas y minúsculas por el número o el texto del remitente |
ip | string Partial filtro de texto SMS por la IP que creó el mensaje |
key_id | integer Exact filtrar entidades por la clave API utilizada |
key_id[] | Array of integers Exact filtrar entidades por las claves API utilizadas |
callback_data | string Exact filrar por SMS |
callback_data[] | Array of strings Exact filtrar por SMS |
#!/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'
{- "deleted_sms_count": 0
}
Obtención de la entidad SMS por el ID (uuid
). Si no se encuentra el SMS, se responderá con el código HTTP 404.
uuid required | string SMS ID ( |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/sms/20f39273-0566-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@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"
}
Eliminar la entidad SMS por el ID (uuid
). La respuesta del endpoint no contiene el cuerpo y tiene el código HTTP 204 si el SMS fue removido o 404 si no existe. Atención. El SMS también se borra de la factura detallada. Por lo tanto, las reclamaciones posteriores quedan excluidas por falta de trazabilidad.
uuid required | string SMS ID ( |
#!/usr/bin/env bash curl -X DELETE https://api.lox24.eu/sms/20f39273-0566-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
La interfaz bulks se utiliza para enviar SMS masivos. Esto incluye la correcta transmisión de SMS masivos a múltiples números de teléfono y/o grupos, pero también el envío en seco. Además, hay una serie de funciones para consultar el estado de un envío masivo o para detener el envío.
Si no quieres enviar SMS masivos, sino enviar SMS individuales a través de la API, entonces el endpoint "sms" es relevante.
El evento bulk.email.parsing.fail
se envía cuando se produce un error en el análisis del correo electrónico.
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "bulk.email.parsing.fail" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
Evento enviado cuando falla el análisis de email masivo
{- "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": {
- "field": "to",
- "description": "Invalid phone number format",
- "email": {
- "id": "email-124",
- "from": "sender@example.com",
- "to": "bulk@your-domain.com",
- "subject": "SMS Bulk Request",
- "body": "Invalid message content"
}
}, - "notification_task_id": "6601ab16-ca99-7fe1-cf4c-5e43f74ee974"
}
El evento bulk.email.parsing.success
se envía al analizar correctamente Email to SMS Bulk
correo electrónico.
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "bulk.email.parsing.success" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
Evento enviado cuando el email masivo se analiza exitosamente
{- "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": {
- "bulk": {
- "id": "f8a34ce6-ee9f-33ae-d8fc-747622ddd9fe",
- "status": 10,
- "created_at": 1653378803
}, - "email": {
- "id": "email-123",
- "from": "sender@example.com",
- "to": "bulk@your-domain.com",
- "subject": "SMS Bulk Request",
- "body": "Message content here"
}
}, - "notification_task_id": "5590fa05-fb88-6fc0-bf3b-4d32f63dd863"
}
Obtener la lista de bultos del buzón, ordenados por el campo created_at
en orden descendente. El buzón contiene todos los SMS enviados, no enviados y terminados. También puede ordenar opcionalmente según el precio o la hora de transmisión al operador de red. También tiene la opción de transferir diferentes criterios de búsqueda para limitar la salida de los mensajes del buzón
page | integer Default: 1 Página actual |
_order[created_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por marca de tiempo cuando se creó la entidad |
_order[delivery_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por fecha y hora en que el mensaje fue/debió ser transmitido a la red móvil |
_order[processed_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por marca de tiempo cuando la entidad fue cambiada por última vez |
_order[msg_total_count] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por los recuentos totales de los SMS relacionados |
text | string Partial filtro de texto sin distinción entre mayúsculas y minúsculas SMS por el texto del mensaje |
sender_id | string Partial texto Filtro de SMS sin distinción entre mayúsculas y minúsculas por el número o el texto del remitente |
status_code | integer Exact filtrar Bulks por el código de estado |
status_code[] | Array of integers Exact filtrar Bulks por los códigos de estado |
created_at | integer Exact filtrar entidades por la fecha de creación |
created_at[] | Array of integers Exact y range filtrar entidades por las marcas de tiempo de creación |
delivery_at | integer Exact filtrar SMS por la fecha y hora de entrega |
delivery_at[] | Array of integers Exact y range filtrar SMS por las marcas de tiempo de entrega |
processed_at | integer Exact filtrar entidades por la fecha y hora de los últimos cambios |
processed_at[] | Array of integers Exact y range filtrar entidades por las marcas de tiempo de los últimos cambios |
msg_total_count | integer Exact filtrar Bultos por el recuento total de los SMS en el bulto |
msg_total_count[] | Array of integers Exact y range filtrar Bulks por los recuentos totales de los SMS relacionados |
source | integer Exact filtrar SMS por las fuentes |
source[] | Array of integers Exact y range filtrar SMS por las fuentes |
key_id | integer Exact filtrar entidades por la clave API utilizada |
key_id[] | Array of integers Exact filtrar entidades por las claves API utilizadas |
is_unicode | boolean Boolean filtrar SMS por el |
is_dryrun | boolean Boolean filtrar Bulks por el campo |
exists[is_unicode] | boolean Boolean y exists filtrar Bulks por el campo |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/bulks \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@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
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Crear una campaña de SMS masivos enviando una solicitud POST con los detalles del mensaje y la información del destinatario.
The new bulks resource
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})$ ID del remitente del mensaje. Puede ser un número (hasta 15 dígitos) o un texto (hasta 11 caracteres). Si se trata de un número, utilice preferentemente el formato de número de teléfono E.164. Un remitente de texto puede contener espacios pero no otros caracteres especiales. Tenga en cuenta que algunos países no admiten identificadores de remitente propios o exigen un registro previo. Nuestro sistema intenta detectar automáticamente si un ID de remitente es un texto o un número de teléfono. Evite los caracteres especiales en un número e introdúzcalo de la misma forma que se marcaría en un teléfono. |
text required | string (property.bulks.text) <= 1785 characters La longitud máxima del texto es de 1785 caracteres. Pero no olvides que el texto final del mensaje puede tener una longitud de hasta 1530 caracteres. Con un SMS Unicode, la longitud máxima de caracteres se reduce a 670 caracteres. La codificación interna es UTF-8. |
phones required | Array of strings or null (property.bulks.phones) [ items [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$ ] Lista de los números (internacionales) de los destinatarios:
Si el número no está en formato E.164, el servicio lo convertirá basándose en la dirección del usuario. Para evitar problemas con la conversión, utilice preferentemente E.164. |
msg_groups | Array of integers or null (property.bulks.msg_groups) Lista de los grupos destinatarios |
is_unicode | boolean or null (property.messages.is_unicode) Define si desea enviar un SMS GSM 03.38 normal (160 caracteres) o un texto Unicode para transferir caracteres como cirílico, árabe, chino y japonés (70 caracteres). Si no define este parámetro (null), nuestro sistema determinará automáticamente la codificación correcta para su texto.
|
property.messages.service_code (any) or null | |
source | integer or null (property.messages.source) Para realizar un mejor seguimiento de tus SMS en la factura detallada, puedes utilizar el parámetro de origen para asignar un ID numérico (entero) a tus SMS. |
(property.messages.voice_lang (string or null)) or null | |
property.messages.is_text_deleted (boolean) or null |
{- "delivery_at": 0,
- "sender_id": "+491701234567",
- "text": "string",
- "phones": [
- "+14155552671"
], - "msg_groups": [
- 0
], - "is_unicode": true,
- "service_code": "direct",
- "source": 0,
- "voice_lang": "DE",
- "is_text_deleted": true
}
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "uuid": "string",
- "delivery_at": 0,
- "sender_id": "+491701234567",
- "text": "string",
- "phones": [
- "+14155552671"
], - "msg_groups": [
- 0
], - "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
}
Este endpoint se utiliza con fines de prueba para emular la creación de un Bulk sin crear realmente SMS y pasarlos al operador de red a cambio de una tarifa.
The new bulks resource
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})$ ID del remitente del mensaje. Puede ser un número (hasta 15 dígitos) o un texto (hasta 11 caracteres). Si se trata de un número, utilice preferentemente el formato de número de teléfono E.164. Un remitente de texto puede contener espacios pero no otros caracteres especiales. Tenga en cuenta que algunos países no admiten identificadores de remitente propios o exigen un registro previo. Nuestro sistema intenta detectar automáticamente si un ID de remitente es un texto o un número de teléfono. Evite los caracteres especiales en un número e introdúzcalo de la misma forma que se marcaría en un teléfono. |
text required | string (property.bulks.text) <= 1785 characters La longitud máxima del texto es de 1785 caracteres. Pero no olvides que el texto final del mensaje puede tener una longitud de hasta 1530 caracteres. Con un SMS Unicode, la longitud máxima de caracteres se reduce a 670 caracteres. La codificación interna es UTF-8. |
phones required | Array of strings or null (property.bulks.phones) [ items [ 4 .. 16 ] characters ^\+[1-9]\d{1,14}$ ] Lista de los números (internacionales) de los destinatarios:
Si el número no está en formato E.164, el servicio lo convertirá basándose en la dirección del usuario. Para evitar problemas con la conversión, utilice preferentemente E.164. |
msg_groups | Array of integers or null (property.bulks.msg_groups) Lista de los grupos destinatarios |
is_unicode | boolean or null (property.messages.is_unicode) Define si desea enviar un SMS GSM 03.38 normal (160 caracteres) o un texto Unicode para transferir caracteres como cirílico, árabe, chino y japonés (70 caracteres). Si no define este parámetro (null), nuestro sistema determinará automáticamente la codificación correcta para su texto.
|
property.messages.service_code (any) or null | |
source | integer or null (property.messages.source) Para realizar un mejor seguimiento de tus SMS en la factura detallada, puedes utilizar el parámetro de origen para asignar un ID numérico (entero) a tus SMS. |
(property.messages.voice_lang (string or null)) or null | |
property.messages.is_text_deleted (boolean) or null |
{- "delivery_at": 0,
- "sender_id": "+491701234567",
- "text": "string",
- "phones": [
- "+14155552671"
], - "msg_groups": [
- 0
], - "is_unicode": true,
- "service_code": "direct",
- "source": 0,
- "voice_lang": "DE",
- "is_text_deleted": true
}
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "uuid": "string",
- "delivery_at": 0,
- "sender_id": "+491701234567",
- "text": "string",
- "phones": [
- "+14155552671"
], - "msg_groups": [
- 0
], - "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
}
Obtener la entidad única Bulk por el ID (uuid
). Si no se encuentra Bulk, se responderá con el código HTTP 404.
id required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... Bulk ID |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "uuid": "string",
- "delivery_at": 0,
- "sender_id": "+491701234567",
- "text": "string",
- "phones": [
- "+14155552671"
], - "msg_groups": [
- 0
], - "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
}
Eliminar la entidad Bulk por el ID . La respuesta del endpoint no contiene el cuerpo y tiene el código HTTP 204 si el SMS fue removido o 404 si no existe. Atención. El Bulk también se borrado de la factura detallada. Por lo tanto, las reclamaciones posteriores quedan excluidas por falta de trazabilidad.
id required | string Bulk ID |
#!/usr/bin/env bash curl -X DELETE https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
Cancelar el procesamiento de Bulk si tiene status_code = 0
(New) o status_code = 5
y relacionados con los mensajes masivos con is_sent = False
id required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... Bulk ID |
#!/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'
{- "@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
}
Obtener información breve sobre el estado de Bulk
id required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... Bulk ID |
#!/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'
{- "@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
}
Esta interfaz permite consultar los SMS entrantes (pull). La lista de todos los SMS entrantes, así como el contenido de un SMS en particular. Tenga en cuenta, sin embargo, que también puede recibir los SMS como push, en cuanto lleguen. La variante push es preferible, ya que no tienes que comprobar si hay SMS entrantes, sino que éstos se envían directamente a tu script.
El evento 'sms.incoming' se envía en un SMS entrante/repuesta (originado en móvil - SMS-MO).
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "sms.incoming" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
Evento enviado cuando se recibe un SMS entrante
{- "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
- "api_version": "2022-05-25",
- "name": "sms.incoming",
- "created_at": 1653378703,
- "attempt_total": 1,
- "attempt_number": 1,
- "data": {
- "id": "e7d23bd5-dd8e-22fd-c7eb-636511ccc8ed",
- "to": "+1234567890",
- "from": "+490987654321",
- "text": "Hello, this is a reply message",
- "received_at": 1653378703,
- "msg_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}, - "notification_task_id": "4489ef94-ef77-5ef9-ae2a-3c21e52cc752"
}
Obtener la lista de SMS entrantes ordenados por el campo received_at
en orden descendente. El buzón contiene todos los SMS enviados, no enviados y terminados. Para las respuestas SMS la propiedad msg_uuid
rellenada por la entidad /sms correspondiente.
page | integer Default: 1 Página actual |
_order[received_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por fecha y hora de recepción del SMS entrante |
text | string Partial filtro de texto sin distinción entre mayúsculas y minúsculas SMS por el texto del mensaje |
from | string Partial filtro de texto que no distingue mayúsculas de minúsculas por número de teléfono del remitente |
to | string Partial filtro de texto sensible a mayúsculas y minúsculas por número de teléfono de entrada |
msg_uuid | string Exact filtrar por ID de SMS inicial |
msg_uuid[] | Array of strings Exact filtrar por ID de SMS inicial |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/incomings \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "uuid": "string",
- "to": "+14155552671",
- "from": "+14155552671",
- "received_at": 0,
- "text": "string",
- "msg_uuid": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Obtención de la entrada de SMS entrantes. El buzón contiene todos los SMS enviados, no enviados y terminados. Para las respuestas SMS, la propiedad 'msg_uuid' se rellena mediante la entidad /sms correspondiente.
uuid required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... ID del mensaje entrante |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/incomings/20f39273-0566-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "uuid": "string",
- "to": "+14155552671",
- "from": "+14155552671",
- "received_at": 0,
- "text": "string",
- "msg_uuid": "string"
}
Borrar un SMS entrante por UUID
uuid required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... ID del mensaje entrante |
#!/usr/bin/env bash curl -X DELETE https://api.lox24.eu/incomings/20f39273-0566-11ea-a637-96000028b339 \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
La función "Grupos" permite crear listas de distribución masiva de SMS. Cada lista de difusión representa un grupo. Las funciones de "Grupos" permiten crear, visualizar, eliminar y exportar las listas de difusión.
Devuelve todos tus grupos (lista de distribución SMS).
page | integer Default: 1 Página actual |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/groups \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@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"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Con este comando creas una lista de correo SMS que se almacena en nuestro sistema para ti. Una lista de correo tiene un nombre, una descripción y cinco columnas adicionales que puedes agregar además del número de teléfono.
The new groups resource
name required | string (property.group.name) [ 1 .. 50 ] characters Nombre del grupo |
description | string or null (property.group.description) <= 255 characters Descripción del grupo |
name_a | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_b | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_c | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_d | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_e | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
object or null | |
deleted_at | string or null <date-time> (property.group.deleted_at) Fecha y hora en que se eliminará el grupo |
id | integer (property.group.id) >= 1 ID del grupo |
count_items | integer (property.group.count_items) >= 0 Cantidad de elementos en el grupo |
{- "name": "string",
- "description": "string",
- "name_a": "string",
- "name_b": "string",
- "name_c": "string",
- "name_d": "string",
- "name_e": "string",
- "phones": {
- "property1": {
- "phone": "string",
- "a": "string",
- "b": "string",
- "c": "string",
- "d": "string",
- "e": "string",
- "callback_data": "string"
}, - "property2": {
- "phone": "string",
- "a": "string",
- "b": "string",
- "c": "string",
- "d": "string",
- "e": "string",
- "callback_data": "string"
}
}, - "deleted_at": "2019-08-24T14:15:22Z",
- "id": 1,
- "count_items": 0
}
{- "@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"
}
Devuelve los datos del grupo específico, como el nombre del grupo y la columna.
id required | integer >= 0 ID del grupo |
#!/usr/bin/env bash curl https://api.lox24.eu/groups/12344 \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@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"
}
Cambiar la configuración de un grupo, como el nombre del grupo o la descripción.
id required | integer >= 0 ID del grupo |
The updated groups resource
name required | string (property.group.name) [ 1 .. 50 ] characters Nombre del grupo |
description | string or null (property.group.description) <= 255 characters Descripción del grupo |
name_a | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_b | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_c | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_d | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
name_e | string or null (property.group.column_name) <= 50 characters Nombre de la columna |
object or null | |
deleted_at | string or null <date-time> (property.group.deleted_at) Fecha y hora en que se eliminará el grupo |
id | integer (property.group.id) >= 1 ID del grupo |
count_items | integer (property.group.count_items) >= 0 Cantidad de elementos en el grupo |
{- "name": "string",
- "description": "string",
- "name_a": "string",
- "name_b": "string",
- "name_c": "string",
- "name_d": "string",
- "name_e": "string",
- "phones": {
- "property1": {
- "phone": "string",
- "a": "string",
- "b": "string",
- "c": "string",
- "d": "string",
- "e": "string",
- "callback_data": "string"
}, - "property2": {
- "phone": "string",
- "a": "string",
- "b": "string",
- "c": "string",
- "d": "string",
- "e": "string",
- "callback_data": "string"
}
}, - "deleted_at": "2019-08-24T14:15:22Z",
- "id": 1,
- "count_items": 0
}
{- "@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"
}
Eliminar el grupo junto con todos los números de teléfono asociados.
id required | integer >= 0 ID del grupo |
#!/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'
Esta interfaz sirve de complemento a los grupos. Mediante los teléfonos puede añadir, eliminar o modificar números de teléfono en su lista de distribución SMS. También es posible exportar el contenido de un grupo a través de esta interfaz.
id | Teléfono | col_A | col_B | col_C | col_D | col_E | callback_data |
---|---|---|---|---|---|---|---|
7848412 | +49123456780 | Nombre | Segundo nombre | Foo | Bar | Zoo | 12345 |
7848413 | +49123456781 | Nombre | Segundo nombre | Foo | Bar | Zoo | 12346 |
7848414 | +49123456782 | Nombre | Segundo nombre | Foo | Bar | Zoo | 12347 |
7848415 | +49123456783 | Nombre | Segundo nombre | Foo | Bar | Zoo | 12348 |
Los nombres de las columnas corresponderán a los valores de los campos nombre_X
del objeto /group
correspondiente.
Si falta el valor por defecto es col_X
, donde X = (a, b, c, d, e).
id required | integer >= 0 ID del grupo |
#!/usr/bin/env bash curl https://api.lox24.eu/groups/7116/file/csv \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
Recupera la colección de Teléfonos por ID de Grupo
id required | integer >= 0 ID del grupo |
#!/usr/bin/env bash curl https://api.lox24.eu/groups/7116/phones \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@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
}
]
}
Crear una entrada con un número de teléfono.
id required | integer >= 0 ID del grupo |
The new phones resource
phone required | string (property.phone.phone) <= 30 characters Número de teléfono |
a | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
b | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
c | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
d | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
e | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
callback_data | string or null (property.common.callback_data) <= 36 characters Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR). |
{- "phone": "string",
- "a": "string",
- "b": "string",
- "c": "string",
- "d": "string",
- "e": "string",
- "callback_data": "string"
}
{- "@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
}
En lugar de enviar múltiples solicitudes, es mejor enviar una sola solicitud con una lista de objetos de Teléfono como cuerpo de la solicitud.
id required | integer >= 0 ID del grupo |
The new groups resource
phone required | string (property.phone.phone) <= 30 characters Número de teléfono |
a | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
b | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
c | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
d | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
e | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
callback_data | string or null (property.common.callback_data) <= 36 characters Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR). |
[- {
- "phone": "string",
- "a": "string",
- "b": "string",
- "c": "string",
- "d": "string",
- "e": "string",
- "callback_data": "string"
}
]
{- "@context": "string",
- "@id": "string",
- "@type": "string",
- "hydra:totalItems": 0,
- "hydra:member": {
- "status": 0,
- "body": {
- "@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
}
}
}
Consultar una entrada con un número de teléfono.
id required | integer >= 0 Identificador del teléfono |
#!/usr/bin/env bash curl https://api.lox24.eu/phones/12344 \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@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
}
Editar una entrada con un número de teléfono.
id required | integer >= 0 Identificador del teléfono |
The updated phones resource
phone required | string (property.phone.phone) <= 30 characters Número de teléfono |
a | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
b | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
c | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
d | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
e | string or null (property.phone.column) <= 1530 characters Datos de columna del teléfono |
callback_data | string or null (property.common.callback_data) <= 36 characters Valor (String) que se envía de vuelta a su endpoint. Por ejemplo, puede pasar su propio ID de esta forma y recibirlo de vuelta con el informe de entrega (DLR). |
{- "phone": "string",
- "a": "string",
- "b": "string",
- "c": "string",
- "d": "string",
- "e": "string",
- "callback_data": "string"
}
{- "@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
}
Eliminar una entrada con un número de teléfono.
id required | integer >= 0 Identificador del teléfono |
#!/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'
LOX24 te permite acortar URLs largas sustituyéndolas por URLs cortas utilizando nuestro dominio l24.pw.
Esto también permite realizar potentes campañas de marketing. Así, se puede enviar un enlace corto único con cada SMS. Esto le permite realizar un seguimiento de cuáles de sus clientes han hecho clic en el enlace. Con estos datos, puede interactuar con los clientes de forma más específica o mejorar sus campañas.
¡Pero eso no es todo! LOX24 también ofrece enlaces cortos especiales que permiten al usuario suscribirse o darse de baja de sus boletines SMS. Esto le permite automatizar el doble opt-in y opt-out de una manera legalmente compatible.
Consulte el capítulo Crear una campaña de enlaces cortos
Hay dos tipos de campañas:
Consulte el capítulo Crear una campaña de formulario de suscripción
Un tipo especial de campaña de enlace corto que redirige al usuario a un formulario de suscripción. También es necesario añadir un identificador de grupo al que se añadirán los números de teléfono de los usuarios que hayan enviado el formulario de suscripción.
Consulte el capítulo Crear una campaña de formulario de baja
Un tipo especial de campaña de enlace corto que redirige al usuario a un formulario de baja. También puede añadir un identificador de grupo del que eliminar los números de teléfono de los usuarios que hayan enviado el formulario de baja. Aunque el grupo no aparezca en la lista al darse de baja, el número del usuario se añadirá a la lista de bloqueados (ver página ).
Por favor, consulte el capítulo Enviar el SMS o Crear el Bulk para la funcionalidad general.
Para enviar un SMS con un enlace corto tienes que poner el siguiente marcador de posición[slink campaing_id]``` en el texto del mensaje, donde
campaing_id`` es el valor del identificador de campaña. Recibirá este valor como valor de retorno cuando cree una campaña. Por supuesto, también puedes consultar el valor de las campañas existentes. Por ejemplo, este es el aspecto que tendría el texto del SMS para una campaña con el ID eGxoGRMq:
Consulte un enlace [slink eGxoGRMq]
Nuestro sistema sustituye el valor del marcador de posición por el enlace correcto para cada destinatario de SMS. También puedes utilizar SMS dry-run mode para comprobar aproximadamente cómo quedará el texto con el enlace y cuál será el precio final del SMS.
(Esta información sólo está disponible para las campañas de tipo Avanzado)
El número de clics en un SMS individual se puede encontrar por SMS id o lista por todos los SMS.
Puede obtener una lista completa de los enlaces cortos generados por todas sus campañas o por alguna campaña.
Existen puntos finales que proporcionan información detallada sobre las solicitudes de los usuarios:
Puede crear una campaña de enlace corto a través de la API de campañas. Una campaña de enlace corto se utiliza para crear un enlace corto, que luego puede utilizar para mensajes SMS individuales y masivos. También puedes consultar los enlaces cortos existentes a través de la interfaz y modificarlos o eliminarlos.
Retrieve the list of all existing Short Link Campaigns ordered by the field created_at
in descending order.
page | integer Default: 1 Página actual |
_order[created_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por marca de tiempo cuando se creó la entidad |
name | string Filtrar enlaces cortos por nombre (coincidencia parcial) |
url | string Partial case-insensitive text filter by a destination URL |
created_at | integer Exact filtrar entidades por la fecha de creación |
created_at[] | Array of integers Exact y range filtrar entidades por las marcas de tiempo de creación |
type | integer Exact filter short links by type (exact match) |
type[] | Array of integers Range filter short links by type (array of values) |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/short_link_campaigns \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "type": 1,
- "id": "string",
- "name": "string",
- "url": "string",
- "created_at": 0,
- "group_id": 0
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Create a new Short Link Campaign entity with destination url, type and name
The new short_link_campaigns resource
type required | integer (property.short_link_campaigns.type) Enum: 1 2 Tipo de la campaña de enlaces cortos |
name required | string (property.short_link_campaigns.name) <= 100 characters Nombre de la campaña de enlaces cortos |
url required | string (property.short_link_campaigns.url) URL de la campaña de enlaces cortos |
group_id | integer or null (property.short_link_campaigns.group_id) ID del grupo de la campaña de enlaces cortos |
{- "type": 1,
- "name": "string",
- "url": "string",
- "group_id": 0
}
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "type": 1,
- "id": "string",
- "name": "string",
- "url": "string",
- "created_at": 0,
- "group_id": 0
}
A special type of short link campaign that redirects the user to a subscription form. You can specify the id of the group to which the subscribed users phone numbers will be added.
The new short_link_campaigns resource
name required | string (property.short_link_campaigns.name) <= 100 characters Nombre de la campaña de enlaces cortos |
group_id required | integer or null (property.short_link_campaigns.group_id) ID del grupo de la campaña de enlaces cortos |
{- "name": "string",
- "group_id": 0
}
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "type": 1,
- "id": "string",
- "name": "string",
- "url": "string",
- "created_at": 0,
- "group_id": 0
}
A special type of short link campaign that redirects the user to a unsubscription form. You can specify the id of the group from which the subscribed users phone numbers will be removed (if they have been added to it).
The new short_link_campaigns resource
name required | string (property.short_link_campaigns.name) <= 100 characters Nombre de la campaña de enlaces cortos |
group_id required | integer or null (property.short_link_campaigns.group_id) ID del grupo de la campaña de enlaces cortos |
{- "name": "string",
- "group_id": 0
}
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "type": 1,
- "id": "string",
- "name": "string",
- "url": "string",
- "created_at": 0,
- "group_id": 0
}
Retrieve a specific Short Link Campaign by it's ID. If the Campaign is not found then the HTTP code response will be 404.
code required | string short_link_campaigns code |
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "type": 1,
- "id": "string",
- "name": "string",
- "url": "string",
- "created_at": 0,
- "group_id": 0
}
Edit the values of a specific Short Link Campaigns. If the Campaign is not found then the HTTP code response will be 404.
code required | string short_link_campaigns code |
The updated short_link_campaigns resource
type required | integer (property.short_link_campaigns.type) Enum: 1 2 Tipo de la campaña de enlaces cortos |
name required | string (property.short_link_campaigns.name) <= 100 characters Nombre de la campaña de enlaces cortos |
url required | string (property.short_link_campaigns.url) URL de la campaña de enlaces cortos |
group_id | integer or null (property.short_link_campaigns.group_id) ID del grupo de la campaña de enlaces cortos |
{- "type": 1,
- "name": "string",
- "url": "string",
- "group_id": 0
}
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "type": 1,
- "id": "string",
- "name": "string",
- "url": "string",
- "created_at": 0,
- "group_id": 0
}
Delete a Short Link Campaign. If the Campaign is not found then the HTTP code response will be 404.
code required | string short_link_campaigns code |
#!/usr/bin/env bash curl -X DELETE https://api.lox24.eu/short_link_campaigns/campaign_id_here \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
La API de enlaces se utiliza para consultar los enlaces cortos específicos de una o todas las campañas de enlaces cortos.
List of all short links which were used in all existing campaigns.
page | integer Default: 1 Página actual |
_order[updated_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar una lista por la propiedad 'updated_at' |
url | string Partial case-insensitive text filter by a destination URL |
updated_at | integer Exact filtrar entidades por la marca de tiempo de la última actualización |
updated_at[] | Array of integers Exact y range filtrar entidades por las marcas de tiempo de la última actualización |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/short_links \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "short_code": "string",
- "url": "string",
- "updated_at": 0,
- "requests": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Retrieve all the information about a specific short link.
shortCode required | string Código de enlace corto |
#!/usr/bin/env bash curl https://api.lox24.eu/short_links/short_link_id \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "short_code": "string",
- "url": "string",
- "updated_at": 0,
- "requests": "string"
}
List of all short links which were used in a specific campaign.
code required | string short_link_campaigns code |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/short_link_campaigns/{id}/short_links \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "short_code": "string",
- "url": "string",
- "updated_at": 0,
- "requests": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
A través de las solicitudes puedes recuperar los resultados de tu campaña de enlaces cortos. Dependiendo de si ha enviado un SMS con seguimiento simple o avanzado, podrá determinar qué números de teléfono han hecho clic con qué frecuencia en los enlaces de su SMS. A través de esta interfaz es posible averiguar qué destinatarios o qué SMS han obtenido buenos resultados.
List of all requests by a SMS Bulk ID
id required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... Bulk ID |
page | integer Default: 1 Página actual |
_order[date] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Sort a list by 'date' property |
ip | string Partial case-insensitive text filter by a IP address |
url | string Partial case-insensitive text filter by a destination URL |
user_agent | string Partial filter short links by user agent (partial match) |
country | string Exact filtrar entidades por el código de país |
country[] | Array of strings Exact filtrar entidades por los códigos de país |
referer | string Partial case-insensitive text filter by a referer |
date | integer Exact filter short link requests by exact date |
date[] | Array of integers Exact filter short link requests by date (array of values) |
type | integer Exact filter short links by type (exact match) |
type[] | Array of integers Range filter short links by type (array of values) |
browser | string Partial case-insensitive text filter by a browser name |
os | string Partial case-insensitive text filter by a operation system name |
os_version | string Partial case-insensitive text filter by a operation system version |
software_type | string Partial case-insensitive text filter by a software type |
hardware_type | string Partial case-insensitive text filter by a hardware type |
date[between] | string Range filter short link requests by date range |
date[gt] | string Filtrar solicitudes de enlaces cortos por fecha mayor que |
date[gte] | string Filtrar solicitudes de enlaces cortos por fecha mayor o igual que |
date[lt] | string Filtrar solicitudes de enlaces cortos por fecha menor que |
date[lte] | string Filtrar solicitudes de enlaces cortos por fecha menor o igual que |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/bulks/{bulk_id_here}/requests \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "id": 0,
- "ip": "192.168.1.1",
- "user_agent": "string",
- "url": "string",
- "date": 0,
- "country": "US",
- "referer": "string",
- "type": 0,
- "browser": "string",
- "browser_version": "string",
- "os": "string",
- "os_version": "string",
- "software_type": "string",
- "hardware_type": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Lists all clicks on shortlinks for a specific campaign
code required | string short_link_campaigns code |
page | integer Default: 1 Página actual |
_order[date] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Sort a list by 'date' property |
ip | string Partial case-insensitive text filter by a IP address |
url | string Partial case-insensitive text filter by a destination URL |
user_agent | string Partial filter short links by user agent (partial match) |
country | string Exact filtrar entidades por el código de país |
country[] | Array of strings Exact filtrar entidades por los códigos de país |
referer | string Partial case-insensitive text filter by a referer |
date | integer Exact filter short link requests by exact date |
date[] | Array of integers Exact filter short link requests by date (array of values) |
type | integer Exact filter short links by type (exact match) |
type[] | Array of integers Range filter short links by type (array of values) |
browser | string Partial case-insensitive text filter by a browser name |
os | string Partial case-insensitive text filter by a operation system name |
os_version | string Partial case-insensitive text filter by a operation system version |
software_type | string Partial case-insensitive text filter by a software type |
hardware_type | string Partial case-insensitive text filter by a hardware type |
date[between] | string Range filter short link requests by date range |
date[gt] | string Filtrar solicitudes de enlaces cortos por fecha mayor que |
date[gte] | string Filtrar solicitudes de enlaces cortos por fecha mayor o igual que |
date[lt] | string Filtrar solicitudes de enlaces cortos por fecha menor que |
date[lte] | string Filtrar solicitudes de enlaces cortos por fecha menor o igual que |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu//short_link_campaigns/{campaign_id}/requests \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "id": 0,
- "ip": "192.168.1.1",
- "user_agent": "string",
- "url": "string",
- "date": 0,
- "country": "US",
- "referer": "string",
- "type": 0,
- "browser": "string",
- "browser_version": "string",
- "os": "string",
- "os_version": "string",
- "software_type": "string",
- "hardware_type": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Lists all clicks on shortlinks
page | integer Default: 1 Página actual |
_order[date] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Sort a list by 'date' property |
ip | string Partial case-insensitive text filter by a IP address |
url | string Partial case-insensitive text filter by a destination URL |
user_agent | string Partial filter short links by user agent (partial match) |
country | string Exact filtrar entidades por el código de país |
country[] | Array of strings Exact filtrar entidades por los códigos de país |
referer | string Partial case-insensitive text filter by a referer |
date | integer Exact filter short link requests by exact date |
date[] | Array of integers Exact filter short link requests by date (array of values) |
type | integer Exact filter short links by type (exact match) |
type[] | Array of integers Range filter short links by type (array of values) |
browser | string Partial case-insensitive text filter by a browser name |
browser_version | string Partial case-insensitive text filter by a browser version |
os | string Partial case-insensitive text filter by a operation system name |
os_version | string Partial case-insensitive text filter by a operation system version |
software_type | string Partial case-insensitive text filter by a software type |
hardware_type | string Partial case-insensitive text filter by a hardware type |
date[between] | string Range filter short link requests by date range |
date[gt] | string Filtrar solicitudes de enlaces cortos por fecha mayor que |
date[gte] | string Filtrar solicitudes de enlaces cortos por fecha mayor o igual que |
date[lt] | string Filtrar solicitudes de enlaces cortos por fecha menor que |
date[lte] | string Filtrar solicitudes de enlaces cortos por fecha menor o igual que |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/short_link_requests \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "id": 0,
- "ip": "192.168.1.1",
- "user_agent": "string",
- "url": "string",
- "date": 0,
- "country": "US",
- "referer": "string",
- "type": 0,
- "browser": "string",
- "browser_version": "string",
- "os": "string",
- "os_version": "string",
- "software_type": "string",
- "hardware_type": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Retrieve the detail information about a short link click
id required | string ID de solicitud de enlace corto |
#!/usr/bin/env bash curl https://api.lox24.eu/short_link_requests/request_id_here \ -H 'Content-Type: application/json' \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "id": 0,
- "ip": "192.168.1.1",
- "user_agent": "string",
- "url": "string",
- "date": 0,
- "country": "US",
- "referer": "string",
- "type": 0,
- "browser": "string",
- "browser_version": "string",
- "os": "string",
- "os_version": "string",
- "software_type": "string",
- "hardware_type": "string"
}
List of all requests by a short link campaign code
shortCode required | string Código de enlace corto |
page | integer Default: 1 Página actual |
_order[date] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Sort a list by 'date' property |
ip | string Partial case-insensitive text filter by a IP address |
url | string Partial case-insensitive text filter by a destination URL |
user_agent | string Partial filter short links by user agent (partial match) |
country | string Exact filtrar entidades por el código de país |
country[] | Array of strings Exact filtrar entidades por los códigos de país |
referer | string Partial case-insensitive text filter by a referer |
date | integer Exact filter short link requests by exact date |
date[] | Array of integers Exact filter short link requests by date (array of values) |
type | integer Exact filter short links by type (exact match) |
type[] | Array of integers Range filter short links by type (array of values) |
browser | string Partial case-insensitive text filter by a browser name |
browser_version | string Partial case-insensitive text filter by a browser version |
os | string Partial case-insensitive text filter by a operation system name |
os_version | string Partial case-insensitive text filter by a operation system version |
software_type | string Partial case-insensitive text filter by a software type |
hardware_type | string Partial case-insensitive text filter by a hardware type |
date[between] | string Range filter short link requests by date range |
date[gt] | string Filtrar solicitudes de enlaces cortos por fecha mayor que |
date[gte] | string Filtrar solicitudes de enlaces cortos por fecha mayor o igual que |
date[lt] | string Filtrar solicitudes de enlaces cortos por fecha menor que |
date[lte] | string Filtrar solicitudes de enlaces cortos por fecha menor o igual que |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/short_links/{short_link_id}/requests \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "id": 0,
- "ip": "192.168.1.1",
- "user_agent": "string",
- "url": "string",
- "date": 0,
- "country": "US",
- "referer": "string",
- "type": 0,
- "browser": "string",
- "browser_version": "string",
- "os": "string",
- "os_version": "string",
- "software_type": "string",
- "hardware_type": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
List of all requests by a single SMS ID
uuid required | string SMS ID ( |
page | integer Default: 1 Página actual |
_order[date] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Sort a list by 'date' property |
ip | string Partial case-insensitive text filter by a IP address |
url | string Partial case-insensitive text filter by a destination URL |
user_agent | string Partial filter short links by user agent (partial match) |
country | string Exact filtrar entidades por el código de país |
country[] | Array of strings Exact filtrar entidades por los códigos de país |
referer | string Partial case-insensitive text filter by a referer |
date | integer Exact filter short link requests by exact date |
date[] | Array of integers Exact filter short link requests by date (array of values) |
type | integer Exact filter short links by type (exact match) |
type[] | Array of integers Range filter short links by type (array of values) |
browser | string Partial case-insensitive text filter by a browser name |
os | string Partial case-insensitive text filter by a operation system name |
os_version | string Partial case-insensitive text filter by a operation system version |
software_type | string Partial case-insensitive text filter by a software type |
hardware_type | string Partial case-insensitive text filter by a hardware type |
date[between] | string Range filter short link requests by date range |
date[gt] | string Filtrar solicitudes de enlaces cortos por fecha mayor que |
date[gte] | string Filtrar solicitudes de enlaces cortos por fecha mayor o igual que |
date[lt] | string Filtrar solicitudes de enlaces cortos por fecha menor que |
date[lte] | string Filtrar solicitudes de enlaces cortos por fecha menor o igual que |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/sms/{sms_id}/requests \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "id": 0,
- "ip": "192.168.1.1",
- "user_agent": "string",
- "url": "string",
- "date": 0,
- "country": "US",
- "referer": "string",
- "type": 0,
- "browser": "string",
- "browser_version": "string",
- "os": "string",
- "os_version": "string",
- "software_type": "string",
- "hardware_type": "string"
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Retrieves the list of sms which contain a short link and the number of clicks on these links.
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 |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/sms/clicks \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "uuid": "string",
- "created_at": 0,
- "requests_count": 0
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Returns the number of clicks on a short link for a specific SMS. If SMS doesn't exists or doesn't contain then HTTP code 404 will response.
uuid required | string SMS ID ( |
#!/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'
{- "@id": "string",
- "@type": "string",
- "@context": "string",
- "uuid": "string",
- "created_at": 0,
- "requests_count": 0
}
La AIP de detección de fraudes ayuda a identificar las solicitudes sospechosas a su servicio. La API recibe datos de usted, como el número de teléfono, el correo electrónico y la dirección IP de su cliente potencial, en cumplimiento de la normativa de protección de datos vigente en Europa. Nuestro sistema los comprueba mediante bases de datos, algoritmos e inteligencia artificial. Por último, la API ofrece una evaluación de la probabilidad o el riesgo de fraude. El riesgo se mide como la probabilidad de fraude de 0 a 100, donde 0
representa una baja probabilidad de fraude (valor de riesgo bueno) y 100
representa una probabilidad de fraude extremadamente alta (valor de riesgo malo).
El servicio también le permite comprobar usted mismo cada parte de la solicitud por separado, por ejemplo, pasando sólo los datos telefónicos.
Además de la puntuación de riesgo, la respuesta de la AP de Detección de Fraude también contiene información adicional para ayudarle con su evaluación de riesgo:
Según la tarifa seleccionada ("económica", "pro", "directa"), la respuesta y la velocidad de procesamiento de la solicitud son diferentes. Las solicitudes económicas son adecuadas para un simple inicio de sesión, por ejemplo. Consultas pro registro de nuevos clientes y consultas directas para la venta de productos:
Dado que la puntuación tarda algún tiempo, la solicitud se procesa en modo asíncrono y, tras el procesamiento, el servicio devuelve los datos de la solicitud en formato JSON a la URL HTTP o al correo electrónico que haya especificado. Puede establecer este valor en la cuenta web, en el apartado de Ajustes y Notificaciones (Notificaciones de eventos). También puede comprobar el estado de la solicitud por su ID enviando una solicitud a la API. Sin embargo, le recomendamos encarecidamente que utilice el sistema de notificación (webhook), ya que el servicio puede bloquear sus solicitudes si hay un gran número de ellas.
Triggered when a Fraud Detection request is completed
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... UUID único de entidad |
api_version | string (property.common.api_version) Versión de la estructura de datos de notificación |
name | string Value: "fraud-check.done" Nombre del evento de Webhook |
created_at | integer (property.common.created_at) >= 0 Fecha en la que se añadió la entidad al sistema por el usuario |
attempt_total | integer (property.common.attempt_total) [ 1 .. 4 ] Número total de intentos de entrega de webhooks de notificación |
attempt_number | integer (property.common.attempt_number) >= 1 Número de intento de notificación webhook actual |
object Event-specific data payload | |
notification_task_id | string <uuid> Notification task identifier (request identifier) |
Evento enviado cuando se completa la verificación de detección de fraude
{- "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": {
- "check_id": "fraud-check-123",
- "result": "clean",
- "confidence_score": 0.95
}, - "notification_task_id": "7712ab27-cd00-8ef2-da5d-6f54f85ff085"
}
Retrieves the list of all previous Fraud Check requests
page | integer Default: 1 Página actual |
_order[created_at] | string (order.ordering) Default: "asc" Enum: "asc" "desc" Ordenar por marca de tiempo cuando se creó la entidad |
id | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... Exact filter by Fraud request ID |
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 by Fraud request ID |
callback_data | string Partitial filtrar entidades por el |
request_phone.phone | string Partial filter by the request's phone value |
request_email.email | string Partial filter by the request's email value |
request_ip.ip | string Partial filter by the request's IP value |
status_code | integer Exact filter Fraud requests by the status code |
status_code[] | Array of integers Exact filter Fraud requests by the status codes |
#!/usr/bin/env bash curl -X GET https://api.lox24.eu/fraud-checks \ -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'
{- "hydra:member": [
- {
- "@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": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "phone": "+14155552671",
- "created_at": 0,
- "updated_at": 0,
- "is_possible": true,
- "is_valid": true,
- "region": "US",
- "number_type": "string"
}, - "request_email": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "email": "user@example.com",
- "created_at": 0,
- "updated_at": 0,
- "is_possible": true,
- "is_anonymous": true
}, - "request_ip": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "ip": "strings",
- "created_at": 0,
- "updated_at": 0,
- "iso2": "US",
- "state": "US",
- "city": "string",
- "postcode": "string",
- "geolocation": [
- 0
], - "isp_name": "string",
- "isp_risk_score": 100,
- "proxy_type": "VPN",
- "connection_type": "dialup",
- "is_ok": true
}, - "request_address": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "iso2": "US",
- "city": "string",
- "postcode": "string",
- "street_number": "string",
- "street_name": "string",
- "created_at": 0,
- "updated_at": 0
}, - "price": 0
}
], - "hydra:totalItems": 0,
- "hydra:view": {
- "@id": "string",
- "type": "string",
- "hydra:first": "string",
- "hydra:last": "string",
- "hydra:previous": "string",
- "hydra:next": "string"
}, - "hydra:search": {
- "@type": "string",
- "hydra:template": "string",
- "hydra:variableRepresentation": "string",
- "hydra:mapping": [
- {
- "@type": "string",
- "variable": "string",
- "property": "string",
- "required": true
}
]
}
}
Send a Fraud Check request and get risk score value back.
The new fraud-check resource
service_code required | string (property.fraud-check.service_code) Enum: "economy" "pro" "direct" Service code defines the type of fraud query you make. Economy contains only a risk value, while Pro and Direct contain more details about the results, so you can make your own decision. Direct queries are also processed with priority. (see /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 |
{- "service_code": "economy",
- "callback_data": "string",
- "phone": "+14155552671",
- "email": "string",
- "ip": "strings",
- "address": {
- "iso2": "US",
- "city": "string",
- "postcode": "string",
- "street_number": "string",
- "street_name": "string"
}
}
{- "@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": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "phone": "+14155552671",
- "created_at": 0,
- "updated_at": 0,
- "is_possible": true,
- "is_valid": true,
- "region": "US",
- "number_type": "string"
}, - "request_email": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "email": "user@example.com",
- "created_at": 0,
- "updated_at": 0,
- "is_possible": true,
- "is_anonymous": true
}, - "request_ip": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "ip": "strings",
- "created_at": 0,
- "updated_at": 0,
- "iso2": "US",
- "state": "US",
- "city": "string",
- "postcode": "string",
- "geolocation": [
- 0
], - "isp_name": "string",
- "isp_risk_score": 100,
- "proxy_type": "VPN",
- "connection_type": "dialup",
- "is_ok": true
}, - "request_address": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "iso2": "US",
- "city": "string",
- "postcode": "string",
- "street_number": "string",
- "street_name": "string",
- "created_at": 0,
- "updated_at": 0
}, - "price": 0
}
Returns the data of a specific Fraud Check request
id required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... Fraud Check request ID |
#!/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'
{- "@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": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "phone": "+14155552671",
- "created_at": 0,
- "updated_at": 0,
- "is_possible": true,
- "is_valid": true,
- "region": "US",
- "number_type": "string"
}, - "request_email": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "email": "user@example.com",
- "created_at": 0,
- "updated_at": 0,
- "is_possible": true,
- "is_anonymous": true
}, - "request_ip": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "ip": "strings",
- "created_at": 0,
- "updated_at": 0,
- "iso2": "US",
- "state": "US",
- "city": "string",
- "postcode": "string",
- "geolocation": [
- 0
], - "isp_name": "string",
- "isp_risk_score": 100,
- "proxy_type": "VPN",
- "connection_type": "dialup",
- "is_ok": true
}, - "request_address": {
- "@id": "string",
- "@type": "string",
- "@context": "string",
- "status_code": 0,
- "iso2": "US",
- "city": "string",
- "postcode": "string",
- "street_number": "string",
- "street_name": "string",
- "created_at": 0,
- "updated_at": 0
}, - "price": 0
}
Remove all information about a previous Fraud Check request.
id required | string (property.common.uuid) ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]... Fraud Check request ID |
#!/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'
La API de LOX24 proporciona un sistema genérico para aplicar filtros y criterios de ordenación sobre colecciones. Puede ver qué filtros puede utilizar en la descripción de la propiedad.
La API utiliza dos tipos de filtros de texto:
Nota:Los filtros de búsqueda con la estrategia exacta pueden tener varios valores para la misma propiedad (en este caso la condición será similar a una cláusula SQL IN).
Buscar sms cuya propiedad phone
contenga "4979" y cuya propiedad `text contiene "hola ":
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'
Buscar sms con la propiedad iso2
del país igual a 'DE' O 'CH' y 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'
El filtro booleano permite buscar en campos y valores booleanos.
Syntax: ?property=<true|false|1|0>
Recibir sms que aún no se han enviado al operador de telefonía móvil:
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'
El filtro existe permite seleccionar elementos en función de un valor de campo anulable
Syntax: ?exists[property]=<true|false|1|0>
Obtener bultos que tengan la propiedad is_unicode=null
(autodetección de codificación sms):
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'
El filtro de rango permite filtrar por un valor menor que, mayor que, menor o igual, mayor o igual y entre dos valores.
Syntax: ?property[<lt|gt|lte|gte|between>]=value
Filtrar colección de sms por el campo created_at
entre 1575158400 (2019-12-01) y 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'
El filtro de orden permite ordenar una colección en función de las propiedades dadas. Parámetro de orden _order
.
Ordenar la colección de sms por el campo 'created_at' en orden descendente:
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'
Descripción de los códigos de estado sms (propiedad status_code
):
Código de Estado | Descripción |
---|---|
0 | Nuevo mensaje recién creado |
100 | El mensaje se ha transmitido correctamente al operador de telefonía móvil |
208 | La red/país de destino está bloqueado |
400 | No se ha podido entregar el mensaje durante el mantenimiento |
410 | El mensaje se detuvo antes de la transmisión a través de la cuenta web |
2000 | Por el momento no es posible la conexión con el teléfono fijo |
3000 | No hay dinero suficiente en el saldo del usuario para enviar el mensaje |
5000 | No se ha encontrado ningún operador de telefonía móvil para este mensaje |
6000 | El mensaje se detuvo antes de la transmisión a través de la API |
Cada SMS tiene un código de informe de entrega (DLR). Hay tres formas de obtener el código DLR e información adicional:
GET /sms/{id}
(id - SMS id) y comprobar la propiedad dlr_code
200
>= 300
el servicio hará intentos adicionales (sólo por código DLR DELIVERY_OK
) pero máximo cuatro. Propiedad | Tipo | Descripción |
---|---|---|
uuid | UUID | SMS id |
dlr_code | integer | DLR código de estado |
key_id | integer | Id. de la clave API utilizada para enviar la solicitud a la API |
phone | string | Número de teléfono del destinatario del SMS (en DLR sólo por correo electrónico) |
callback_data | string | String que publico enPOST /sms en propiedad callback_data o si sms fue enviado por POST /bulks como Propiedad del teléfono callback_data |
dlr_code
):Codigo de estado | Descripción |
---|---|
0 | NONE: No hay informe de entrega disponible |
1 | DELIVERY_OK: El mensaje se ha enviado correctamente |
2 | DELIVERY_QUEUE: El mensaje se programa para su envío posterior |
4 | DELIVERY_SUBMIT_ACK: El mensaje está en camino |
8 | DELIVERY_EXPIRED: El SMSC no ha podido entregar el mensaje en un tiempo determinado. Por ejemplo, cuando el teléfono estaba apagado |
16 | DELIVERY_REJECTED: El mensaje ha sido rechazado. El proveedor podría haber bloqueado los números de teléfono en este rango |
Esta es una guía para configurar y conectar nuestra API SMS a su cliente Kannel.
Si utiliza Kannel para enviar mensajes a diferentes pasarelas SMS, puede añadir fácilmente un módulo SMSC adicional sin cambiar la arquitectura de su aplicación.
Soporte: berlin@lox24.eu
Para enviar mensajes con Kannel, debe crear una clave de autenticación en la página de cuenta con el tipo 'Kannel API'. Vaya a "Configuración" -> "Configuración API" y haga clic en "Crear nueva clave". Tiene que elegir como tipo "Kannel API".
Existen dos tipos de configuraciones SMSC posibles para enviar SMS con LOX24 vía Kannel:
Nota: Lo que hay sobre una petición de DLR lo puedes leer aquí:
La API LOX24 enviará los informes de entrega directamente a su endpoint sin pasar por Kannel.
Para utilizar la API de Kannel, basta con crear una nueva configuración SMSC:
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
Donde:
Nosotros enviaremos los informes de entrega a Kannel, que a su vez enviará los DLR a su endpoint.
Para utilizar la API de Kannel, basta con crear una nueva configuración SMSC:
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
Donde:
Si configura API v2 Status URL/E-mail en la cuenta web de lox24 podrá omitir el parámetro dlr-url
y recibir notificaciones de mensajes de la misma forma que si enviara SMS mediante nuestra API v2 normal directamente a un script en su servidor o por correo [docs]. (/#tag/SMS-delivery-report-codes-(DLR))
En los ejemplos de configuración de SMSC se utiliza el puerto 10443, pero puede ser cualquier puerto que desee. Recomendamos encarecidamente bloquearlo por el cortafuegos y permitir conexiones TCP desde los servidores LOX24 (116.203.64.153,213.133.127.70,85.10.245.*) y hosts conocidos.
LOX24 Kannel API es una implementación mínima de Kannel y sólo soporta las siguientes variables:
%d - Tipo de informe Kannel (entero):
%q - El número de teléfono internacional (E.164) que recibirá el mensaje.
%T - La hora del informe de entrega expresada en segundos desde la época UNIX.
Nota: Puede utilizar cualquier otra variable, pero no podemos garantizar que los datos sean correctos.
(obligatorio)
ID del remitente del mensaje. Puede ser un número (hasta 15 dígitos) o un texto (hasta 11 caracteres). Si se trata de un número, utilice preferentemente el formato de número de teléfono E.164. Un remitente de texto puede contener espacios pero no otros caracteres especiales. Tenga en cuenta que algunos países no admiten identificadores de remitente propios o exigen un registro previo. Nuestro sistema intenta detectar automáticamente si un ID de remitente es un texto o un número de teléfono. Evite los caracteres especiales en un número e introdúzcalo de la misma forma que se marcaría en un teléfono.
(obligatorio)
El texto del mensaje puede tener una longitud de hasta 1530 caracteres. Con un SMS Unicode, la longitud máxima de caracteres se reduce a 670 caracteres. La codificación interna es UTF-8.
(opcional)
Puedes enviar un SMS con el parámetro 'coding':
0 - GSM 03.38 (default), 1 - 8-bit or 2 - UCS-2 encoding.
En nuestro caso, 8 bits y UCS-2 son lo mismo (is_unicode = true) y se tratarán como SMS unicode.
(opcional)
Especifique una URL y pídanos que la llamemos para informarle del estado de la entrega. Si no se especifica el parámetro 'dlr-url', se utilizará API v2 DLR endpoint from user's settings (si está configurado).
(opcional)
Si se da, el centro de SMS pospondrá el mensaje para que se entregue en el momento más esta cantidad de minutos. Si se omite, el SMS se enviará lo antes posible.
Ese ejemplo de solicitud get que el usuario envía a su smsbox de Kannel que está a la escucha en el puerto 9001.
Añade a una url DLR un parámetro personalizado con el ID interno del mensaje para procesar correctamente la petición DLR. En nuestro ejemplo es un customid
= 1234567.
Las notas de la versión le informan de las novedades de la API. Como siempre, agradecemos su feedback.
X-LOX24-REQUEST-ID
con fines de asistencia técnica y seguimiento.sms.email.parsing.success
y sms.email.parsing.fail
-SMS y SMS masivo propiedad is_text_deleted
del endpoint Simular el envío de un SMS (para pruebas) and Crear el Bulk
max_sms_parts
del endpoint Email2Bulkbulk.email.parsing.success
y bulk.email.parsing.fail
balance_changed_at
al endpoint GET /me
.callback_data
del endpoint Recupera la colección de SMSmax_sms_parts
del endpoint Email2Bulkbulk.email.parsing.success
y bulk.email.parsing.fail
subscribed_at
, unsubscribed_at
y unsubscribed_reason
(ver API de Teléfonos )received_at
.X-LOX24-AUTH-TOKEN
, la cabecera X-LOX24-AUTH-CLIENT-ID
está obsoleta y no se recomienda su uso.GET /bulks
por la propiedad is_dryrun
.balance_changed_at
al endpoint GET /me
.GET /incomings
y GET /incomings/{id}
para recuperar información sobre SMS entrantes y relacionados.POST /sms/dryrun
.key_id
en GET /bulks
y GET /sms
./sms
, /bulks
y /incomings
endpoints.GET /sms
por la propiedad bulk
.GET /bulks
por la propiedad source
.sms
y bulks
price
al objeto de respuesta SMSLa API v2.0 se ha desarrollado de acuerdo con las normas del sector para facilitar al máximo la integración. Además, ahora puedes transmitir grandes cantidades de SMS con una sola consulta y recuperar información detallada sobre los mensajes en cualquier momento.
La amplia funcionalidad de grupo le permite gestionar sus listas de correo en nuestra nube de alto rendimiento y ahorrar así sus propios recursos. Todo ello sin dejar de cumplir las normas europeas de protección de datos y la Ley alemana de Telecomunicaciones.
Encontrará la descripción de la nueva API en https://doc.lox24.eu/
El idioma de voz será detectado automáticamente por el número de teléfono de destino si la propiedad voice_lang
es ```null`` por seguir las reglas:
Si el idioma por defecto es nulo, entonces por número de teléfono de destino con prefijo: '+49', '+41', '+43', '+79'.
Si el idioma por defecto es nulo, entonces por número de teléfono de destino con prefijo: '+52', '+57', '+34', '+54', '+51', '+58', '+56', '+593', '+502', '+53', '+591', '+504', '+595', '+503', '+505', '+506', '+507', '+598', '+240'.
The API now supports a subset of SSML (Speech Synthesis Markup Language) for advanced voice message formatting.
<break>
- Insert pauses in speech<say-as>
- Control pronunciation of text<break>
Tagtime
(e.g., "1s", "500ms")<say-as>
Taginterpret-as="characters"
- Spell out text character by characterWrap your message content with the <speak>
root element:
<speak>
Your verification code is <say-as interpret-as="characters">A1B2C3</say-as>.
<break time="1s"/>
Please enter it now.
</speak>
Puedes enviar mensajes SMS por correo electrónico de dos formas distintas: enviando un único SMS a un número de teléfono concreto o enviando un SMS a un grupo de números de teléfono.
Para enviar un único SMS, el correo electrónico debe tener el siguiente formato:
{{user_id}}.{{api_key}}.{{phone}}.{{service_code}}.{{sender_id}}.{{text_source}}.{{encoding}}.{{max_sms_parts}}@mail2sms.lox24.eu
Para enviar un SMS a los números de teléfono de un grupo específico, utilice el siguiente formato:
{{user_id}}.{{api_key}}.{{group_id}}.{{service_code}}.{{sender_id}}.{{text_source}}.{{encoding}}.{{max_sms_parts}}@email2bulk.lox24.eu
Orde | Etiqueta | Descripción |
---|---|---|
1 | user_id | Id. de usuario (entero) |
2 | api_key | Clave API "Email2SMS" desde la página de configuración de la clave API ("Configuración" -> "Configuración API") |
3 | phone/group_id | Para SMS individuales, es el número de teléfono en formato E.164 sin el "+" inicial. Para los SMS de grupo, es el Id. de grupo que puede encontrar en su cuenta web o solicitar por API. |
4 | service_code | Código de servicio "text2speech", "direct" (por defecto) |
5 | sender_id | Id de remitente: un número entero de 1 a 6 (por defecto 1). Si no se encuentra el identificador del remitente, el valor predeterminado es "email2sms". |
6 | text_source | Text source: 0 - subject + body (by default), 1 - subject, 2 - body |
7 | encoding | An integer: 0 - normal GSM (default), 1 - unicode, 2 - auto-detecting (por el texto completo de la solicitud) |
8 | max_sms_parts | Un número entero entre 1 y 10. El valor por defecto es 1. Hay un límite en la longitud del texto cuando se analiza el correo electrónico. Los caracteres adicionales se utilizan para la concatenación en mensajes más largos que los límites estándar. |
Enviar SMS a teléfonos por un id de grupo = 12345 (parámetros mínimos)
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345@email2bulk.lox24.eu
Enviar SMS a teléfonos por un id de grupo = 12345 con servicio 'directo'
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct@email2bulk.lox24.eu
Enviar SMS a teléfonos por un id de grupo = 12345 con servicio 'directo' y con id de remitente = 2
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2@email2bulk.lox24.eu
Enviar SMS a teléfonos por un id de grupo = 12345 con servicio 'directo', con id de remitente = 2, y texto del asunto del email
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2.1@email2bulk.lox24.eu
Enviar SMS a teléfonos por un id de grupo = 12345 con servicio 'directo', con id de remitente = 2, con texto del asunto del email, y codificación auto-detección
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2.1.2@email2bulk.lox24.eu
Enviar SMS a un único número de teléfono "+1234567890" (parámetros mínimos)
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890@mail2sms.lox24.eu
Enviar SMS a un único número de teléfono "+1234567890" con el servicio 'directo'.
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct@mail2sms.lox24.eu
Enviar SMS a un único número de teléfono "+1234567890" con servicio 'directo' e id de remitente = 2
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2@mail2sms.lox24.eu
Enviar SMS a un único número de teléfono "+1234567890" con servicio 'directo', con id de remitente = 2, y texto del asunto del email
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2.1@mail2sms.lox24.eu
Enviar SMS a un único número de teléfono "+1234567890" con servicio 'directo', con id de remitente = 2, con texto del asunto del email, y codificación auto-detección
1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2.1.2@mail2sms.lox24.eu
La mayoría de los errores se ignoran para reducir las inundaciones no deseadas, incluidos los errores relacionados con la autenticación. Pero para algunos errores, el sistema envía una respuesta JSON con una descripción del error.
Error JSON
Propiedad | Descripción |
---|---|
field | Campo de error en la solicitud |
description | Descripción del error |
request | EMail dirección a la que se envió la solicitud |
{"field":"group_id","description":"Group with id = 12345 was not found!","request":"1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct@email2bulk.lox24.eu"}
Tenga en cuenta que la pasarela de correo no funciona con el reenvío de correo electrónico. El correo electrónico debe enviarse directamente al buzón de la pasarela Mail2SMS.
El sistema de mensajería de eventos se creó en sustitución del anticuado sistema de notificación del estado de entrega de sms salientes y entrantes (estos sistemas se consideran obsoletos, no se mejorarán y no se recomienda su uso).
El sistema de mensajería de eventos permite enviar información sobre eventos concretos a URIs específicas (http o correo electrónico). Puede personalizar el sistema para enviar notificaciones de un evento a diferentes URI.
Para configurar las notificaciones, abra la página de configuración (account.lox24.eu -> Configuración -> Notificaciones), haga clic en "Crear un nuevo webhook" e introduzca en el campo URI la dirección http o el correo electrónico al que desea recibir las notificaciones. Por defecto, todos los eventos posibles se enviarán a la URI especificada. Si sólo desea recibir notificaciones sobre determinados eventos, marque la casilla situada junto a los eventos sobre los que desea recibir notificaciones.
Si necesita notificaciones adicionales, repita las instrucciones anteriores. Se puede crear un máximo de cinco notificaciones individuales.
La información del evento se notificará en formato de objeto JSON, que tiene el mismo formato para todos los eventos y sólo difiere en los datos del propio evento.
Campo | Tipo | Descripción |
---|---|---|
id | string (36 chars) | ID del evento |
api_version | string | Versión de la estructura de datos |
name | string | Nombre de evento E.j. 'sms.delivery' |
created_at | integer | Unix timestamp cuando el evento fue creado |
attempt_total | integer | Número total de intentos (reintentos). |
attempt_number | integer | Número actual de intentos |
data | object | Datos del evento (ver lista de eventos) |
notification_task_id | string (36 chars) | ID de la tarea de notificación (identificador de la solicitud) |
{
"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"
}
El sistema de notificación puede enviar información de eventos de dos maneras (transportes): HTTP y Correo electrónico
El json se envía como cuerpo de la petición http con la cabecera Content-Type: application/json
.
El servicio continuará intentando enviar la petición (a intervalos de tiempo crecientes) hasta que reciba una respuesta con un código de estado >= 200 y < 300 o el número de intentos alcance el valor especificado en el campo número_de_intentos
.
NOTA: La respuesta de su script de punto final no se tiene en cuenta, por lo que debe supervisar su script. En caso de mal funcionamiento no hay notificación por nuestra parte.
El json se envía como cuerpo del email con un único intento desde un email no-reply@lox24.eu
.
Las alertas se envían desde los siguientes hosts 162.55.80.140
y 162.55.80.141
. Si utilizas un cortafuegos, no olvides poner esas direcciones IP en la lista blanca.