API de Email
createEmailMessage
Anchor link toCrea un mensaje de correo electrónico.
POST https://api.pushwoosh.com/json/1.3/createEmailMessage
Parámetros del cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| auth | string | Sí | Token de acceso a la API del Panel de Control de Pushwoosh. |
| application | string | Sí | Código de aplicación de Pushwoosh |
| notifications | array | Sí | Matriz JSON que contiene los detalles del mensaje de correo. Consulte la tabla Parámetros de notificaciones a continuación. |
Parámetros de notificaciones
Anchor link to| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| send_date | string | Sí | Define cuándo enviar el correo. Formato: YYYY-MM-DD HH:mm o "now". |
| preset | string | Sí | Código de contenido de correo. Cópielo de la barra de URL del Editor de Contenido de Email en el Panel de Control de Pushwoosh. |
| subject | string u object | No | Línea de asunto del correo. El correo siempre estará en el idioma del contenido. Si subject no contiene un idioma coincidente para content, el asunto estará vacío. |
| content | string u object | No | El contenido del cuerpo del correo. Puede ser una cadena para contenido HTML plano o un objeto para versiones localizadas. |
| attachments | array | No | Los archivos adjuntos del correo. Solo están disponibles dos archivos adjuntos. Cada archivo adjunto no debe exceder 1MB (codificado en base64). |
| list_unsubscribe | string | No | Permite establecer una URL personalizada para el encabezado “Link-Unsubscribe”. |
| campaign | string | No | Código de campaña para asociar el correo con una campaña específica. |
| ignore_user_timezone | boolean | No | Si es true, envía el correo inmediatamente, ignorando las zonas horarias de los usuarios. |
| timezone | string | No | Envía el correo según la zona horaria del usuario. Ejemplo: "America/New_York". |
| filter | string | No | Envía el correo a usuarios que coincidan con una condición de filtro específica. |
| devices | array | No | Lista de direcciones de correo (máx 1000) para enviar correos dirigidos. Si se usa, el mensaje se envía solo a estas direcciones. Ignorado si se usa el Grupo de Aplicaciones. |
| use_auto_registration | boolean | No | Si es true, registra automáticamente los correos del parámetro devices. |
| users | array | No | Si se establece, el mensaje de correo solo se entregará a los IDs de Usuario especificados (registrados vía llamada /registerEmail). No más de 1000 IDs de usuario en una matriz. Si se especifica el parámetro “devices”, el parámetro “users” será ignorado. |
| dynamic_content_placeholders | object | No | Marcadores de posición para contenido dinámico en lugar de valores de etiquetas de dispositivo. |
| conditions | array | No | Condiciones de segmentación usando etiquetas. Ejemplo: [["Country", "EQ", "BR"]]. |
| from | object | No | Especifique un nombre y correo de remitente personalizados, anulando el predeterminado en las propiedades de la aplicación. |
| reply-to | object | No | Especifique un correo de respuesta personalizado, anulando el predeterminado en las propiedades de la aplicación. |
| transactionId | string | No | Identificador único del mensaje para evitar reenvíos en caso de problemas de red. Almacenado en el lado de Pushwoosh durante 5 minutos. |
| capping_days | integer | No | El número de días (máx 30) para aplicar limitación de frecuencia por dispositivo. Nota: Asegúrese de que la Limitación de frecuencia global esté configurada en el Panel de Control. |
| capping_count | integer | No | El número máximo de correos que se pueden enviar desde una aplicación específica a un dispositivo particular dentro de un período capping_days. En caso de que el mensaje creado exceda el límite capping_count para un dispositivo, no será enviado a ese dispositivo. |
| capping_exclude | boolean | No | Si se establece en true, este correo no contará para la limitación de correos futuros. |
| capping_avoid | boolean | No | Si se establece en true, la limitación no se aplicará a este correo específico. |
| send_rate | integer | No | Limita cuántos mensajes se pueden enviar por segundo entre todos los usuarios. Ayuda a prevenir la sobrecarga del backend durante envíos de alto volumen. |
| send_rate_avoid | boolean | No | Si se establece en true, el límite de regulación no se aplicará a este correo específico. |
Ejemplo de solicitud
Anchor link to{ "request": { "auth": "API_ACCESS_TOKEN", // requerido. Token de acceso a la API del Panel de Control de Pushwoosh "application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh. "notifications": [{ "send_date": "now", // requerido. YYYY-MM-DD HH:mm O 'now' "preset": "ERXXX-32XXX", // requerido. Copie el código del preset de Email de la barra de URL // de la página del editor de Contenido de Email en el Panel de Control de Pushwoosh. "subject": { // opcional. Línea de asunto del mensaje de correo. "de": "subject de", "en": "subject en" }, "content": { // opcional. Contenido del cuerpo del correo. "de": "<html><body>de Hello, moto</body></html>", "default": "<html><body>default Hello, moto</body></html>" }, "attachments": [{ // opcional. Archivos adjuntos del correo "name": "image.png", // "name" - nombre del archivo "content": "iVBANA...AFTkuQmwC" // "content" - contenido codificado en base64 del archivo }, { "name": "file.pdf", "content": "JVBERi...AFTarEGC" }], "list_unsubscribe": "URL", // opcional. Permite establecer una URL personalizada para el encabezado "Link-Unsubscribe" "campaign": "CAMPAIGN_CODE", // opcional. Para asignar este mensaje de correo a una campaña particular, // añada un código de campaña aquí. "ignore_user_timezone": true, // opcional. "timezone": "America/New_York", // opcional. Especifique para enviar el mensaje según // la zona horaria configurada en el dispositivo del usuario. "filter": "FILTER_NAME", // opcional. Enviar el mensaje a usuarios específicos que cumplan las condiciones del filtro. "devices": [ // opcional. Especifique direcciones de correo para enviar mensajes dirigidos. "email_address1", // No más de 1000 direcciones en una matriz. "email_address2" // Si se establece, el mensaje solo se enviará a las direcciones en ], // la lista. Ignorado si se usa el Grupo de Aplicaciones. "use_auto_registration": true, // opcional. Registrar automáticamente los correos especificados en el parámetro "devices" "users": [ // opcional. Si se establece, el mensaje de correo solo se entregará a los "userId1", // IDs de usuario especificados (registrados vía llamada /registerEmail). "userId2" // No más de 1000 IDs de usuario en una matriz. ], // Si se especifica el parámetro "devices", // el parámetro "users" será ignorado. "dynamic_content_placeholders": { // opcional. Marcadores de posición para contenido dinámico en lugar de valores de etiquetas de dispositivo. "firstname": "John", "firstname_en": "John" }, "conditions": [ // opcional. Condiciones de segmentación, ver nota abajo. ["Country", "EQ", "BR"], ["Language", "EQ", "pt"] ], "from": { // opcional. Especifique un nombre y dirección de correo del remitente "name": "alias from", // para reemplazar el "Nombre de" y "Email de" predeterminados "email": "from-email@email.com" // configurados en las propiedades de la aplicación. }, "reply-to": { // opcional. Especifique una dirección de correo para reemplazar el "name": "alias reply to ", // "Responder a" predeterminado configurado en las propiedades de la aplicación. "email": "reply-to@email.com" }, "transactionId": "unique UUID", // opcional. Identificador único del mensaje para evitar reenvíos // en caso de problemas de red. Almacenado en el lado // of Pushwoosh durante 5 minutos. // Parámetros de limitación de frecuencia. Asegúrese de que la limitación de frecuencia global esté configurada en el Panel de Control. "capping_days": 30, // opcional. Cantidad de días para la limitación de frecuencia (máx 30 días) "capping_count": 10, // opcional. El número máximo de correos que se pueden enviar desde una // aplicación específica a un dispositivo particular dentro de un período // 'capping_days'. En caso de que el mensaje creado exceda el // límite 'capping_count' para un dispositivo, no será // enviado a ese dispositivo. "capping_exclude": true, // opcional. Si se establece en true, este correo no // contará para la limitación de correos futuros. "capping_avoid": true, // opcional. Si se establece en true, la limitación no se aplicará a // este correo específico. "send_rate": 100, // opcional. Límite de regulación. // Limita cuántos mensajes se pueden enviar por segundo entre todos los usuarios. // Ayuda a prevenir la sobrecarga del backend durante envíos de alto volumen. "send_rate_avoid": true, // opcional. Si se establece en true, el límite de regulación no se aplicará a // este correo específico. }] }}Ejemplos de respuesta
Anchor link to{ "status_code": 200, "status_message": "OK", "response": null}{ "status_code": 403, "status_message": "Token restrictions forbid this operation", "response": null}Condiciones de etiquetas
Anchor link toCada condición de etiqueta es una matriz como [tagName, operator, operand] donde
- tagName: nombre de una etiqueta
- operator: “EQ” | “IN” | “NOTEQ” | “NOTIN” | “LTE” | “GTE” | “BETWEEN”
- operand: cadena | entero | matriz | fecha
Descripción de operandos
Anchor link to- EQ: el valor de la etiqueta es igual al operando;
- IN: el valor de la etiqueta se cruza con el operando (el operando siempre debe ser una matriz);
- NOTEQ: el valor de la etiqueta no es igual a un operando;
- NOTIN: el valor de la etiqueta no se cruza con el operando (el operando siempre debe ser una matriz);
- GTE: el valor de la etiqueta es mayor o igual al operando;
- LTE: el valor de la etiqueta es menor o igual al operando;
- BETWEEN: el valor de la etiqueta es mayor o igual al valor mínimo del operando pero menor o igual al valor máximo del operando (el operando siempre debe ser una matriz).
Etiquetas de cadena
Anchor link toOperadores válidos: EQ, IN, NOTEQ, NOTIN
Operandos válidos:
- EQ, NOTEQ: el operando debe ser una cadena;
- IN, NOTIN: el operando debe ser una matriz de cadenas como
["value 1", "value 2", "value N"];
Etiquetas de enteros
Anchor link toOperadores válidos: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE
Operandos válidos:
- EQ, NOTEQ, GTE, LTE: el operando debe ser un entero;
- IN, NOTIN: el operando debe ser una matriz de enteros como
[value 1, value 2, value N]; - BETWEEN: el operando debe ser una matriz de enteros como
[min_value, max_value].
Etiquetas de fecha
Anchor link toOperadores válidos: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE
Operandos válidos:
"YYYY-MM-DD 00:00"(cadena)- marca de tiempo unix
1234567890(entero) "N days ago"(cadena) para operadores EQ, BETWEEN, GTE, LTE
Etiquetas booleanas
Anchor link toOperadores válidos: EQ
Operandos válidos: 0, 1, true, false
Etiquetas de lista
Anchor link toOperadores válidos: IN
Operandos válidos: el operando debe ser una matriz de cadenas como ["value 1", "value 2", "value N"].
registerEmail
Anchor link toRegistra una dirección de correo para la aplicación.
POST https://api.pushwoosh.com/json/1.3/registerEmail
Encabezados de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token real de API de Dispositivo. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| email* | string | Dirección de correo electrónico. |
| language | string | Configuración regional de idioma del dispositivo. Debe ser un código de dos letras minúsculas según el estándar ISO-639-1. |
| userId | string | ID de Usuario para asociar con la dirección de correo. |
| tz_offset | integer | Desplazamiento de zona horaria en segundos. |
| tags | object | Valores de etiquetas para asignar al dispositivo registrado. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh. "email":"email@domain.com", // requerido. Dirección de correo a registrar. "language": "en", // opcional. Configuración regional de idioma. "userId": "userId", // opcional. ID de usuario para asociar con la dirección de correo. "tz_offset": 3600, // opcional. Desplazamiento de zona horaria en segundos. "tags": { // opcional. Valores de etiquetas para establecer para el dispositivo registrado. "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1","string2"], // establece la lista de valores para Etiquetas de tipo Lista "DateTag": "2024-10-02 22:11", // nota: la hora debe estar en UTC "BooleanTag": true // valores válidos son: true, false } }}deleteEmail
Anchor link toElimina una dirección de correo de su base de usuarios.
POST https://api.pushwoosh.com/json/1.3/deleteEmail
Encabezados de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token real de API de Dispositivo. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application | string | Código de aplicación de Pushwoosh |
| string | Dirección de correo utilizada en la solicitud /registerEmail. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh "email": "email@domain.com" // requerido. Correo a eliminar de los suscriptores de la app. }}setEmailTags
Anchor link toEstablece valores de etiquetas para la dirección de correo.
POST https://api.pushwoosh.com/json/1.3/setEmailTags
Encabezados de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token real de API de Dispositivo. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application | string | Código de aplicación de Pushwoosh |
| string | Dirección de correo electrónico. | |
| tags | object | Objeto JSON de etiquetas para establecer, envíe ‘null’ para eliminar el valor. |
| userId | string | ID de Usuario asociado con la dirección de correo. |
{ "status_code": 200, "status_message": "OK", "response": { "skipped": [] }}{ "request": { "email": "email@domain.com", // requerido. Dirección de correo para establecer etiquetas. "application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh. "tags": { "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], "DateTag": "2024-10-02 22:11", // hora en UTC "BooleanTag": true // valores válidos son: true, false }, "userId": "userId" // opcional. ID de usuario asociado con la dirección de correo. }}registerEmailUser
Anchor link toAsocia un ID de Usuario externo con una dirección de correo especificada.
POST https://api.pushwoosh.com/json/1.3/registerEmailUser
Se puede usar en la llamada a la API /createEmailMessage (el parámetro ‘users’).
Encabezados de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token real de API de Dispositivo. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| email* | string | Dirección de correo electrónico. |
| userId* | string | ID de Usuario para asociar con la dirección de correo. |
| tz_offset | integer | Desplazamiento de zona horaria en segundos. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "status_code": 400, "status_message": "Request format is not valid."}{ "status_code": 403, "status_message": "Forbidden."}{ "request": { "application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh. "email": "email@domain.com", // requerido. Dirección de correo del usuario. "userId": "userId", // requerido. ID de usuario para asociar con la dirección de correo. "tz_offset": 3600 // opcional. Desplazamiento de zona horaria en segundos. }}