# जियोज़ोन API

## getNearestZone

SDK से आंतरिक रूप से कॉल किया जाता है। निकटतम जियोज़ोन के पैरामीटर और उससे दूरी प्राप्त करता है। जियो पुश नोटिफिकेशन के लिए डिवाइस के स्थान को भी रिकॉर्ड करता है।

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


### अनुरोध बॉडी पैरामीटर


| पैरामीटर | प्रकार <div style="width:80px"></div> | आवश्यक | विवरण |
|-----------|--------|:--------:|-------------|
| **application** | `string` | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |
| **hwid** | `string` | हाँ | `/registerDevice` अनुरोध में प्रयुक्त [हार्डवेयर डिवाइस आईडी](/hi/developer/api-reference/api-identifiers/#hardware-id)। |
| **lat** | `string` | हाँ | डिवाइस का अक्षांश। |
| **lng** | `string` | हाँ | डिवाइस का देशांतर। |


### अनुरोध का उदाहरण

```json
{
  "request": {
    "application": "APPLICATION_CODE", 
    "hwid": "HWID",
    "lat": 10.12345,
    "lng": 28.12345
  }
}
```

### PHP उदाहरण

```php
// देखें 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 '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

एक विशिष्ट ऐप में एक जियोज़ोन जोड़ता है।

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


### अनुरोध बॉडी पैरामीटर


| पैरामीटर <div style="width:150px"></div>  | प्रकार <div style="width:80px"></div> | आवश्यक | विवरण |
|-----------|--------|:--------:|-------------|
| **auth** | `string` | हाँ | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| **application** | `string` | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |
| **geozones** | `array` | हाँ | जियोज़ोन पैरामीटर एक JSON ऐरे के रूप में। |
| **geozones.name** | `string` | हाँ | जियोज़ोन का नाम। |
| **geozones.lat** | `string` | हाँ | जियोज़ोन का अक्षांश। |
| **geozones.lng** | `string` | हाँ | जियोज़ोन का देशांतर। |
| **geozones.cooldown** | `integer` | हाँ | एक नोटिफिकेशन भेजने के बाद साइलेंट पीरियड (सेकंड में)। |
| **geozones.range** | `integer` | हाँ | जियोज़ोन की रेंज मीटर में। न्यूनतम 50। |
| **geozones.content** | `string or object` | यदि `presetCode` खाली है तो आवश्यक है। | जियोज़ोन संदेश की सामग्री। |
| **geozones.presetCode** | `string` | यदि `content` खाली है तो आवश्यक है। | `content` के बजाय उपयोग करने के लिए [पुश प्रीसेट](/hi/developer/api-reference/api-identifiers/#preset-code)। |
| **geozones.cluster** | `string` | नहीं | जियोज़ोन से क्लस्टर को अनबाइंड करने के लिए `null` निर्दिष्ट करें। |
| **geozones.campaign** | `string` | नहीं | जियोज़ोन से अभियान को अनबाइंड करने के लिए `null` निर्दिष्ट करें। यदि छोड़ दिया जाता है, तो अभियान का मान अपरिवर्तित रहता है। ध्यान दें: प्रीसेट में अभियान की तुलना में इसकी प्राथमिकता अधिक होती है। |
| **geozones.timetable** | `object` | नहीं | समय सारिणी अंतराल सेट करता है। |


### अनुरोध का उदाहरण

```json
{ 
  "request": {
    "auth": "yxoPUlwqm............pIyEX4H",  // Pushwoosh कंट्रोल पैनल से API एक्सेस टोकन
    "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

जियोज़ोन गुणों को अपडेट करता है।

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

### अनुरोध बॉडी पैरामीटर

| पैरामीटर <div style="width:150px"></div> | प्रकार <div style="width:80px"></div> | आवश्यक | विवरण |
|-----------|--------|:--------:|-------------|
| **auth** | `string` | हाँ | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| **geoZoneId** | `string` | हाँ | `/addGeoZone` अनुरोध से [जियोज़ोन आईडी](/hi/developer/api-reference/api-identifiers/#geozone-id)। |
| **name** | `string` | नहीं | नया जियोज़ोन नाम। |
| **cooldown** | `integer` | नहीं | अपडेट करने के लिए कूलडाउन, सेकंड में। |
| **status** | `integer` | नहीं | 0 - निष्क्रिय, 1 - सक्रिय। |
| **content** | `string` | नहीं | जियोज़ोन पुश नोटिफिकेशन के लिए सामग्री। `presetCode` के साथ उपयोग नहीं किया जा सकता। |
| **cluster** | `string` | नहीं | नया क्लस्टर नाम। जियोज़ोन से क्लस्टर को अनबाइंड करने के लिए `null` निर्दिष्ट करें। |
| **campaign** | `string` | नहीं | नई अभियान आईडी। जियोज़ोन से अभियान को अनबाइंड करने के लिए `null` निर्दिष्ट करें। यदि छोड़ दिया जाता है, तो अभियान का मान नहीं बदलेगा। प्रीसेट से अभियान की तुलना में इसकी प्राथमिकता अधिक होती है। |
| **lat** | `number` | नहीं | जियोज़ोन का अक्षांश। |
| **lng** | `number` | नहीं | जियोज़ोन का देशांतर। |
| **range** | `integer` | नहीं | मीटर में नई रेंज। |
| **timetable** | `object` | नहीं | जियोज़ोन समय सारिणी। नीचे और जानकारी देखें। |

---


### अनुरोध का उदाहरण

```json
{ 
  "request": {
    "auth": "yxoPUlwqm............pIyEX4H",  // आवश्यक, Pushwoosh कंट्रोल से API एक्सेस टोकन
    "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

ऐप से जियोज़ोन हटाता है।

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

### अनुरोध बॉडी पैरामीटर


| पैरामीटर   <div style="width:150px"></div>   | प्रकार <div style="width:80px"></div>   | आवश्यक | विवरण |
|-------------|--------|:--------:|-------------|
| **auth**    | `string` | हाँ | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| **application** | `string` | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |
| **geozones** | `string` | हाँ | हटाने के लिए जियोज़ोन की आईडी का ऐरे या [एकल आईडी](/hi/developer/api-reference/api-identifiers/#geozone-id)। |



### अनुरोध का उदाहरण

```json
{
  "request": {
    "auth": "yxoPUlwqm............pIyEX4H",  // आवश्यक, Pushwoosh कंट्रोल से API एक्सेस टोकन
    "application": "XXXXX-XXXXX",            // आवश्यक, Pushwoosh एप्लिकेशन कोड
    "geozones": [550, 526]                   // आवश्यक, जियोज़ोन आईडी
  }
}
```

## addGeoZoneCluster

ऐप में जियोज़ोन क्लस्टर जोड़ता है।

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


### अनुरोध बॉडी पैरामीटर

| पैरामीटर  <div style="width:150px"></div>  | प्रकार <div style="width:80px"></div>    | आवश्यक | विवरण |
|-------------|--------|:--------:|-------------|
| **auth**    | `string` | हाँ | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| **application** | `string` | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |
| **name** | `string` | हाँ | क्लस्टर का नाम। |
| **cooldown** | `integer` | हाँ | एक ही उपयोगकर्ता द्वारा जियोज़ोन क्लस्टर से समान संदेश प्राप्त करने से पहले की देरी, सेकंड में। |


### अनुरोध का उदाहरण

```json
{
  "request": {
    "auth": "yxoPUlwqm............pIyEX4H",  // आवश्यक, Pushwoosh कंट्रोल से API एक्सेस टोकन
    "application": "XXXXX-XXXXX",            // आवश्यक, Pushwoosh एप्लिकेशन कोड
    "name": "Raccoon city",                  // आवश्यक, क्लस्टर का नाम
    "cooldown": 3210                         // आवश्यक, सेकंड में
  }
}
```

## deleteGeoZoneCluster

ऐप से एक जियोज़ोन क्लस्टर हटाता है।


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


### अनुरोध बॉडी पैरामीटर


| पैरामीटर   <div style="width:150px"></div>        | प्रकार  <div style="width:80px"></div>  | आवश्यक | विवरण |
|-------------------|--------|:--------:|-------------|
| **auth**         | `string` | हाँ | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| **application**  | `string` | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |
| **geoZoneCluster** | `string` | हाँ | हटाने के लिए जियोज़ोन क्लस्टर की आईडी। |


### अनुरोध का उदाहरण

```json
{
  "request": {
    "auth": "yxoPUlwqm............pIyEX4H",  // आवश्यक, Pushwoosh कंट्रोल से API एक्सेस टोकन
    "application": "XXXXX-XXXXX",            // आवश्यक, Pushwoosh एप्लिकेशन कोड
    "geoZoneCluster": "EA1CE-69405"          // आवश्यक, /addGeoZoneCluster अनुरोध से प्राप्त क्लस्टर आईडी
  }
}
```

## listGeoZones

ऐप के लिए जियोज़ोन की एक सूची प्राप्त करता है।


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

### अनुरोध बॉडी पैरामीटर


| पैरामीटर  <div style="width:150px"></div>    | प्रकार <div style="width:80px"></div>   | आवश्यक | विवरण |
|-------------|--------|:--------:|-------------|
| **auth**    | `string` | हाँ | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| **application** | `string` | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |


### अनुरोध का उदाहरण

```json
{
  "request": {
    "auth": "yxoPUlwqm............pIyEX4H",  // आवश्यक, Pushwoosh कंट्रोल से API एक्सेस टोकन
    "application": "XXXXX-XXXXX"             // आवश्यक, Pushwoosh एप्लिकेशन कोड
  }
}
```
## listGeoZoneClusters

ऐप के लिए जियोज़ोन क्लस्टर की एक सूची प्राप्त करता है।

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


### अनुरोध बॉडी पैरामीटर


| पैरामीटर <div style="width:150px"></div>   | प्रकार <div style="width:80px"></div>    | आवश्यक | विवरण |
|-------------|--------|:--------:|-------------|
| **auth**    | `string` | हाँ | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| **application** | `string` | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |


### अनुरोध का उदाहरण

```json
{
  "request": {
    "auth": "yxoPUlwqm............pIyEX4H",  // आवश्यक, Pushwoosh कंट्रोल से API एक्सेस टोकन
    "application": "XXXXX-XXXXX"             // आवश्यक, Pushwoosh एप्लिकेशन कोड
  }
}
```