Перейти к содержанию

Geozones API

getNearestZone

Anchor link to

Вызывается внутри SDK. Получает параметры ближайшей геозоны и расстояние до нее. Также записывает местоположение устройства для гео-пуш-уведомлений.

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

Параметры тела запроса

Anchor link to
ПараметрТип
ОбязательноОписание
applicationstringДаPushwoosh application code
hwidstringДаHardware device ID, используемый в запросе /registerDevice.
latstringДаШирота устройства.
lngstringДаДолгота устройства.

Пример запроса

Anchor link to
{
"request": {
"application": "APPLICATION_CODE",
"hwid": "HWID",
"lat": 10.12345,
"lng": 28.12345
}
}

Пример на 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 to

Добавляет геозону в конкретное приложение.

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

Параметры тела запроса

Anchor link to
Параметр
Тип
ОбязательноОписание
authstringДаAPI access token из Control Panel Pushwoosh.
applicationstringДаPushwoosh application code
geozonesarrayДаПараметры геозоны в виде JSON-массива.
geozones.namestringДаНазвание геозоны.
geozones.latstringДаШирота геозоны.
geozones.lngstringДаДолгота геозоны.
geozones.cooldownintegerДа”Период тишины” после отправки уведомления (в секундах).
geozones.rangeintegerДаРадиус геозоны (в метрах, от 50 до 1000).
geozones.contentstring or objectОбязательно, если presetCode пуст.Содержимое сообщения геозоны.
geozones.presetCodestringОбязательно, если content пуст.Push-пресет для использования вместо content.
geozones.clusterstringНетУкажите null, чтобы отвязать кластер от геозоны.
geozones.campaignstringНетУкажите null, чтобы отвязать кампанию от геозоны. Если не указано, значение кампании остается без изменений. Примечание: Имеет более высокий приоритет, чем кампания в пресете.
geozones.timetableobjectНетУстанавливает интервалы расписания.

Пример запроса

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 to

Обновляет свойства геозоны.

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

Параметры тела запроса

Anchor link to
Параметр
Тип
ОбязательноОписание
authstringДаAPI access token из Control Panel Pushwoosh.
geoZoneIdstringДаGeozone ID из запроса /addGeoZone.
namestringНетНовое название геозоны.
cooldownintegerНетНовый период тишины (cooldown), в секундах.
statusintegerНет0 - деактивирована, 1 - активирована.
contentstringНетСодержимое пуш-уведомления геозоны. Не может использоваться вместе с presetCode.
clusterstringНетНовое имя кластера. Укажите null, чтобы отвязать кластер от геозоны.
campaignstringНетНовый ID кампании. Укажите null, чтобы отвязать кампанию от геозоны. Если не указано, значение кампании не изменится. Имеет более высокий приоритет, чем кампания из пресета.
latnumberНетШирота геозоны.
lngnumberНетДолгота геозоны.
rangeintegerНетНовый радиус в метрах.
timetableobjectНетРасписание геозоны. См. подробности ниже.

Пример запроса

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 to

Удаляет геозоны из приложения.

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

Параметры тела запроса

Anchor link to
Параметр
Тип
ОбязательноОписание
authstringДаAPI access token из Control Panel Pushwoosh.
applicationstringДаPushwoosh application code
geozonesstringДаМассив ID или один ID геозоны для удаления.

Пример запроса

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 to

Добавляет кластер геозон в приложение.

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

Параметры тела запроса

Anchor link to
Параметр
Тип
ОбязательноОписание
authstringДаAPI access token из Control Panel Pushwoosh.
applicationstringДаPushwoosh application code
namestringДаНазвание кластера.
cooldownintegerДаЗадержка перед тем, как один пользователь сможет получить то же сообщение от кластера геозон, в секундах.

Пример запроса

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 to

Удаляет кластер геозон из приложения.

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

Параметры тела запроса

Anchor link to
Параметр
Тип
ОбязательноОписание
authstringДаAPI access token из Control Panel Pushwoosh.
applicationstringДаPushwoosh application code
geoZoneClusterstringДаID кластера геозон для удаления.

Пример запроса

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 to

Получает список геозон для приложения.

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

Параметры тела запроса

Anchor link to
Параметр
Тип
ОбязательноОписание
authstringДаAPI access token из Control Panel Pushwoosh.
applicationstringДаPushwoosh application code

Пример запроса

Anchor link to
{
"request": {
"auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control
"application": "XXXXX-XXXXX" // required, Pushwoosh application code
}
}

listGeoZoneClusters

Anchor link to

Получает список кластеров геозон для приложения.

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

Параметры тела запроса

Anchor link to
Параметр
Тип
ОбязательноОписание
authstringДаAPI access token из Control Panel Pushwoosh.
applicationstringДаPushwoosh application code

Пример запроса

Anchor link to
{
"request": {
"auth": "yxoPUlwqm............pIyEX4H", // required, API access token from Pushwoosh Control
"application": "XXXXX-XXXXX" // required, Pushwoosh application code
}
}