API Геозон
getNearestZone
Anchor link toВызывается внутренне из SDK. Получает параметры ближайшей геозоны и расстояние до нее. Также записывает местоположение устройства для гео-пушей.
POST https://api.pushwoosh.com/json/1.3/getNearestZoneПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| application | string | Да | Код приложения Pushwoosh |
| hwid | string | Да | Аппаратный ID устройства (HWID), используемый в запросе /registerDevice. |
| lat | string | Да | Широта устройства. |
| lng | string | Да | Долгота устройства. |
Пример запроса
Anchor link to{ "request": { "application": "APPLICATION_CODE", "hwid": "HWID", "lat": 10.12345, "lng": 28.12345 }}Пример на PHP
Anchor link to// См. http://gomoob.github.io/php-pushwoosh/get-nearest-zone.html
use Gomoob\Pushwoosh\Model\Request\GetNearestZoneRequest;
// Создает экземпляр запроса$request = GetNearestZoneRequest::create() ->setHwid('HWID') ->setLat(10.12345) ->setLng(28.12345);
// Вызов веб-сервиса '/getNearestZone'$response = $pushwoosh->getNearestZone($request);
if ($response->isOk()) { print 'Название зоны : ' . $response->getResponse()->getName(); print 'Широта : ' . $response->getResponse()->getLat(); print 'Долгота : ' . $response->getResponse()->getLng(); print 'Радиус : ' . $response->getResponse()->getRange(); print 'Расстояние : ' . $response->getResponse()->getDistance();} else { print 'Упс, операция не удалась :-('; print 'Код статуса : ' . $response->getStatusCode(); print 'Сообщение статуса : ' . $response->getStatusMessage();}addGeoZone
Anchor link toДобавляет Геозону в указанное приложение.
POST https://api.pushwoosh.com/json/1.3/addGeoZoneПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| auth | string | Да | Токен доступа API из Панели управления Pushwoosh. |
| application | string | Да | Код приложения Pushwoosh |
| geozones | array | Да | Параметры геозоны в виде JSON-массива. |
| geozones.name | string | Да | Название геозоны. |
| geozones.lat | string | Да | Широта геозоны. |
| geozones.lng | string | Да | Долгота геозоны. |
| geozones.cooldown | integer | Да | Период тишины после отправки уведомления (в секундах). |
| geozones.range | integer | Да | Радиус геозоны в метрах. Минимум 50. |
| geozones.content | string или object | Требуется, если presetCode пуст. | Содержимое сообщения геозоны. |
| geozones.presetCode | string | Требуется, если content пуст. | Пресет пуша для использования вместо content. |
| geozones.cluster | string | Нет | Укажите null, чтобы отвязать кластер от Геозоны. |
| geozones.campaign | string | Нет | Укажите null, чтобы отвязать кампанию от Геозоны. Если параметр опущен, значение кампании останется неизменным. Примечание: имеет более высокий приоритет, чем кампания в пресете. |
| geozones.timetable | object | Нет | Устанавливает интервалы расписания. |
Пример запроса
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // Токен доступа API из Панели управления Pushwoosh "application": "XXXXX-XXXXX", // Код приложения Pushwoosh "geozones": [{ "name": "Statue of George", // обязательно. Название геозоны. "lat": "40.70087797", // обязательно. Широта геозоны. "lng": "-73.931851387", // обязательно. Долгота геозоны. "cooldown": 60, // в секундах, обязательно. Период тишины после отправки уведомления "range": 50, // в метрах, минимум 50, обязательно. Радиус геозоны. "content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.", // или объект "presetCode": "AAAAA-BBBBB", // опционально. Пресет пуша может использоваться вместо контента "cluster": "GEOZONE CLUSTER CODE", // опционально. Будет применен период тишины кластера "campaign": "CAMPAIGN_CODE", // опционально. Укажите null, чтобы отвязать Кампанию от Геозоны "timetable": { // опционально "timezone": 1234, // в секундах "Mon": [ // доступные дни: Mon, Tue, Wed, Thu, Fri, Sat, Sun. Отправка пушей { "start": "04:11", "stop": "12:00" } ], "Sun": [ { // один или два интервала "start": "01:11", "stop": "17:00" }, { "start": "18:01", "stop": "23:59" } ] } }] }}updateGeoZone
Anchor link toОбновляет свойства Геозоны.
POST https://api.pushwoosh.com/json/1.3/updateGeoZoneПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| auth | string | Да | Токен доступа API из Панели управления Pushwoosh. |
| geoZoneId | string | Да | ID Геозоны из запроса /addGeoZone. |
| name | string | Нет | Новое название Геозоны. |
| cooldown | integer | Нет | Период тишины для обновления, в секундах. |
| status | integer | Нет | 0 - деактивирована, 1 - активирована. |
| content | string | Нет | Контент для пуш-уведомления Геозоны. Не может использоваться вместе с presetCode. |
| cluster | string | Нет | Новое название кластера. Укажите null, чтобы отвязать кластер от Геозоны. |
| campaign | string | Нет | Новый ID кампании. Укажите null, чтобы отвязать Кампанию от Геозоны. Если параметр опущен, значение Кампании не изменится. Имеет более высокий приоритет, чем Кампания из пресета. |
| lat | number | Нет | Широта геозоны. |
| lng | number | Нет | Долгота геозоны. |
| range | integer | Нет | Новый радиус в метрах. |
| timetable | object | Нет | Расписание Геозоны. См. дополнительную информацию ниже. |
Пример запроса
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // обязательно, токен доступа API из Панели управления Pushwoosh "geoZoneId": 100016750, // обязательно, из метода /addGeoZone "name": "new geozone name", // опционально "cooldown": 222, // в секундах, опционально "status": 0, // опционально, 0 - деактивирована, 1 - активирована "presetCode": "BBBBB-AAAAA", // опционально, не может использоваться вместе с "content" "content": "new geozone content", // опционально, не может использоваться вместе с "presetCode" "cluster": "GEOZONE CLUSTER CODE", // опционально. Укажите null, чтобы отвязать кластер от Геозоны "campaign": "CAMPAIGN_CODE", // опционально. Укажите null, чтобы отвязать Кампанию от Геозоны "lat": 10.56, // опционально, широта геозоны "lng": 12.523, // опционально, долгота геозоны "range": 500, // опционально, радиус геозоны "timetable": { // опционально "timezone": 1234, // в секундах "Mon": [ // доступные дни: Mon, Tue, Wed, Thu, Fri, Sat, Sun. Отправка пушей { "start": "04:11", "stop": "12:00" } ], "Sun": [ { // один или два интервала "start": "01:11", "stop": "17:00" }, { "start": "18:01", "stop": "23:59" } ] } }}deleteGeoZone
Anchor link toУдаляет Геозоны из приложения.
POST https://api.pushwoosh.com/json/1.3/deleteGeoZoneПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| auth | string | Да | Токен доступа API из Панели управления Pushwoosh. |
| application | string | Да | Код приложения Pushwoosh |
| geozones | string | Да | Массив ID или один ID Геозоны для удаления. |
Пример запроса
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // обязательно, токен доступа API из Панели управления Pushwoosh "application": "XXXXX-XXXXX", // обязательно, код приложения Pushwoosh "geozones": [550, 526] // обязательно, ID геозон }}addGeoZoneCluster
Anchor link toДобавляет Кластер Геозон в приложение.
POST https://api.pushwoosh.com/json/1.3/addGeoZoneClusterПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| auth | string | Да | Токен доступа API из Панели управления Pushwoosh. |
| application | string | Да | Код приложения Pushwoosh |
| name | string | Да | Название кластера. |
| cooldown | integer | Да | Задержка перед тем, как один пользователь сможет получить то же самое сообщение из Кластера Геозон, в секундах. |
Пример запроса
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // обязательно, токен доступа API из Панели управления Pushwoosh "application": "XXXXX-XXXXX", // обязательно, код приложения Pushwoosh "name": "Raccoon city", // обязательно, название кластера "cooldown": 3210 // обязательно, в секундах }}deleteGeoZoneCluster
Anchor link toУдаляет Кластер Геозон из приложения.
POST https://api.pushwoosh.com/json/1.3/deleteGeoZoneClusterПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| auth | string | Да | Токен доступа API из Панели управления Pushwoosh. |
| application | string | Да | Код приложения Pushwoosh |
| geoZoneCluster | string | Да | ID кластера Геозон для удаления. |
Пример запроса
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // обязательно, токен доступа API из Панели управления Pushwoosh "application": "XXXXX-XXXXX", // обязательно, код приложения Pushwoosh "geoZoneCluster": "EA1CE-69405" // обязательно, ID кластера, полученный из запроса /addGeoZoneCluster }}listGeoZones
Anchor link toПолучает список Геозон для приложения.
POST https://api.pushwoosh.com/json/1.3/listGeoZonesПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| auth | string | Да | Токен доступа API из Панели управления Pushwoosh. |
| application | string | Да | Код приложения Pushwoosh |
Пример запроса
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // обязательно, токен доступа API из Панели управления Pushwoosh "application": "XXXXX-XXXXX" // обязательно, код приложения Pushwoosh }}listGeoZoneClusters
Anchor link toПолучает список кластеров Геозон для приложения.
POST https://api.pushwoosh.com/json/1.3/listGeoZoneClustersПараметры тела запроса
Anchor link to| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| auth | string | Да | Токен доступа API из Панели управления Pushwoosh. |
| application | string | Да | Код приложения Pushwoosh |
Пример запроса
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // обязательно, токен доступа API из Панели управления Pushwoosh "application": "XXXXX-XXXXX" // обязательно, код приложения Pushwoosh }}