# API da caixa de entrada de mensagens

## getInboxMessages

Retorna a lista de mensagens da Caixa de Entrada para um HWID especificado.

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

#### Cabeçalhos da requisição

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

#### Corpo da requisição

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código da aplicação Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| userId\* | string | Se nenhum [ID de Usuário](/pt/developer/api-reference/api-identifiers/#user-id) personalizado estiver definido, use o HWID. |
| hwid | string | [ID de Hardware de um dispositivo](/pt/developer/api-reference/api-identifiers/#hardware-id) para obter as mensagens da Caixa de Entrada. |
| last\_code | string | Código da última mensagem recuperada na resposta anterior. Se vazio, as primeiras mensagens são retornadas. |
| count | integer | O número de mensagens a serem mostradas em uma única resposta; usado para paginação. 0 para carregar todas as mensagens na Caixa de Entrada. |

<Tabs>
<TabItem label="200">
```
{
  "response": {
    "messages": [{                      // array de mensagens armazenadas atualmente na Caixa de Entrada do usuário
      "inbox_id": "avde1c792cd",
      "rt": "146078676",                // data para remover a mensagem da Caixa de Entrada
      "send_date": "1459758676",        // data em que a mensagem foi salva na Caixa de Entrada
      "order": "59138176",              // posição na ordem de apresentação da Caixa de Entrada
      "title": "New Rich Media in inbox!",
      "text": "Hi! New feature is available right now!",
      "action_type": "RichMedia",
      "action_params": {                // payload descrevendo as ações ao abrir o push
        "rm": "{\"url\":\"https:\/\/richmedia.pushwoosh.com\/C82F7-51FC1.zip\",\"ts\":\"1459758676\",\"tags\":{\"tagName\":\"tagValue\"}}"
      },
      "status": 1,                      // 1 - entregue, 2 - lida, 3 - aberta,
                                        // 4 - excluída (por um usuário), 5 - excluída do Painel de Controle
      "hash":"1C"                       // código hash da notificação push
    }, {
      ...
    }],
    "next":"afarew511",                 // o próximo código da Caixa de Entrada a ser retornado pela
                                        // requisição /getInboxMessages seguinte
    "deleted": ["bbaf85ab", "a41957b"], // a lista de mensagens excluídas do Painel de Controle
    "new_inbox": 6                      // o número de mensagens da Caixa de Entrada entregues para esse usuário (pode ser usado para badge)
  }
}
```
</TabItem>
</Tabs>

```json title="Example Request"
{
  "request": {
    "application": "XXXXX-XXXXX", // obrigatório. Código da aplicação Pushwoosh
     "userId": "user_name_1",     // obrigatório. ID de Usuário registrado no Pushwoosh
     "device_type": 1             // opcional. Para tipos de dispositivo consulte /registerDevice
  }
}
```

<Aside type="note">
Para iOS, certifique-se de ter adicionado a Notification Service Extension ao seu projeto para rastrear a entrega de push.[ Saiba mais](/pt/developer/pushwoosh-sdk/ios-sdk/ios-message-delivery-tracking/)
</Aside>

## inboxStatus

Atualiza o status de uma mensagem específica da Caixa de Entrada.

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

#### Cabeçalhos da requisição

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

#### Corpo da requisição

| Nome | Tipo | Descrição |
|---|---|---|
| application\* | string | [Código da aplicação Pushwoosh](/pt/developer/api-reference/api-identifiers/#application-code) |
| inbox\_code\* | string | pode ser obtido nos detalhes da Mensagem no Painel de Controle ou no parâmetro "order" da requisição `/getInboxMessages` |
| hash | string | Código hash da mensagem da Caixa de Entrada. |
| hwid | string | [ID de Hardware do dispositivo](/pt/developer/api-reference/api-identifiers/#hardware-id) para atualizar o status da Caixa de Entrada. |
| time | string | Timestamp da data de envio. |
| userID\* | string | Se nenhum [ID de Usuário](/pt/developer/api-reference/api-identifiers/#user-id) personalizado estiver definido, use o HWID. |
| status\* | integer | 1 - entregue, 2 - lida, 3 - aberta, 4 - excluída por um usuário. |
| device\_type | integer | [Veja os valores possíveis](/pt/developer/api-reference/api-identifiers/#device-type). |

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

```json title="Example"
{
  "request": {
    "application": "XXXXX-XXXXX",    // obrigatório. Código da aplicação Pushwoosh
    "inbox_code": "874393934032909", // obrigatório. parâmetro "order" da requisição /getInboxMessages
    "hash": "1C",                    // opcional.
    "userId": "some_user",           // obrigatório.
    "status": 2,                     // obrigatório. status a definir: 1-entregue, 2-lida, 3-aberta, 4-excluída (por um usuário)
    "device_type": 3                 // opcional.
  }
}
```