# API de la boîte de réception des messages

## getInboxMessages

Renvoie la liste des messages de la boîte de réception pour un HWID spécifié.

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

#### En-têtes de requête

| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token `XXXX` | [Token d'appareil API](/fr/developer/api-reference/api-access-token/#device-api-token) pour accéder à l'API de l'appareil. Remplacez `XXXX` par votre véritable token d'appareil API. |

#### Corps de la requête

| Nom | Type | Description |
|---|---|---|
| application\* | string | [Code d'application Pushwoosh](/fr/developer/api-reference/api-identifiers/#application-code) |
| userId\* | string | Si aucun [ID utilisateur](/fr/developer/api-reference/api-identifiers/#user-id) personnalisé n'est défini, utilisez le HWID. |
| hwid | string | [ID matériel d'un appareil](/fr/developer/api-reference/api-identifiers/#hardware-id) pour lequel récupérer les messages de la boîte de réception. |
| last\_code | string | Code du dernier message récupéré dans la réponse précédente. Si vide, les premiers messages sont renvoyés. |
| count | integer | Le nombre de messages à afficher dans une seule réponse ; utilisé pour la pagination. 0 pour charger tous les messages de la boîte de réception. |

<Tabs>
<TabItem label="200">
```
{
  "response": {
    "messages": [{                      // tableau des messages actuellement stockés dans la boîte de réception de l'utilisateur
      "inbox_id": "avde1c792cd",
      "rt": "146078676",                // date de suppression du message de la boîte de réception
      "send_date": "1459758676",        // date à laquelle le message a été enregistré dans la boîte de réception
      "order": "59138176",              // position dans l'ordre de présentation de la boîte de réception
      "title": "New Rich Media in inbox!",
      "text": "Hi! New feature is available right now!",
      "action_type": "RichMedia",
      "action_params": {                // charge utile décrivant les actions à l'ouverture du push
        "rm": "{\"url\":\"https:\/\/richmedia.pushwoosh.com\/C82F7-51FC1.zip\",\"ts\":\"1459758676\",\"tags\":{\"tagName\":\"tagValue\"}}"
      },
      "status": 1,                      // 1 - livré, 2 - lu, 3 - ouvert,
                                        // 4 - supprimé (par un utilisateur), 5 - supprimé depuis le Panneau de configuration
      "hash":"1C"                       // code de hachage de la notification push
    }, {
      ...
    }],
    "next":"afarew511",                 // le prochain code Inbox à renvoyer par
                                        // la requête /getInboxMessages suivante
    "deleted": ["bbaf85ab", "a41957b"], // la liste des messages supprimés depuis le Panneau de configuration
    "new_inbox": 6                      // le nombre de messages Inbox livrés pour cet utilisateur (peut être utilisé pour le badge)
  }
}
```
</TabItem>
</Tabs>

```json title="Exemple de requête"
{
  "request": {
    "application": "XXXXX-XXXXX", // requis. Code d'application Pushwoosh
     "userId": "user_name_1",     // requis. ID utilisateur enregistré dans Pushwoosh
     "device_type": 1             // optionnel. Pour les types d'appareils, référez-vous à /registerDevice
  }
}
```

<Aside type="note">
Pour iOS, veuillez vous assurer que vous avez ajouté l'extension Notification Service à votre projet pour le suivi de la livraison des push. [En savoir plus](/fr/developer/pushwoosh-sdk/ios-sdk/ios-message-delivery-tracking/)
</Aside>

## inboxStatus

Met à jour le statut d'un message particulier de la boîte de réception.

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

#### En-têtes de requête

| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token `XXXX` | [Token d'appareil API](/fr/developer/api-reference/api-access-token/#device-api-token) pour accéder à l'API de l'appareil. Remplacez `XXXX` par votre véritable token d'appareil API. |

#### Corps de la requête

| Nom | Type | Description |
|---|---|---|
| application\* | string | [Code d'application Pushwoosh](/fr/developer/api-reference/api-identifiers/#application-code) |
| inbox\_code\* | string | Peut être obtenu à partir des détails du message dans le Panneau de configuration ou à partir du paramètre "order" de la requête `/getInboxMessages` |
| hash | string | Code de hachage du message de la boîte de réception. |
| hwid | string | [ID matériel de l'appareil](/fr/developer/api-reference/api-identifiers/#hardware-id) pour lequel mettre à jour le statut de la boîte de réception. |
| time | string | Horodatage de la date d'envoi. |
| userID\* | string | Si aucun [ID utilisateur](/fr/developer/api-reference/api-identifiers/#user-id) personnalisé n'est défini, utilisez le HWID. |
| status\* | integer | 1 - livré, 2 - lu, 3 - ouvert, 4 - supprimé par un utilisateur. |
| device\_type | integer | [Voir les valeurs possibles](/fr/developer/api-reference/api-identifiers/#device-type). |

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

```json title="Exemple"
{
  "request": {
    "application": "XXXXX-XXXXX",    // requis. Code d'application Pushwoosh
    "inbox_code": "874393934032909", // requis. Paramètre "order" de la requête /getInboxMessages
    "hash": "1C",                    // optionnel.
    "userId": "some_user",           // requis.
    "status": 2,                     // requis. statut à définir : 1-livré, 2-lu, 3-ouvert, 4-supprimé (par un utilisateur)
    "device_type": 3                 // optionnel.
  }
}
```