# API de Dispositivo

## registerDevice

`POST` `https://api.pushwoosh.com/json/1.3/registerDevice`

Chamado internamente pelo SDK. Registra o dispositivo para o aplicativo.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |


##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| push\_token | string | [Push token](/pt/developer/api-reference/api-identifiers/#push-token) para o dispositivo. |
| language | string | Localidade do idioma do dispositivo. Deve ser um código de duas letras minúsculas de acordo com o padrão ISO-639-1. |
| hwid\* | string | String única para identificar o dispositivo (IDFV no iOS, valor gerado aleatoriamente no Android). [Saiba mais](/pt/developer/api-reference/api-identifiers/#hardware-id) |
| timezone | integer | Deslocamento de fuso horário em segundos para o dispositivo. |
| device\_type\* | integer | [Tipo de dispositivo](/pt/developer/api-reference/api-identifiers/#device-type). Veja os valores possíveis abaixo. |
| email | string | Endereço de e-mail para registrar (use para usuários de e-mail em vez de HWID e push token). |
| tags | object | Valores de tag para atribuir ao dispositivo registrado. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": null
}
```
</TabItem>
</Tabs>

```json title="Exemplo"
{
  "request": {
    "application": "XXXXX-XXXXX",        // obrigatório. Código do aplicativo Pushwoosh
    "push_token": "dec301908b9ba8XXXXX57a58e40f96f5XXXXX2068674f5XXXXa25cdc250a2a41", // opcional.
    "hwid": "1CA6XXXXX-8DAC-XXXXX-XXXXX-B756288B6D3C",                                   // obrigatório. ID de dispositivo de hardware
    "idfa": "AEBE52E7-0XXXXX-455A-XXXXX-E57283966239",                                   // opcional.
    "timezone": 3600,                    // opcional. Deslocamento em segundos
    "device_type": 1,                    // obrigatório. Veja os valores possíveis abaixo. Para e-mails, 
                                         //           use os parâmetros "emails" como descrito abaixo.
    "email": "email_address@domain.com", // use em vez de "hwid" e "push_token" para registrar
                                         //           o endereço de e-mail para o seu projeto de e-mail
    "language": "en",                    // opcional. Código de idioma ISO 639-1|639-2
    "userId": "Alex",                    // opcional.
    "tags": {                            // opcional. Valores de tag para definir para o dispositivo registrado 
      "StringTag": "string value",
      "IntegerTag": 42,
      "ListTag": ["string1", "string2"], // define a lista de valores para Tags do tipo Lista
      "DateTag": "2024-10-02 22:11",     // observe que o horário deve estar em UTC
      "BooleanTag": true                 // valores válidos são: true, false
    },

    // tags do sistema, opcionais
    "app_version": "1.2.3", 
    "device_model": "Samsung SM-G355H",
    "os_version": "2.3",

    // chaves de criptografia opcionais para chrome/firefox
    "public_key": "BNmDO4BTKEMJqaqprTf7t/HBXXXXX/orcXXXXX/scS5CFP6XXXXXHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=",
    "auth_token": "RlRmCXXXXX/s7XXXXXjKFzoQ==",
 
    // chaves FCM opcionais para Chrome (para XMPP)
    "fcm_token": "BNmDO4BTKEMJXXXXXprTf7t/XXXXXBQ/orXXXXXc/scS5CFP6zhQGIHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=",
    "fcm_push_set": "RlXXXXXGM/s7XXXXXjKFzoQ=="
  }
}
```

Tipos de dispositivo possíveis:

* 1 – iOS
* 3 – Android
* 7 – Mac OS X
* 8 – Windows
* 9 – Amazon
* 10 – Safari
* 11 – Chrome
* 12 – Firefox
* 13 – Internet Explorer
* 14 – E-mail
* 16 – Baidu Android
* 17 – Huawei
* 18 – SMS
* 20 – Web
* 21 – WhatsApp
* 22 – Line
* 23 – Kakao Talk
* 24 – Telegram
* 25 – Apple Wallet
* 26 – Google Wallet
* 27 – Viber

### Registrando dispositivos de e-mail
Para **registrar um assinante de e-mail** para seu aplicativo, envie o parâmetro `"email": "email_address@domain.com"` em sua solicitação `/registerDevice` ou [`/registerEmail`](/pt/developer/api-reference/email-api#registeremail) da seguinte forma:

##### Exemplo de solicitação
```json
{
  "request":{
    "application": "XXXXX-XXXXX",        // obrigatório. Código do aplicativo Pushwoosh
    "email": "email_address@domain.com", // obrigatório. Endereço de e-mail para registrar em seu projeto de e-mail
    "language": "en",                    // opcional. Código de idioma ISO 639-1|639-2
    "userId": "Alex",                    // opcional.
    "tags": {                            // opcional. Valores de tag para definir para o dispositivo registrado 
      "StringTag": "string value",
      "IntegerTag": 42,
      "ListTag": ["string1", "string2"], // define a lista de valores para Tags do tipo Lista
      "DateTag": "2024-10-02 22:11",     // observe que o horário deve estar em UTC
      "BooleanTag": true                 // valores válidos são: true, false
    }
  }
}
```

### Registrando dispositivos WhatsApp
Para registrar um dispositivo WhatsApp para seu aplicativo, siga estas diretrizes:

- **hwid**: Certifique-se de que este campo inclua o prefixo whatsapp: seguido pelo número de telefone no formato E.164 (por exemplo, whatsapp:+0000000000). O número de telefone deve ser válido, o que a Pushwoosh verificará.

- **Push token**: Um push token não é necessário, pois o hwid funcionará automaticamente como o push token.

- **device_type**: Defina este campo como 21 para especificar o WhatsApp como a plataforma.

##### Exemplo de solicitação
```json
{ 
  "request": {
    "application": "XXXXX-XXXXX",        // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "whatsapp:+0000000000",      // obrigatório. Prefixo do WhatsApp e número de telefone válido
    "timezone": 3600,                    // opcional. Deslocamento de tempo em segundos
    "device_type": 21,                   // obrigatório. O tipo de dispositivo WhatsApp é 21
    "language": "en",                    // opcional. Código de idioma ISO 639-1|639-2
    "userId": "Alex",                    // opcional. Identificador do usuário
    "tags": {                            // opcional. Valores de tag para segmentação personalizada
      "StringTag": "string value",
      "IntegerTag": 42,
      "ListTag": ["string1", "string2"],
      "DateTag": "2024-10-02 22:11",     // formato UTC
      "BooleanTag": true  
    },
    "app_version": "1.2.3",              // opcional. Versão do aplicativo
    "device_model": "Samsung SM-G355H",  // opcional. Modelo do dispositivo
    "os_version": "2.3"                  // opcional. Versão do sistema operacional
  }
}
```

### Registrando dispositivos SMS
Para registrar um dispositivo SMS para seu aplicativo, siga estas diretrizes:

- **hwid**: Certifique-se de que este campo inclua o número de telefone no formato E.164 (por exemplo, +0000000000). O número de telefone deve ser válido, o que a Pushwoosh verificará.

- **Push token**: Um push token não é necessário, pois o hwid funcionará automaticamente como o push token.

- **device_type**: Defina este campo obrigatório como 18 para designar o SMS como a plataforma.

##### Exemplo de solicitação
```json 
{  
   "request": {
      "application": "XXXXX-XXXXX",           // obrigatório. Código do aplicativo Pushwoosh
      "hwid": "+0000000000",                  // obrigatório. Número de telefone válido no formato E.164
      "timezone": 3600,                       // opcional. Deslocamento de tempo em segundos
      "device_type": 18,                      // obrigatório. O tipo de dispositivo SMS é 18
      "language": "en",                       // opcional. Código de idioma ISO 639-1|639-2
      "userId": "Alex",                       // opcional. Identificador do usuário
      "tags": {                               // opcional. Valores de tag para segmentação personalizada
           "StringTag": "string value",
           "IntegerTag": 42,
           "ListTag": ["string1", "string2"],
           "DateTag": "2024-10-02 22:11",     // formato UTC
           "BooleanTag": true  
      },
      "app_version": "1.2.3",                 // opcional. Versão do aplicativo
      "device_model": "Samsung SM-G355H",     // opcional. Modelo do dispositivo
      "os_version": "2.3"                     // opcional. Versão do sistema operacional
   }
}
```

**Códigos de status**:

| Código de status HTTP | status\_code | Descrição |
|---|---|---|
| 200 | 200 | Dispositivo registrado com sucesso |
| 200 | 210 | Erro de argumento. Veja status\_message para mais informações. |
| 400 | N/A | String de solicitação malformada |
| 500 | 500 | Erro interno |



## unregisterDevice

`POST` `https://api.pushwoosh.com/json/1.3/unregisterDevice`

Remove o push token do dispositivo. O dispositivo não registrado ainda é contado em Total de Dispositivos e pode ser alcançado com In-Apps. Chamado internamente pelo SDK.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |

##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| hwid\* | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) usado na solicitação /registerDevice. |

<Tabs>
<TabItem label="200">
```json
{
    "status_code": 200,
    "status_message": "OK",
    "response": null
}
```
</TabItem>
</Tabs>

```json title="Exemplo"
{
  "request": {
    "application": "XXXXX-XXXXX",              // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "8f65b16XXXXXe7a6beceXXXXX530fb2"  // obrigatório. ID de dispositivo de hardware usado na API /registerDevice 
  }
}
```

<Aside type="note">
Para e-mails, chame [`/deleteEmail`](/pt/developer/api-reference/email-api/#deleteemail).
</Aside>

**Códigos de status**:

| Código de status HTTP | status\_code | Descrição |
|---|---|---|
| 200 | 200 | Dispositivo desinscrito com sucesso |
| 200 | 210 | Erro de argumento. Veja status\_message para mais informações. |
| 400 | N/A | String de solicitação malformada |
| 500 | 500 | Erro interno |



## deleteDevice

`POST` `https://api.pushwoosh.com/api/v2/device-api/deleteDevice`

Exclui um dispositivo e todos os seus dados associados, identificados pelo [HWID](/pt/developer/api-reference/api-identifiers/#hardware-id) especificado no aplicativo. Diferente de [`/unregisterDevice`](/pt/developer/api-reference/device-api/#unregisterdevice), que apenas remove o push token e mantém o registro do dispositivo, `/deleteDevice` remove completamente o dispositivo. A solicitação é processada de forma assíncrona, e o endpoint retorna `200 OK` assim que a solicitação de exclusão for aceita para processamento.

#### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |
| Content-Type | Sim | application/json | |

#### Corpo da solicitação

| Nome | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| application | Sim | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| hwid | Sim | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) do dispositivo a ser excluído. |


#### Exemplo de solicitação

```json
{
  "application": "XXXXX-XXXXX",                 // obrigatório. Código do aplicativo Pushwoosh
  "hwid": "8f65b16df378e7a6bece9614e1530fb2"    // obrigatório. ID de dispositivo de hardware do dispositivo a ser excluído
}
```

#### Exemplo de resposta

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": null
}
```
</TabItem>
</Tabs>

##### Códigos de status

| Código de status HTTP | status\_code | Descrição |
|---|---|---|
| 200 | 200 | Solicitação de exclusão aceita |
| 200 | 210 | Erro de argumento. Veja status\_message para mais informações. |
| 400 | N/A | String de solicitação malformada |
| 401 | N/A | Token de autorização ausente ou inválido |
| 500 | 500 | Erro interno |



## setTags

`POST` `https://api.pushwoosh.com/json/1.3/setTags`

Define os valores das tags para o dispositivo. Chamado pelo SDK.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |

##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| hwid\* | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) usado na solicitação /registerDevice. |
| tags\* | object | Objeto JSON de tags a serem definidas, envie "null" para remover o valor. |

<Tabs>
<TabItem label="200">
```json
{
   "status_code": 200,
   "status_message": "OK",
   "response": null
}
```
</TabItem>
</Tabs>

<Aside type="note">
O método é chamado pelo SDK. É possível chamá-lo remotamente do seu backend, no entanto, você precisa manter um banco de dados atualizado de hwids no lado do backend.
</Aside>

```json title="Exemplo"
{
  "request":{
    "application": "XXXXX-XXXXX",               // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "8f65b16XXXXXe7a6becXXXXXe1530fb2", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice
    "tags": {                                   // obrigatório.
      "StringTag": "string value",
      "IntegerTag": 42,
      "ListTag": ["string1", "string2"],        // define a lista de valores para Tags do tipo Lista
      "DateTag": "2024-10-02 22:11",            // observe que o horário está em UTC
      "BooleanTag": true                        // valores válidos são - true, false
    }  
  }
}
```

### Incrementar valores de tag do tipo Inteiro

Para **incrementar** um valor da Tag do tipo Inteiro, use o parâmetro `operation` com o valor "increment" da seguinte forma:

```json
{
  "request":{
    "application": "12345-67890",                   // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice
    "tags": {                                       // obrigatório.
      "Level": {                                    // Nome da tag
        "operation": "increment",                   // sobrescreve a tag de inteiro em incrementos do seguinte valor 
        "value": 1                                  // incremento para o valor da tag
      }  
    }  
  }
}
```

### Decrementar valores de tag do tipo Inteiro

Para **decrementar**, use números negativos como valor para a operação "increment" (-1, -2, -3,-n):

```json
{
  "request":{
    "application": "12345-67890",                   // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice
    "tags": {                                       // obrigatório
      "Level": {                                    // Nome da tag
        "operation": "increment",                   // sobrescreve a tag de inteiro em decrementos do seguinte valor 
        "value": -1                                 // decremento para o valor da tag
      }  
    }  
  }
}
```

### Anexar valores de tag do tipo Lista

Para **estender a Tag do tipo Lista com novos valores**, use o parâmetro `operation` com o valor "append" da seguinte forma:

```json title="Exemplo"
{
  "request": {
    "hwid": "3d124a79XXXXf189XXXX7dfd9XXXXafd", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice
    "application": "6XXXX-XXXX3",               // obrigatório. Código do aplicativo Pushwoosh
    "tags": {                                   // obrigatório.
      "ListTag": {                              // Nome da tag
        "operation": "append",                  // anexa os seguintes valores à lista de valores da Tag
        "value": [                              // valores a serem anexados
          "tag2",
          "tag3"
        ]
      }
    }
  }
}
```

### Remover valores de tag do tipo Lista

Para remover alguns valores da Tag do tipo Lista, use a operação "remove" da seguinte forma:

```json
{
  "request":{
    "application": "12345-67890",                   // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice
    "tags": {                                       // obrigatório.
      "In-App Product": {                           // Nome da tag
        "operation": "remove",                      // remove os seguintes valores da tag de lista
        "value": "outwear_02"                       // valor ou valores a serem removidos
      }
    }  
  }
}
```

### Definir tags por UserID

Para definir tags para todos os dispositivos associados a um [User ID](/pt/developer/api-reference/api-identifiers/#user-id) específico, use o parâmetro "userId" em vez de "hwid".

<Aside type="caution">
Certifique-se de que a tag para a qual você está definindo valores é [específica do usuário](/pt/developer/guides/audience-and-segmentation/tags/#tag-scope-general-vs-user-specific).
</Aside>

```json title="Exemplo"
{
  "request":{
    "application": "AAAAA-BBBBB", // Código do aplicativo Pushwoosh
    "userId": "some_user",        // ID do usuário para o qual você gostaria de definir as tags 
    "tags": {                     // tags e valores a serem definidos
      "Language": "es"
    }  
  }
}
```

<Aside type="note">
Para e-mails, chame [`/setEmailTags`](/pt/developer/api-reference/email-api/#setemailtags).
</Aside>

**Códigos de status:**

| Código de status HTTP | status\_code | Descrição |
|---|---|---|
| 200 | 200 | Tags foram definidas com sucesso |
| 200 | 210 | Erro de argumento. Veja status\_message para mais informações. |
| 400 | N/A | String de solicitação malformada |
| 500 | 500 | Erro interno |


## getTags

`POST` `https://api.pushwoosh.com/json/1.3/getTags`

Recupera uma lista de tags com os valores correspondentes para o dispositivo específico.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |

##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| userId | string | [User ID](/pt/developer/api-reference/api-identifiers/#user-id) a ser usado em vez de "hwid". Se usado junto com um "hwid", o "hwid" prevalece. |
| hwid | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) usado na solicitação `/registerDevice`. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "result": {
      "Language": "fr"
    }
  }
}
```
</TabItem>
</Tabs>

```json title="Exemplo"
{
  "request":{
    "application": "XXXXX-XXXXX",   // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "HWID",                 // opcional. ID de dispositivo de hardware usado na API /registerDevice
    "userId": "USER_ID"             // opcional. Pode ser usado em vez de "hwid" para recuperar tags para um usuário específico
  }
}
```

## setBadge

`POST` `https://api.pushwoosh.com/json/1.3/setBadge`

Envia o valor atual do badge de um dispositivo para a Pushwoosh. Chamado internamente pelo SDK.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |

##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| hwid\* | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) usado na solicitação /registerDevice. |
| badge\* | integer | Badge atual no aplicativo. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK"
}
```
</TabItem>
</Tabs>

```json title="Exemplo"
{
  "request":{
    "application": "XXXXX-XXXXX",               // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "8f65b16dXXXXe7a6XXXX9614XXXX0fb2", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice
    "badge": 4                                  // obrigatório. Badge atual no aplicativo
  }
}
```

Chamado internamente pelo SDK. Envia o valor atual do badge de um dispositivo para a Pushwoosh. Isso acontece internamente quando o aplicativo altera o valor do badge em um dispositivo iOS. Permite que os badges de autoincremento funcionem corretamente.

<Aside type="caution">
Este método **NÃO É** usado para atualizar o valor do badge no dispositivo. Em vez disso, use a solicitação [`/createMessage`](/pt/developer/api-reference/messages-api/#createmessage) com o parâmetro `"ios_badges"`.
</Aside>



## applicationOpen

`POST` `https://api.pushwoosh.com/json/1.3/applicationOpen`

Registra um evento de abertura de aplicativo. Chamado internamente pelo SDK.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |

##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| hwid\* | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) usado na solicitação `/registerDevice`. |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK"
}
```
</TabItem>
</Tabs>

```json title="Exemplo"
{
  "request": {
    "application": "XXXXX-XXXXX",              // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "8f65b16dXXXXe7a6XXXX9614eXXXXfb2" // obrigatório. ID de dispositivo de hardware usado na API /registerDevice    
  }
}
```



## pushStat

`POST` `https://api.pushwoosh.com/json/1.3/pushStat`

Registra um evento de abertura de push. Chamado internamente pelo SDK.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |
##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| hwid\* | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) usado na solicitação /registerDevice. |
| userId | string | [User ID](/pt/developer/api-reference/api-identifiers/#user-id) para associar ao evento de abertura de push. |
| hash | string | Tag de hash recebida na notificação push (parâmetro "p" do payload do push). |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": null
}
```
</TabItem>
</Tabs>

```json title="Exemplo"
{
  "request": {
    "application": "XXXXX-XXXXX",               // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "8f65b16dfXXXX7a6beXXXX14e1530fb2", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice 
    "userId": "USER012345",                     // opcional. O ID do usuário para associar ao evento de abertura de push 
    "hash": "HASH_TAG"                          // opcional. Tag de hash recebida na notificação push
                                                //           (parâmetro "p" no payload do push)
  }
}
```


## messageDeliveryEvent

`POST` `https://api.pushwoosh.com/json/1.3/messageDeliveryEvent`

Registra o evento de entrega de push para o dispositivo. Chamado internamente pelo SDK.

##### Cabeçalhos da solicitação

| Nome | Obrigatório | Valor | Descrição |
|---|---|---|---|
| Authorization | Sim | Token `XXXX` | [Token de API de Dispositivo](/pt/developer/api-reference/api-access-token/#device-api-token) para acessar a API de Dispositivo. Substitua `XXXX` pelo seu token de API de Dispositivo real. |

##### Corpo da solicitação

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código do aplicativo Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| hwid\* | string | [ID de dispositivo de hardware](/pt/developer/api-reference/api-identifiers/#hardware-id) usado na solicitação `/registerDevice`. |
| hash | string | Tag de hash recebida na notificação push (parâmetro "p" do payload do push). |

<Tabs>
<TabItem label="200">
```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": null
}
```
</TabItem>
</Tabs>

```json title="Exemplo"
 {
  "request": {
    "application": "XXXXX-XXXXX",               // obrigatório. Código do aplicativo Pushwoosh
    "hwid": "8f65b16dfXXXX7a6bece9XXXX1530fb2", // obrigatório. ID de dispositivo de hardware usado na API /registerDevice
    "hash": "HASH_TAG"                          // opcional. Tag de hash recebida na notificação push
                                                //           (parâmetro "p" no payload do push)
  }
}
```