# ऑडियंस API

## bulkSetTags

`POST` `https://api.pushwoosh.com/api/v2/audience/bulkSetTags`

डिवाइसों की सूची के लिए टैग मान सेट करता है।

<Aside type="caution" title="महत्वपूर्ण">
  `bulkSetTags` विधि का उपयोग करते समय, सुनिश्चित करें कि टैग मान कम से कम 50 डिवाइसों के लिए सेट किए गए हैं। एक डिवाइस के लिए टैग सेट करने के लिए, [`setTags`](/hi/developer/api-reference/device-api/#settags) विधि का उपयोग करें।
</Aside>

#### अनुरोध बॉडी

| नाम                                           | प्रकार    | विवरण                                                                 |
| ---------------------------------------------- | ------- | --------------------------------------------------------------------------- |
| application\*  | String  | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code)                                                     |
| auth\*         | String  | Pushwoosh कंट्रोल पैनल से [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)।                              |
| create\_missing\_tags                          | Boolean | यदि सत्य है, तो अनुपलब्ध टैग स्वचालित रूप से बनाए जाते हैं।                            |
| devices\*      | Object  | डिवाइसों का ऐरे।                                                           |
| devices.hwid                                   | String  | user\_id या push\_token के बजाय डिवाइस की पहचान करने के लिए इस्तेमाल किया जा सकता है। [और जानें](/hi/developer/api-reference/api-identifiers/#hardware-id)         |
| devices.user\_id                               | String  | hwid या push\_token के बजाय उपयोगकर्ता की पहचान करने के लिए इस्तेमाल किया जा सकता है। [और जानें](/hi/developer/api-reference/api-identifiers/#user-id)               |
| devices.push\_token                            | String  | hwid या user\_id के बजाय डिवाइस की पहचान करने के लिए इस्तेमाल किया जा सकता है। [और जानें](/hi/developer/api-reference/api-identifiers/#push-token)                |
| devices.list\_operator                         | String  | सूची प्रकार के [टैग](/hi/developer/api-reference/api-identifiers/#tag) के लिए मान कैसे सेट करें, यह परिभाषित करता है: set, append, या remove |
| devices.tags\* | Object  | निर्दिष्ट टैग के लिए सेट किए जाने वाले मान।                                       |

<Tabs>
  <TabItem label="ठीक है">
    ```json
    {
      "request_id": "जॉब की स्थिति प्राप्त करने के लिए GET विधि में उपयोग करने हेतु request_id",
      "status": "लंबित"
    }
    ```
  </TabItem>

  <TabItem label="त्रुटि">
    ```json
    {
      "message": "अमान्य अनुरोध"
    }
    ```
  </TabItem>
</Tabs>


```json title="अनुरोध:"
{
  "application": "एप्लिकेशन कोड",   // आवश्यक। Pushwoosh ऐप कोड
  "auth": "Pushwoosh auth टोकन",      // आवश्यक। Pushwoosh कंट्रोल पैनल से API एक्सेस टोकन
  "create_missing_tags": false,        // वैकल्पिक। अनुपलब्ध टैग स्वचालित रूप से बनाने चाहिए
  "devices": [{                        // आवश्यक। डिवाइसों का ऐरे
    "hwid": "डिवाइस hwid",             // वैकल्पिक। इसके बजाय डिवाइस की पहचान करने के लिए इस्तेमाल किया जा सकता है
                                       //           "user_id" या "push_token"।
    "user_id": "यूज़र आईडी",              // वैकल्पिक। "hwid" या "push_token" के बजाय उपयोगकर्ता की पहचान करने के लिए इस्तेमाल किया जा सकता है।
    "push_token": "डिवाइस पुश टोकन", // वैकल्पिक। "hwid" या "user_id" के बजाय डिवाइस की पहचान करने के लिए इस्तेमाल किया जा सकता है।
    "list_operator": "set",            // आवश्यक। सूची टैग के लिए। परिभाषित करता है कि मान कैसे सेट करें
                                       //           सूची प्रकार के टैग: set, append, या remove
    "tags": {                          // आवश्यक। निर्दिष्ट टैग के लिए सेट किए जाने वाले मान।
      "tag_name": "tagvalue",          //           सही मान प्रकार का उपयोग करें
      "tag_name2": "tagvalue2"
    }
  }]
}

```

```json title="प्रतिक्रिया:"
{
  "request_id": "जॉब की स्थिति प्राप्त करने के लिए GET विधि में उपयोग करने हेतु request_id",
  "status": "लंबित"
}
```

## bulkSetTags स्थिति

`GET` `https://api.pushwoosh.com/api/v2/audience/bulkSetTags/{request_id}?detailed=false`

`/bulkSetTags` ऑपरेशन की स्थिति लौटाता है

#### पथ पैरामीटर

| नाम        | प्रकार   | विवरण                                |
| ----------- | ------ | ------------------------------------------ |
| request\_id | String | पिछले `/bulkSetTags` कॉल से अनुरोध आईडी |

#### क्वेरी पैरामीटर

| नाम     | प्रकार    | विवरण                                             |
| -------- | ------- | ------------------------------------------------------- |
| detailed | Boolean | (true/false) क्या प्रति-डिवाइस विस्तृत जानकारी लौटानी है |

```json title="प्रतिक्रिया:"
{
  "request_id": "अनुरोध की आईडी",
  "status": "पूर्ण",          // "लंबित", "विफल" भी
  "progress": 100,                // नौकरियों की प्रगति 0-100
  "devices_success": 100,         // अच्छे डिवाइस
  "devices_not_found": 0,         // Pushwoosh में डिवाइस नहीं मिले
  "devices_failed": 0,            // त्रुटिपूर्ण
  "devices": [{                   // डिवाइस रिपोर्ट (केवल विस्तृत = सत्य में)
    "hwid": "डिवाइस hwid",
    "status": "हो गया",             // "विफल", "नहीं मिला" भी
    "tags": {
      "tagName": "ठीक है",
      "tagName2": "टैग नहीं मिला",
      "tagName3": "गलत मान। उम्मीद :string"
    }
  }]
}

```

## bulkRegisterDevice

एक ही अनुरोध में Pushwoosh में कई डिवाइसों को पंजीकृत करता है। यह प्रत्येक डिवाइस के लिए विभिन्न टैग निर्दिष्ट करने की भी अनुमति देता है।

`POST` `https://api.pushwoosh.com/api/v2/audience/bulkRegisterDevice`

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

| पैरामीटर | प्रकार | आवश्यक | विवरण |
| :---- | ----- | ----- | ----- |
| application | string | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |
| auth | string | हाँ | [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token)। |
| devices | array | हाँ | डिवाइस ऑब्जेक्ट्स का एक ऐरे। प्रत्येक ऑब्जेक्ट एक डिवाइस और उसके संबंधित डेटा का प्रतिनिधित्व करता है। नीचे **डिवाइस ऑब्जेक्ट पैरामीटर** तालिका में विवरण देखें। |

#### डिवाइस ऑब्जेक्ट पैरामीटर

| पैरामीटर       | प्रकार     | आवश्यक | विवरण                                                                                     |
|-----------------|----------|----------|-------------------------------------------------------------------------------------------------|
| hwid          | string | हाँ      | डिवाइस के लिए [हार्डवेयर आईडी](/hi/developer/api-reference/api-identifiers/#hardware-id) या अद्वितीय पहचानकर्ता।                                           |
| push_token    | string | हाँ      | डिवाइस के लिए [पुश टोकन](/hi/developer/api-reference/api-identifiers/#push-token)।                                                                     |
| platform      | integer| हाँ      | प्लेटफ़ॉर्म पहचानकर्ता। [और जानें](/hi/developer/api-reference/messages-api/api-prerequisites/#platforms) |
| list_operator | string | नहीं       | सूची-प्रकार के टैग के लिए क्रिया निर्धारित करता है: <br/> - **"append"**: टैग सूची में निर्दिष्ट मान जोड़ें। <br/> - **"remove"**: टैग सूची से निर्दिष्ट मान हटाएं। <br/> **ध्यान दें**: यदि `list_operator` पैरामीटर निर्दिष्ट नहीं है, तो टैग सूची में सभी मौजूदा मान प्रदान किए गए मानों से बदल दिए जाएंगे। |
| tags          | object | नहीं       | डिवाइस को सौंपे गए कस्टम [टैग](/hi/developer/api-reference/api-identifiers/#tag)। टैग विभाजन के लिए उपयोग किए जाने वाले कुंजी-मान जोड़े हैं।            |



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

```json
{
  "application": "एप्लिकेशन कोड",   // आवश्यक। Pushwoosh ऐप कोड
  "auth": "Pushwoosh auth टोकन",      // आवश्यक। Pushwoosh कंट्रोल पैनल से API एक्सेस टोकन
  "devices": [{                        // आवश्यक। डिवाइसों का ऐरे
    "hwid": "डिवाइस hwid",             // आवश्यक। डिवाइस के लिए अद्वितीय पहचानकर्ता (एक ईमेल हो सकता है)।
    "push_token": "डिवाइस पुश टोकन", // आवश्यक। डिवाइस के लिए पुश नोटिफिकेशन टोकन।
    "platform": 14,                    // आवश्यक। डिवाइस प्लेटफ़ॉर्म (जैसे, ईमेल के लिए 14)।
    "list_operator": "append",         // वैकल्पिक। सूची टैग के लिए। सूची प्रकार के टैग से निर्दिष्ट मान(मानों) को जोड़ता या हटाता है।
    "tags": {                          // वैकल्पिक। निर्दिष्ट टैग के लिए सेट किए जाने वाले मान।
      "language": "en",                //           सही मान प्रकार का उपयोग करें।
      "CSV_Import": "summer_camp"
    }
  },
  {
    "hwid": "डिवाइस hwid 2",           // आवश्यक। दूसरे डिवाइस के लिए अद्वितीय पहचानकर्ता।
    "push_token": "डिवाइस पुश टोकन 2", // आवश्यक। डिवाइस के लिए पुश नोटिफिकेशन टोकन।
    "platform": 14,                    // आवश्यक। डिवाइस प्लेटफ़ॉर्म।
    "list_operator": "remove",         // वैकल्पिक। सूची प्रकार के टैग से मान जोड़ता या हटाता है।
    "tags": {                          // वैकल्पिक। निर्दिष्ट टैग से हटाने के लिए मान।
      "language": "en",
      "CSV_Import": "summer_camp2"
    }
  },
  {
    "hwid": "डिवाइस hwid 3",           // आवश्यक। तीसरे डिवाइस के लिए अद्वितीय पहचानकर्ता।
    "push_token": "डिवाइस पुश टोकन 3", // आवश्यक। डिवाइस के लिए पुश नोटिफिकेशन टोकन।
    "platform": 14,                    // आवश्यक। डिवाइस प्लेटफ़ॉर्म।
    "tags": {                          // वैकल्पिक। निर्दिष्ट टैग के लिए सेट किए जाने वाले मान।
      "language": "en",
      "CSV_Import": "summer_camp3"
    }
  }]
}

```

### प्रतिक्रिया

विधि एक ऑपरेशन आईडी के साथ प्रतिक्रिया देती है, जिसका उपयोग बल्क पंजीकरण प्रक्रिया की स्थिति और परिणामों को ट्रैक करने के लिए किया जा सकता है।

```json
{
  "request_id": "जॉब की स्थिति प्राप्त करने के लिए GET विधि में उपयोग करने हेतु request_id",
  "status": "लंबित"
}

```

## bulkRegisterDevice स्थिति

आप निम्नलिखित **GET** अनुरोध करके बल्क पंजीकरण प्रक्रिया की स्थिति की जांच कर सकते हैं:

`GET` `https://api.pushwoosh.com/api/v2/audience/bulkRegisterDevice/{request_id}?detailed=true`

| पैरामीटर | प्रकार | आवश्यक | विवरण |
| ----- | ----- | ----- | ----- |
| request_id | string | हाँ | POST अनुरोध द्वारा लौटाई गई अनुरोध आईडी। |
| detailed | boolean | नहीं | यदि `true` पर सेट है, तो प्रतिक्रिया में प्रत्येक पंजीकृत डिवाइस के लिए विस्तृत परिणाम शामिल होते हैं। |


#### उदाहरण प्रतिक्रिया

```json
{
  "request_id": "9a2e1a14-XXXX-46c3-XXXX-c254b25d3782",
  "status": "पूर्ण",
  "progress": 100,
  "devices_success": 4,
  "devices": [
    {
      "hwid": "user1@example.com",
      "status": "हो गया"
    },
    {
      "hwid": "user2@example.com",
      "status": "हो गया"
    },
    {
      "hwid": "user3@example.com",
      "status": "हो गया"
    },
    {
      "hwid": "invalid_email@example.com",
      "status": "विफल"
    }
  ]
}

```

## bulkUnregisterDevice

एक ही अनुरोध में Pushwoosh से कई डिवाइसों को अपंजीकृत करता है।

`POST` `https://api.pushwoosh.com/api/v2/audience/bulkUnregisterDevice`

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

| पैरामीटर | प्रकार | आवश्यक | विवरण |
| :---- | ----- | ----- | ----- |
| application | string | हाँ | [Pushwoosh एप्लिकेशन कोड](/hi/developer/api-reference/api-identifiers/#application-code) |
| auth | string | हाँ | [API एक्सेस टोकन](/hi/developer/api-reference/api-identifiers/#api-access-token) |
| devices | array | हाँ | डिवाइस ऑब्जेक्ट्स का एक ऐरे। प्रत्येक ऑब्जेक्ट एक डिवाइस और उसके संबंधित डेटा का प्रतिनिधित्व करता है। नीचे **डिवाइस ऑब्जेक्ट पैरामीटर** तालिका में विवरण देखें। |

#### डिवाइस ऑब्जेक्ट पैरामीटर

| पैरामीटर       | प्रकार     | आवश्यक | विवरण                                                                                     |
|-----------------|----------|----------|-------------------------------------------------------------------------------------------------|
| hwid          | string | हाँ      | डिवाइस के लिए हार्डवेयर आईडी या अद्वितीय पहचानकर्ता। [और जानें](/hi/developer/api-reference/api-identifiers/#hardware-id)                                          |



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

```json
{
  "application": "एप्लिकेशन कोड",   // आवश्यक। Pushwoosh ऐप कोड
  "auth": "Pushwoosh auth टोकन",      // आवश्यक। Pushwoosh कंट्रोल पैनल से API एक्सेस टोकन
  "devices": [{                        // आवश्यक। डिवाइसों का ऐरे
    "hwid": "डिवाइस hwid",             // आवश्यक। डिवाइस के लिए अद्वितीय पहचानकर्ता (एक ईमेल हो सकता है)।
  },
  {
    "hwid": "डिवाइस hwid 2",           // आवश्यक। दूसरे डिवाइस के लिए अद्वितीय पहचानकर्ता।
  },
  {
    "hwid": "डिवाइस hwid 3",           // आवश्यक। तीसरे डिवाइस के लिए अद्वितीय पहचानकर्ता।
  }]
}

```

### प्रतिक्रिया

विधि एक ऑपरेशन आईडी के साथ प्रतिक्रिया देती है, जिसका उपयोग बल्क प्रक्रिया की स्थिति और परिणामों को ट्रैक करने के लिए किया जा सकता है।

```json
{
  "request_id": "जॉब की स्थिति प्राप्त करने के लिए GET विधि में उपयोग करने हेतु request_id",
  "status": "लंबित"
}

```

## bulkUnregisterDevice स्थिति

आप निम्नलिखित **GET** अनुरोध करके बल्क अपंजीकरण प्रक्रिया की स्थिति की जांच कर सकते हैं:

`GET` `https://api.pushwoosh.com/api/v2/audience/bulkUnregisterDevice/{request_id}?detailed=true`

| पैरामीटर | प्रकार | आवश्यक | विवरण |
| ----- | ----- | ----- | ----- |
| request_id | string | हाँ | POST अनुरोध द्वारा लौटाई गई अनुरोध आईडी। |
| detailed | boolean | नहीं | यदि `true` पर सेट है, तो प्रतिक्रिया में प्रत्येक अपंजीकृत डिवाइस के लिए विस्तृत परिणाम शामिल होते हैं। |


#### उदाहरण प्रतिक्रिया

```json
{
  "request_id": "9a2e1a14-XXXX-46c3-XXXX-c254b25d3782",
  "status": "पूर्ण",
  "progress": 100,
  "devices_success": 4,
  "devices": [
    {
      "hwid": "user1@example.com",
      "status": "हो गया"
    },
    {
      "hwid": "user2@example.com",
      "status": "हो गया"
    },
    {
      "hwid": "user3@example.com",
      "status": "हो गया"
    },
    {
      "hwid": "invalid_email@example.com",
      "status": "विफल"
    }
  ]
}

```