API de Geozonas
getNearestZone
Anchor link toChamado internamente pelo SDK. Recupera os parâmetros da geozona mais próxima e a distância até ela. Também registra a localização do dispositivo para notificações push geolocalizadas.
POST https://api.pushwoosh.com/json/1.3/getNearestZoneParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| application | string | Sim | Código da aplicação Pushwoosh |
| hwid | string | Sim | ID de hardware do dispositivo usado na requisição /registerDevice. |
| lat | string | Sim | Latitude do dispositivo. |
| lng | string | Sim | Longitude do dispositivo. |
Exemplo de requisição
Anchor link to{ "request": { "application": "APPLICATION_CODE", "hwid": "HWID", "lat": 10.12345, "lng": 28.12345 }}Exemplo em PHP
Anchor link to// See http://gomoob.github.io/php-pushwoosh/get-nearest-zone.html
use Gomoob\Pushwoosh\Model\Request\GetNearestZoneRequest;
// Creates the request instance$request = GetNearestZoneRequest::create() ->setHwid('HWID') ->setLat(10.12345) ->setLng(28.12345);
// Call the '/getNearestZone' Web Service$response = $pushwoosh->getNearestZone($request);
if ($response->isOk()) { print 'Zone name : ' . $response->getResponse()->getName(); print 'Latitude : ' . $response->getResponse()->getLat(); print 'Longitude : ' . $response->getResponse()->getLng(); print 'Range : ' . $response->getResponse()->getRange(); print 'Distance : ' . $response->getResponse()->getDistance();} else { print 'Oops, the operation failed :-('; print 'Status code : ' . $response->getStatusCode(); print 'Status message : ' . $response->getStatusMessage();}addGeoZone
Anchor link toAdiciona uma Geozona a um aplicativo específico.
POST https://api.pushwoosh.com/json/1.3/addGeoZoneParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| auth | string | Sim | Token de acesso à API do Painel de Controle Pushwoosh. |
| application | string | Sim | Código da aplicação Pushwoosh |
| geozones | array | Sim | Parâmetros da Geozona como um array JSON. |
| geozones.name | string | Sim | Nome da Geozona. |
| geozones.lat | string | Sim | Latitude da Geozona. |
| geozones.lng | string | Sim | Longitude da Geozona. |
| geozones.cooldown | integer | Sim | Período de silêncio após o envio de uma notificação (em segundos). |
| geozones.range | integer | Sim | Alcance da Geozona (em metros, de 50 a 1000). |
| geozones.content | string or object | Obrigatório se presetCode estiver vazio. | Conteúdo da mensagem da Geozona. |
| geozones.presetCode | string | Obrigatório se content estiver vazio. | Preset de Push para usar em vez de content. |
| geozones.cluster | string | Não | Especifique null para desvincular um cluster da Geozona. |
| geozones.campaign | string | Não | Especifique null para desvincular uma campanha da Geozona. Se omitido, o valor da campanha permanece inalterado. Nota: Tem prioridade maior que a campanha no preset. |
| geozones.timetable | object | Não | Define intervalos de horário. |
Exemplo de requisição
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // API access token from Pushwoosh Control Panel "application": "XXXXX-XXXXX", // Pushwoosh application code "geozones": [{ "name": "Statue of George", // required. Geozone name. "lat": "40.70087797", // required. Geozone latitude. "lng": "-73.931851387", // required. Geozone longitude. "cooldown": 60, // in seconds, required. Silent period after sending a notification "range": 50, // in meters, from 50 to 1000, required. Range of the geozone. "content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.", // or object "presetCode": "AAAAA-BBBBB", // optional. Push preset could be used instead of content "cluster": "GEOZONE CLUSTER CODE", // optional. Cluster's cooldown period will be applied "campaign": "CAMPAIGN_CODE", // optional. Specify null to unbind Campaign from Geozone "timetable": { // optional "timezone": 1234, // in seconds "Mon": [ // available days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. Push sending { "start": "04:11", "stop": "12:00" } ], "Sun": [ { // one or two intervals "start": "01:11", "stop": "17:00" }, { "start": "18:01", "stop": "23:59" } ] } }] }}updateGeoZone
Anchor link toAtualiza as propriedades da Geozona.
POST https://api.pushwoosh.com/json/1.3/updateGeoZoneParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| auth | string | Sim | Token de acesso à API do Painel de Controle Pushwoosh. |
| geoZoneId | string | Sim | ID da Geozona da requisição /addGeoZone. |
| name | string | Não | Novo nome da Geozona. |
| cooldown | integer | Não | Cooldown para atualizar, em segundos. |
| status | integer | Não | 0 - desativada, 1 - ativada. |
| content | string | Não | Conteúdo para a notificação push da Geozona. Não pode ser usado com presetCode. |
| cluster | string | Não | Novo nome do cluster. Especifique null para desvincular o cluster da Geozona. |
| campaign | string | Não | Novo ID da campanha. Especifique null para desvincular a Campanha da Geozona. Se omitido, o valor da Campanha não será alterado. Tem prioridade maior que uma Campanha de um preset. |
| lat | number | Não | Latitude da Geozona. |
| lng | number | Não | Longitude da Geozona. |
| range | integer | Não | Novo alcance em metros. |
| timetable | object | Não | Tabela de horários da Geozona. Veja mais informações abaixo. |
Exemplo de requisição
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control "geoZoneId": 100016750, // required, from /addGeoZone method "name": "new geozone name", // optional "cooldown": 222, // in seconds, optional "status": 0, // optional, 0 - deactivated, 1 - activated "presetCode": "BBBBB-AAAAA", // optional, cannot be used along with "content" "content": "new geozone content", // optional, cannot be used along with "presetCode" "cluster": "GEOZONE CLUSTER CODE", // optional. Specify null to unbind cluster from Geozone "campaign": "CAMPAIGN_CODE", // optional. Specify null to unbind Campaign from Geozone "lat": 10.56, // optional, geozone latitude "lng": 12.523, // optional, geozone longitude "range": 500, // optional, geozone range "timetable": { // optional "timezone": 1234, // in seconds "Mon": [ // available days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. Push sending { "start": "04:11", "stop": "12:00" } ], "Sun": [ { // one or two intervals "start": "01:11", "stop": "17:00" }, { "start": "18:01", "stop": "23:59" } ] } }}deleteGeoZone
Anchor link toRemove Geozonas do aplicativo.
POST https://api.pushwoosh.com/json/1.3/deleteGeoZoneParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| auth | string | Sim | Token de acesso à API do Painel de Controle Pushwoosh. |
| application | string | Sim | Código da aplicação Pushwoosh |
| geozones | string | Sim | Array de IDs ou um único ID de uma Geozona para remover. |
Exemplo de requisição
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control "application": "XXXXX-XXXXX", // required, Pushwoosh application code "geozones": [550, 526] // required, geozones IDs }}addGeoZoneCluster
Anchor link toAdiciona um Cluster de Geozonas ao aplicativo.
POST https://api.pushwoosh.com/json/1.3/addGeoZoneClusterParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| auth | string | Sim | Token de acesso à API do Painel de Controle Pushwoosh. |
| application | string | Sim | Código da aplicação Pushwoosh |
| name | string | Sim | Nome do cluster. |
| cooldown | integer | Sim | Um atraso antes que um único usuário possa receber a mesma mensagem do Cluster de Geozonas, em segundos. |
Exemplo de requisição
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control "application": "XXXXX-XXXXX", // required, Pushwoosh application code "name": "Raccoon city", // required, cluster name "cooldown": 3210 // required, in seconds }}deleteGeoZoneCluster
Anchor link toRemove um Cluster de Geozonas do aplicativo.
POST https://api.pushwoosh.com/json/1.3/deleteGeoZoneClusterParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| auth | string | Sim | Token de acesso à API do Painel de Controle Pushwoosh. |
| application | string | Sim | Código da aplicação Pushwoosh |
| geoZoneCluster | string | Sim | ID do cluster de Geozonas para remover. |
Exemplo de requisição
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control "application": "XXXXX-XXXXX", // required, Pushwoosh application code "geoZoneCluster": "EA1CE-69405" // required, cluster ID obtained from the /addGeoZoneCluster request }}listGeoZones
Anchor link toRecupera uma lista de Geozonas para o aplicativo.
POST https://api.pushwoosh.com/json/1.3/listGeoZonesParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| auth | string | Sim | Token de acesso à API do Painel de Controle Pushwoosh. |
| application | string | Sim | Código da aplicação Pushwoosh |
Exemplo de requisição
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control "application": "XXXXX-XXXXX" // required, Pushwoosh application code }}listGeoZoneClusters
Anchor link toRecupera uma lista de clusters de Geozonas para o aplicativo.
POST https://api.pushwoosh.com/json/1.3/listGeoZoneClustersParâmetros do corpo da requisição
Anchor link to| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| auth | string | Sim | Token de acesso à API do Painel de Controle Pushwoosh. |
| application | string | Sim | Código da aplicação Pushwoosh |
Exemplo de requisição
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control "application": "XXXXX-XXXXX" // required, Pushwoosh application code }}