Saltar al contenido

API de Segmentación (Filtros)

createFilter

Anchor link to

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

Crea un nuevo filtro.

Cuerpo de la solicitud

NombreRequeridoTipoDescripción
auth*stringToken de acceso a la API desde el Panel de Control de Pushwoosh.
name*stringNombre del filtro.
filter_expression*string

Expresión construida según las reglas del lenguaje de Segmentación.
Ejemplo: T(“City”, eq, “Madrid”) para segmentar usuarios cuya ciudad es Madrid.

applicationNostringCódigo de aplicación de Pushwoosh. Este parámetro solo se puede usar con la Configuración de Alta Velocidad; omítalo en caso contrario.
expiration_dateNostringVencimiento del filtro. El filtro se eliminará automáticamente en la fecha especificada, a menos que se use en un Preset o en una Fuente RSS.

200

{
"status_code": 200,
"status_message": "OK",
"response": {
"name": "filter name"
}
}

Ejemplo

{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H",
"name": "City = Madrid",
"filter_expression": "T(\"City\", eq, \"Madrid\")",
"application": "B18XX-XXXXX",
"expiration_date": "2025-01-01"
}
}
// creando Filtros para Zonas Horarias
{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H", // Token de acceso a la API desde el Panel de Control de Pushwoosh
"name": "Timezone Filter",
"filter_expression": "T(\"Timezone\", BETWEEN, [\"UTC-12:00\", \"UTC+14:00\"])"
}
}

listFilters

Anchor link to

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

Devuelve una lista de los segmentos (filtros) disponibles con sus condiciones.

Cuerpo de la solicitud

NombreRequeridoTipoDescripción
auth*stringToken de acceso a la API desde el Panel de Control de Pushwoosh.
application*stringCódigo de aplicación de Pushwoosh

200

{
"status_code": 200,
"status_message": "OK",
"response": {
"filters": [{
"code": "52551-F2F42",
"name": "City = Madrid",
"filter_expression": "T(\"City\", eq, \"madrid\")",
"expiration_date": "2025-01-01",
"application": "B18XX-XXXXX"
}]
}
}

Ejemplo

{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H",
"application": "B18XX-XXXXX"
}
}

deleteFilter

Anchor link to

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

Elimina un filtro existente.

Cuerpo de la solicitud

NombreTipoDescripción
auth*stringToken de acceso a la API desde el Panel de Control de Pushwoosh.
name*stringNombre del filtro.
{
"status_code": 200,
"status_message": "OK",
"response": null
}
Ejemplo
{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H", // Token de acceso a la API desde el Panel de Control de Pushwoosh
"name": "filter name"
}
}

exportSegment

Anchor link to

POST https://api.pushwoosh.com/api/v2/audience/exportSegment

Una solicitud programada. Exporta la lista de suscriptores que cumplen con las condiciones del Filtro especificadas.

Cuerpo de la solicitud

Nombre
Requerido
TipoDescripción
auth*stringToken de acceso a la API desde el Panel de Control de Pushwoosh.
filterExpression*stringCondiciones del filtro
exportDataNoarrayDatos a exportar. Valores posibles: "hwids", "push_tokens", "users", "tags", "location". Incluir "location" añade las columnas Latitude y Longitude al CSV exportado. Si se omite exportData, Latitude y Longitude se incluyen en la exportación por defecto.
filterCodeNostringCódigo de filtro predefinido, se puede usar en lugar de filterExpression. Se puede obtener de la API /listFilters o de la barra de direcciones de su navegador al ver el filtro en el Panel de Control.
applicationCodeRequerido si está utilizando filterExpression o filterCode.stringCódigo de aplicación de Pushwoosh
generateExportNobooleanPor defecto establecido en true, y una respuesta contiene un enlace para descargar el archivo. Si es falso, solo se enviará el recuento de dispositivos en la respuesta.
formatNostringEstablece el formato del archivo exportado: “csv” o “json_each_line”. Si se omite, se genera el archivo CSV.
tagsListNoarrayEspecifica los tags a exportar. Para obtener solo los tags específicos, el array “exportData” debe contener el valor “tags”.
includeWithoutTokensNobooleanEstablezca en true para incluir usuarios sin tokens push en el archivo exportado. El valor por defecto es false.
{
"task_id": "177458"
}
Ejemplo
{
"auth": "yxoPUlwqm…………pIyEX4H", // requerido. Token de acceso a la API desde el Panel de Control de Pushwoosh
"filterExpression": "AT(\"12345-67890\", \"Name\", any)", // condiciones del filtro, consulte la guía del Lenguaje de Segmentación para la sintaxis
"filterCode": "12345-67890", // código de filtro predefinido, se puede usar en lugar de filterExpression
"applicationCode": "00000-AAAAA", // Requerido si está utilizando `filterExpression` o `filterCode`. Código de la aplicación Pushwoosh. Se puede obtener de la solicitud de la API /listFilters o de la barra de direcciones de su navegador mientras ve el filtro en el Panel de Control.
"generateExport": true, // si es falso, solo se enviará el recuento de dispositivos en la respuesta; por defecto, una respuesta contiene un enlace para descargar el archivo CSV
"format": "json_each_line", // formato del archivo para presentar los datos: "csv" – se descarga el archivo .csv; "json" – un archivo JSON con todos los dispositivos exportados; o "json_each_line" – una línea JSON para cada dispositivo. Si no se especifica, CSV es el formato por defecto.
"exportData": ["hwids", "tags"], // opcional. Datos a exportar. Valores posibles: "hwids", "push_tokens", "users", "tags", "location", "fcm_keys", "web keys"
"tagsList": ["Name", "Level"], // opcional. Especifica los tags a exportar. Para obtener solo los tags específicos, el valor "tags" debe enviarse dentro del array "exportData" o el "exportData" debe estar vacío.
"includeWithoutTokens": true // opcional. Establezca en true para incluir usuarios sin tokens push en el archivo exportado. El valor por defecto es false.
}

Por ejemplo, para exportar todos los suscriptores de una aplicación en particular, utilice las siguientes condiciones de Filtro:

{
"auth": "yxoPUlwqm…………pIyEX4H", // Token de acceso a la API desde el Panel de Control de Pushwoosh
"filterExpression": "A(\"AAAAA-BBBBB\")", // Expresión de filtro que hace referencia al segmento de la aplicación
"applicationCode": "AAAAA-BBBBB" // Código de la aplicación Pushwoosh requerido
}

exportSegment results

Anchor link to

POST https://api.pushwoosh.com/api/v2/audience/exportSegment/result

Recupera el enlace al CSV con los resultados de /exportSegment.

Cuerpo de la solicitud

NombreTipoDescripción
auth*StringToken de acceso a la API desde el Panel de Control de Pushwoosh.
task_id*StringIdentificador recibido en su respuesta de /exportSegment.
{
"devicesCount": "24735",
"csvFilename": "https://static.pushwoosh.com/segment-export/export_segment_XXXXX_XXXXX_xxxxxxxxxxxxxxxxx.csv.zip",
"status": "completed"
}

Pase el “task_id” recibido en su respuesta de /exportSegment en el cuerpo de la solicitud de /exportSegment/result.

En la respuesta de /exportSegment/result, recibirá el parámetro “filename”. Siga el enlace proporcionado en el valor de ese parámetro para descargar automáticamente un archivo ZIP. Descomprima el archivo para recuperar el archivo CSV o JSON (dependiendo del “format” especificado en su solicitud) que contiene los datos de los dispositivos.

A partir del 3 de abril de 2025 se requerirá autorización para descargar el archivo:

  • Si descarga a través de un navegador, simplemente inicie sesión en el Panel de Control de Pushwoosh para obtener acceso.
  • Si descarga a través de un software de servidor, incluya la siguiente cabecera en su solicitud: Authorization: Token YOUR_API_TOKEN

Si especifica el “exportData” en su solicitud /exportSegment, el archivo descargado contendrá solo los datos solicitados. Por defecto, el archivo contiene los siguientes datos de usuario:

CampoDescripciónEjemplo de valor
HwidID de hardware de un dispositivo01D1BA5C-AAAA-0000-BBBB-9B81CD5823C8
User IDID de Usuario que asocia un dispositivo con un usuario en particular. Si no se asigna un ID de Usuario, se utiliza el HWID.user8192
Push TokenIdentificador único asignado a un dispositivo por las pasarelas de mensajería en la nube. Más informacióneeeb2fd7…0fc3547
TypeTipo de plataforma (entero).1
Type (humanized)Tipo de plataforma (cadena de texto).iOS
AgeValor del tag por defecto Age.29
ApplicationVersionValor del tag por defecto Application Version.1.12.0.0
CityValor del tag por defecto City.us, boston
TagNameValor de un tag creado en su cuenta.TagValue