Saltar al contenido

API de Email

createEmailMessage

Anchor link to

Crea un mensaje de email.

POST https://api.pushwoosh.com/json/1.3/createEmailMessage

Parámetros del cuerpo de la solicitud

Anchor link to
NombreTipo
RequeridoDescripción
authstringToken de acceso a la API desde el Panel de Control de Pushwoosh.
applicationstringCódigo de aplicación de Pushwoosh
notificationsarrayArray JSON que contiene los detalles del mensaje de email. Consulte la tabla de Parámetros de Notificaciones a continuación.

Parámetros de notificaciones

Anchor link to
NombreTipo
RequeridoDescripción
send_datestringDefine cuándo enviar el email. Formato: YYYY-MM-DD HH:mm o "now".
presetstringCódigo de preajuste de email. Cópielo de la barra de URL del Editor de Contenido de Email en el Panel de Control de Pushwoosh.
subjectstring o objectNoLínea de asunto del email. El email siempre estará en el idioma del contenido. Si subject no contiene un idioma que coincida con content, el asunto estará vacío.
contentstring o objectNoEl contenido del cuerpo del email. Puede ser una cadena para contenido HTML simple o un objeto para versiones localizadas.
attachmentsarrayNoLos archivos adjuntos del email. Solo se permiten dos archivos adjuntos. Cada archivo adjunto no debe exceder 1MB (codificado en base64).
list_unsubscribestringNoPermite establecer una URL personalizada para el encabezado “Link-Unsubscribe”.
campaignstringNoCódigo de campaña para asociar el email con una campaña específica.
ignore_user_timezonebooleanNoSi es true, envía el email inmediatamente, ignorando las zonas horarias del usuario.
timezonestringNoEnvía el email según la zona horaria del usuario. Ejemplo: "America/New_York".
filterstringNoEnvía el email a los usuarios que coinciden con una condición de filtro específica.
devicesarrayNoLista de direcciones de email (máximo 1000) para enviar emails dirigidos. Si se usa, el mensaje se envía solo a estas direcciones. Se ignora si se utiliza el Grupo de Aplicaciones.
use_auto_registrationbooleanNoSi es true, registra automáticamente los emails del parámetro devices.
usersarrayNoSi se establece, el mensaje de email solo se entregará a los User ID especificados (registrados a través de la llamada /registerEmail). No más de 1000 ID de usuario en un array. Si se especifica el parámetro “devices”, el parámetro “users” será ignorado.
dynamic_content_placeholdersobjectNoMarcadores de posición para contenido dinámico en lugar de los valores de las etiquetas del dispositivo.
conditionsarrayNoCondiciones de segmentación usando etiquetas. Ejemplo: [["Country", "EQ", "BR"]].
fromobjectNoEspecifique un nombre y un email de remitente personalizados, anulando el predeterminado en las propiedades de la aplicación.
reply-toobjectNoEspecifique un email de respuesta personalizado, anulando el predeterminado en las propiedades de la aplicación.
email_typestringNoEspecifique el tipo de email: "marketing" o "transactional".
email_categorystringRequerido cuando email_type es "marketing".Especifique uno de los nombres de categoría configurados en el centro de preferencias de suscripción (por ejemplo, Newsletter, Promocional, Actualizaciones de Producto).
transactionIdstringNoIdentificador de mensaje único para evitar el reenvío en caso de problemas de red. Se almacena en el lado de Pushwoosh durante 5 minutos.
capping_daysintegerNoEl número de días (máximo 30) para aplicar el límite de frecuencia por dispositivo. Nota: Asegúrese de que el límite de frecuencia global esté configurado en el Panel de Control.
capping_countintegerNoEl número máximo de emails que se pueden enviar desde una aplicación específica a un dispositivo particular dentro de un período de capping_days. En caso de que el mensaje creado exceda el límite de capping_count para un dispositivo, no se enviará a ese dispositivo.
capping_excludebooleanNoSi se establece en true, este email no se contará para el límite de frecuencia de futuros emails.
capping_avoidbooleanNoSi se establece en true, el límite de frecuencia no se aplicará a este email específico.
send_rateintegerNoLimita cuántos mensajes se pueden enviar por segundo a todos los usuarios. Ayuda a prevenir la sobrecarga del backend durante envíos de gran volumen.
send_rate_avoidbooleanNoSi se establece en true, el límite de regulación no se aplicará a este email específico.

Ejemplo de solicitud

Anchor link to
{
"request": {
"auth": "API_ACCESS_TOKEN", // requerido. Token de acceso a la API desde el 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 de preajuste 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 email.
"de": "subject de",
"en": "subject en"
},
"content": { // opcional. Contenido del cuerpo del email.
"de": "<html><body>de Hello, moto</body></html>",
"default": "<html><body>default Hello, moto</body></html>"
},
"attachments": [{ // opcional. Archivos adjuntos del email
"name": "image.png", // "name" - nombre del archivo
"content": "iVBANA...AFTkuQmwC" // "content" - contenido del archivo codificado en base64
}, {
"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 email a una campaña particular,
// agregue un código de campaña aquí.
"ignore_user_timezone": true, // opcional.
"timezone": "America/New_York", // opcional. Especifique para enviar el mensaje de acuerdo con
// la zona horaria establecida en el dispositivo del usuario.
"filter": "FILTER_NAME", // opcional. Envíe el mensaje a usuarios específicos que cumplan con las condiciones del filtro.
"devices": [ // opcional. Especifique las direcciones de email para enviar mensajes de email dirigidos.
"email_address1", // No más de 1000 direcciones en un array.
"email_address2" // Si se establece, el mensaje solo se enviará a las direcciones de
], // la lista. Se ignora si se utiliza el Grupo de Aplicaciones.
"use_auto_registration": true, // opcional. Registra automáticamente los emails especificados en el parámetro "devices"
"users": [ // opcional. Si se establece, el mensaje de email solo se entregará a los
"userId1", // ID de usuario especificados (registrados a través de la llamada /registerEmail).
"userId2" // No más de 1000 ID de usuario en un array.
], // 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 los valores de las etiquetas del dispositivo.
"firstname": "John",
"firstname_en": "John"
},
"conditions": [ // opcional. Condiciones de segmentación, vea la nota a continuación.
["Country", "EQ", "BR"],
["Language", "EQ", "pt"]
],
"from": { // opcional. Especifique un nombre de remitente y una dirección de email de remitente
"name": "alias from", // para reemplazar el "Nombre del remitente" y el "Email del remitente" predeterminados
"email": "from-email@email.com" // configurados en las propiedades de la aplicación.
},
"reply-to": { // opcional. Especifique una dirección de email para reemplazar
"name": "alias reply to ", // el "Responder a" predeterminado configurado en las propiedades de la aplicación.
"email": "reply-to@email.com"
},
"email_type": "marketing", // opcional. "marketing" o "transactional".
"email_category": "category name",// requerido cuando email_type es "marketing". Nombre de la categoría.
"transactionId": "unique UUID", // opcional. Identificador de mensaje único para evitar el reenvío
// en caso de problemas de red. Almacenado en el lado
// de Pushwoosh durante 5 minutos.
// Parámetros de límite de frecuencia. Asegúrese de que el límite de frecuencia global esté configurado en el Panel de Control.
"capping_days": 30, // opcional. Cantidad de días para el límite de frecuencia (máximo 30 días)
"capping_count": 10, // opcional. El número máximo de emails que se pueden enviar desde una
// aplicación específica a un dispositivo particular dentro de un período de 'capping_days'.
// En caso de que el mensaje creado exceda el
// límite de 'capping_count' para un dispositivo, no
// se enviará a ese dispositivo.
"capping_exclude": true, // opcional. Si se establece en true, este email no
// se contará para el límite de frecuencia de futuros emails.
"capping_avoid": true, // opcional. Si se establece en true, el límite de frecuencia no se aplicará a
// este email específico.
"send_rate": 100, // opcional. Límite de regulación.
// Limita cuántos mensajes se pueden enviar por segundo a todos los usuarios.
// Ayuda a prevenir la sobrecarga del backend durante envíos de gran volumen.
"send_rate_avoid": true, // opcional. Si se establece en true, el límite de regulación no se aplicará a
// este email específico.
}]
}
}

Ejemplos de respuesta

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": null
}

Condiciones de etiqueta

Anchor link to

Cada condición de etiqueta es un array como [tagName, operator, operand] donde

  • tagName: nombre de una etiqueta
  • operator: “EQ” | “IN” | “NOTEQ” | “NOTIN” | “LTE” | “GTE” | “BETWEEN”
  • operand: string | integer | array | date

Descripción del operando

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 un array);
  • 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 un array);
  • GTE: el valor de la etiqueta es mayor o igual que el operando;
  • LTE: el valor de la etiqueta es menor o igual que el operando;
  • BETWEEN: el valor de la etiqueta es mayor o igual que el valor mínimo del operando pero menor o igual que el valor máximo del operando (el operando siempre debe ser un array).

Etiquetas de cadena

Anchor link to

Operadores válidos: EQ, IN, NOTEQ, NOTIN
Operandos válidos:

  • EQ, NOTEQ: el operando debe ser una cadena;
  • IN, NOTIN: el operando debe ser un array de cadenas como ["valor 1", "valor 2", "valor N"];

Etiquetas de entero

Anchor link to

Operadores 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 un array de enteros como [valor 1, valor 2, valor N];
  • BETWEEN: el operando debe ser un array de enteros como [valor_min, valor_max].

Etiquetas de fecha

Anchor link to

Operadores válidos: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE
Operandos válidos:

  • "YYYY-MM-DD 00:00" (cadena)
  • marca de tiempo unix 1234567890 (entero)
  • "hace N días" (cadena) para los operadores EQ, BETWEEN, GTE, LTE

Etiquetas booleanas

Anchor link to

Operadores válidos: EQ
Operandos válidos: 0, 1, true, false

Etiquetas de lista

Anchor link to

Operadores válidos: IN
Operandos válidos: el operando debe ser un array de cadenas como ["valor 1", "valor 2", "valor N"].

registerEmail

Anchor link to

Registra la dirección de email para la aplicación.

POST https://api.pushwoosh.com/json/1.3/registerEmail

Encabezados de la solicitud

Anchor link to
NombreRequeridoValorDescripción
AuthorizationToken XXXXToken de Dispositivo de la API para acceder a la API de Dispositivo. Reemplace XXXX con su token real de la API de Dispositivo.

Cuerpo de la solicitud

Anchor link to
NombreTipoDescripción
application*stringCódigo de aplicación de Pushwoosh
email*stringDirección de email.
languagestringConfiguración regional de idioma del dispositivo. Debe ser un código de dos letras en minúsculas según el estándar ISO-639-1.
userIdstringUser ID para asociar con la dirección de email.
tz_offsetintegerDesplazamiento de la zona horaria en segundos.
tagsobjectValores de etiqueta para asignar al dispositivo registrado.
{
"status_code": 200,
"status_message": "OK",
"response": null
}
Ejemplo
{
"request": {
"application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh.
"email":"email@domain.com", // requerido. Dirección de email a registrar.
"language": "en", // opcional. Configuración regional de idioma.
"userId": "userId", // opcional. User ID para asociar con la dirección de email.
"tz_offset": 3600, // opcional. Desplazamiento de la zona horaria en segundos.
"tags": { // opcional. Valores de etiqueta para establecer en 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", // tenga en cuenta que la hora debe estar en UTC
"BooleanTag": true // los valores válidos son: true, false
}
}
}

deleteEmail

Anchor link to

Elimina la dirección de email de su base de usuarios.

POST https://api.pushwoosh.com/json/1.3/deleteEmail

Encabezados de la solicitud

Anchor link to
NombreRequeridoValorDescripción
AuthorizationToken XXXXToken de Dispositivo de la API para acceder a la API de Dispositivo. Reemplace XXXX con su token real de la API de Dispositivo.

Cuerpo de la solicitud

Anchor link to
NombreTipoDescripción
applicationstringCódigo de aplicación de Pushwoosh
emailstringDirección de email utilizada en la solicitud /registerEmail.
{
"status_code": 200,
"status_message": "OK",
"response": null
}
Ejemplo
{
"request": {
"application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh
"email": "email@domain.com" // requerido. Email a eliminar de los suscriptores de la aplicación.
}
}

setEmailTags

Anchor link to

Establece los valores de las etiquetas para la dirección de email.

POST https://api.pushwoosh.com/json/1.3/setEmailTags

Encabezados de la solicitud

Anchor link to
NombreRequeridoValorDescripción
AuthorizationToken XXXXToken de Dispositivo de la API para acceder a la API de Dispositivo. Reemplace XXXX con su token real de la API de Dispositivo.

Cuerpo de la solicitud

Anchor link to
NombreTipoDescripción
applicationstringCódigo de aplicación de Pushwoosh
emailstringDirección de email.
tagsobjectObjeto JSON de etiquetas para establecer, envíe ‘null’ para eliminar el valor.
userIdstringUser ID asociado con la dirección de email.
{
"status_code": 200,
"status_message": "OK",
"response": {
"skipped": []
}
}
Ejemplo
{
"request": {
"email": "email@domain.com", // requerido. Dirección de email para la que se establecerán las 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 // los valores válidos son: true, false
},
"userId": "userId" // opcional. User ID asociado con la dirección de email.
}
}

registerEmailUser

Anchor link to

Asocia un User ID externo con una dirección de email 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
NombreRequeridoValorDescripción
AuthorizationToken XXXXToken de Dispositivo de la API para acceder a la API de Dispositivo. Reemplace XXXX con su token real de la API de Dispositivo.

Cuerpo de la solicitud

Anchor link to
NombreTipoDescripción
application*stringCódigo de aplicación de Pushwoosh
email*stringDirección de email.
userId*stringUser ID para asociar con la dirección de email.
tz_offsetintegerDesplazamiento de la zona horaria en segundos.
{
"status_code": 200,
"status_message": "OK",
"response": null
}
Ejemplo
{
"request": {
"application": "APPLICATION_CODE", // requerido. Código de aplicación de Pushwoosh.
"email": "email@domain.com", // requerido. Dirección de email del usuario.
"userId": "userId", // requerido. User ID para asociar con la dirección de email.
"tz_offset": 3600 // opcional. Desplazamiento de la zona horaria en segundos.
}
}