Pular para o conteúdo

API de Segmentação (Filtros)

createFilter

Anchor link to

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

Cria um novo filtro.

Corpo da solicitação

NomeObrigatórioTipoDescrição
auth*SimstringToken de acesso à API do Painel de Controle da Pushwoosh.
name*SimstringNome do filtro.
filter_expression*Simstring

Expressão construída de acordo com as regras da Linguagem de Segmentação.
Exemplo: T(“City”, eq, “Madrid”) para segmentar usuários cuja cidade é Madrid.

applicationNãostringCódigo do aplicativo Pushwoosh. Este parâmetro é utilizável apenas com a Configuração de Alta Velocidade; omita caso contrário.
expiration_dateNãostringExpiração do filtro. O filtro será excluído automaticamente na data especificada, a menos que seja usado em um Preset ou em um Feed RSS.

200

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

Exemplo

{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H",
"name": "City = Madrid",
"filter_expression": "T(\"City\", eq, \"Madrid\")",
"application": "B18XX-XXXXX",
"expiration_date": "2025-01-01"
}
}
// criando Filtros para Fusos Horários
{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H", // token de acesso à API do Painel de Controle da 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

Retorna uma lista de segmentos (filtros) disponíveis com suas condições.

Corpo da Solicitação

NomeObrigatórioTipoDescrição
auth*SimstringToken de acesso à API do Painel de Controle da Pushwoosh.
application*SimstringCódigo do aplicativo 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"
}]
}
}

Exemplo

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

deleteFilter

Anchor link to

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

Exclui um filtro existente.

Corpo da Solicitação

NomeTipoDescrição
auth*stringToken de acesso à API do Painel de Controle da Pushwoosh.
name*stringNome do filtro.
{
"status_code": 200,
"status_message": "OK",
"response": null
}
Exemplo
{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H", // token de acesso à API do Painel de Controle da Pushwoosh
"name": "filter name"
}
}

exportSegment

Anchor link to

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

Uma solicitação agendada. Exporta a lista de assinantes que se enquadram nas condições de Filtro especificadas.

Corpo da solicitação

Nome
Obrigatório
TipoDescrição
auth*SimstringToken de acesso à API do Painel de Controle da Pushwoosh.
filterExpression*SimstringCondições do filtro
exportDataNãoarrayDados para exportar. Valores possíveis: "hwids", "push_tokens", "users", "tags", "location". Incluir "location" adiciona as colunas Latitude e Longitude ao CSV exportado. Se exportData for omitido, Latitude e Longitude são incluídos na exportação por padrão.
filterCodeNãostringCódigo de filtro pré-fabricado, pode ser usado em vez de filterExpression. Pode ser obtido da API /listFilters ou da barra de endereço do seu navegador ao visualizar o filtro no Painel de Controle.
applicationCodeObrigatório se você estiver usando filterExpression ou filterCode.stringCódigo do aplicativo Pushwoosh
generateExportNãobooleanPor padrão, definido como true, e uma resposta contém um link para baixar o arquivo. Se for falso, apenas a contagem de dispositivos será enviada na resposta.
formatNãostringDefine o formato do arquivo exportado: “csv” ou “json_each_line”. Se omitido, o arquivo CSV é gerado.
tagsListNãoarrayEspecifica as tags a serem exportadas. Para obter apenas as tags específicas, o array “exportData” deve conter o valor “tags”.
includeWithoutTokensNãobooleanDefina como true para incluir usuários sem tokens push no arquivo exportado. O padrão é false.
{
"task_id": "177458"
}
Exemplo
{
"auth": "yxoPUlwqm…………pIyEX4H", // obrigatório. Token de acesso à API do Painel de Controle da Pushwoosh
"filterExpression": "AT(\"12345-67890\", \"Name\", any)", // condições do filtro, consulte o guia da Linguagem de Segmentação para a sintaxe
"filterCode": "12345-67890", // código de filtro pré-fabricado, pode ser usado em vez de filterExpression
"applicationCode": "00000-AAAAA", // Obrigatório se você estiver usando `filterExpression` ou `filterCode`. Código do aplicativo Pushwoosh. Pode ser obtido da solicitação da API /listFilters ou da barra de endereço do seu navegador ao visualizar o filtro no Painel de Controle.
"generateExport": true, // se for falso, apenas a contagem de dispositivos será enviada na resposta; por padrão, uma resposta contém um link para baixar o arquivo CSV
"format": "json_each_line", // formato do arquivo para apresentar os dados: "csv" – o arquivo .csv é baixado; "json" – um arquivo JSON com todos os dispositivos exportados; ou "json_each_line" – uma linha JSON para cada dispositivo. Se não especificado, CSV é o formato padrão.
"exportData": ["hwids", "tags"], // opcional. Dados para exportar. Valores possíveis: "hwids", "push_tokens", "users", "tags", "location", "fcm_keys", "web keys"
"tagsList": ["Name", "Level"], // opcional. Especifica as tags a serem exportadas. Para obter apenas as tags específicas, o valor "tags" deve ser enviado dentro do array "exportData" ou o "exportData" deve estar vazio.
"includeWithoutTokens": true // opcional. Defina como true para incluir usuários sem tokens push no arquivo exportado. O padrão é false.
}

Por exemplo, para exportar todos os assinantes de um aplicativo específico, use as seguintes condições de Filtro:

{
"auth": "yxoPUlwqm…………pIyEX4H", // token de acesso à API do Painel de Controle da Pushwoosh
"filterExpression": "A(\"AAAAA-BBBBB\")", // Expressão de filtro referenciando o segmento do aplicativo
"applicationCode": "AAAAA-BBBBB" // Código do aplicativo Pushwoosh obrigatório
}

resultados de exportSegment

Anchor link to

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

Recupera o link para o CSV com os resultados de /exportSegment.

Corpo da Solicitação

NomeTipoDescrição
auth*StringToken de acesso à API do Painel de Controle da Pushwoosh.
task_id*StringIdentificador recebido na sua resposta /exportSegment.
{
"devicesCount": "24735",
"csvFilename": "https://static.pushwoosh.com/segment-export/export_segment_XXXXX_XXXXX_xxxxxxxxxxxxxxxxx.csv.zip",
"status": "completed"
}

Passe o “task_id” recebido na sua resposta /exportSegment no corpo da solicitação /exportSegment/result.

Na resposta /exportSegment/result, você receberá o parâmetro “filename”. Siga o link fornecido no valor desse parâmetro para baixar automaticamente um arquivo ZIP. Descompacte o arquivo para recuperar o arquivo CSV ou JSON (dependendo do “format” especificado em sua solicitação) contendo os dados dos dispositivos.

A partir de 3 de abril de 2025, a autorização será necessária para baixar o arquivo:

  • Se estiver baixando via navegador, basta fazer login no Painel de Controle da Pushwoosh para obter acesso.
  • Se estiver baixando via software de servidor, inclua o seguinte cabeçalho em sua solicitação: Authorization: Token YOUR_API_TOKEN

Se você especificar o “exportData” em sua solicitação /exportSegment, o arquivo baixado conterá apenas os dados solicitados. Por padrão, o arquivo contém os seguintes dados do usuário:

CampoDescriçãoExemplo de valor
HwidID de Hardware de um dispositivo01D1BA5C-AAAA-0000-BBBB-9B81CD5823C8
User IDID do Usuário associando um dispositivo a um usuário específico. Se nenhum ID de Usuário for atribuído, o HWID é usado.user8192
Push TokenIdentificador único atribuído a um dispositivo por gateways de mensagens na nuvem. Saiba maiseeeb2fd7…0fc3547
TypeTipo de plataforma (inteiro).1
Type (humanized)Tipo de plataforma (string).iOS
AgeValor da tag padrão Idade.29
ApplicationVersionValor da tag padrão Versão do Aplicativo.1.12.0.0
CityValor da tag padrão Cidade.us, boston
TagNameValor de uma tag criada em sua conta.TagValue