API Appareil
L’API Appareil enregistre les appareils dans une application Pushwoosh et consigne leur activité : valeurs de tags, ouvertures de l’application, ouvertures de push et livraisons de push. Le SDK Pushwoosh appelle automatiquement la plupart de ces méthodes ; appelez-les donc directement lorsque vous gérez des appareils depuis votre propre serveur ou un client personnalisé. Pour enregistrer ou taguer de nombreux appareils en une seule requête, utilisez l’API d’audience.
registerDevice
Anchor link toPOST https://api.pushwoosh.com/json/1.3/registerDevice
Appelée en interne depuis le SDK. Enregistre l’appareil pour l’application.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| push_token | string | Push token pour l’appareil. |
| language | string | Locale de langue de l’appareil. Doit être un code de deux lettres en minuscules conformément à la norme ISO-639-1. |
| hwid* | string | Chaîne unique pour identifier l’appareil (IDFV sur iOS, valeur générée aléatoirement sur Android). En savoir plus |
| timezone | integer | Décalage de fuseau horaire en secondes pour l’appareil. |
| device_type* | integer | Type d’appareil. Voir les valeurs possibles ci-dessous. |
| string | Adresse e-mail à enregistrer (à utiliser pour les utilisateurs d’e-mail au lieu du HWID et du push token). | |
| tags | object | Valeurs de tag à assigner à l’appareil enregistré. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // required. Pushwoosh application code "push_token": "dec301908b9ba8XXXXX57a58e40f96f5XXXXX2068674f5XXXXa25cdc250a2a41", // optional. "hwid": "1CA6XXXXX-8DAC-XXXXX-XXXXX-B756288B6D3C", // required. Hardware device ID "idfa": "AEBE52E7-0XXXXX-455A-XXXXX-E57283966239", // optional. "timezone": 3600, // optional. Offset in seconds "device_type": 1, // required. See the possible values below. For emails, // use the "emails" params as described below. "email": "email_address@domain.com", // use instead of "hwid" and "push_token" to register // the email address for your email project "language": "en", // optional. ISO 639-1|639-2 language code "userId": "Alex", // optional. "tags": { // optional. Tag values to set for the device registered "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // sets the list of values for Tags of List type "DateTag": "2024-10-02 22:11", // note the time should be in UTC "BooleanTag": true // valid values are: true, false },
// system tags, optionals "app_version": "1.2.3", "device_model": "Samsung SM-G355H", "os_version": "2.3",
// optional encryption keys for chrome/firefox "public_key": "BNmDO4BTKEMJqaqprTf7t/HBXXXXX/orcXXXXX/scS5CFP6XXXXXHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=", "auth_token": "RlRmCXXXXX/s7XXXXXjKFzoQ==",
// optional FCM keys for Chrome (for XMPP) "fcm_token": "BNmDO4BTKEMJXXXXXprTf7t/XXXXXBQ/orXXXXXc/scS5CFP6zhQGIHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=", "fcm_push_set": "RlXXXXXGM/s7XXXXXjKFzoQ==" }}Types d’appareils possibles :
- 1 – iOS
- 3 – Android
- 7 – Mac OS X
- 8 – Windows
- 9 – Amazon
- 10 – Safari
- 11 – Chrome
- 12 – Firefox
- 13 – Internet Explorer
- 14 – E-mail
- 17 – Huawei
- 18 – SMS
- 20 – Web
- 21 – WhatsApp
- 22 – Line
- 23 – Kakao Talk
- 24 – Telegram
- 25 – Apple Wallet
- 26 – Google Wallet
- 27 – Viber
Enregistrement des appareils e-mail
Anchor link toPour enregistrer un abonné e-mail pour votre application, envoyez le paramètre "email": "email_address@domain.com" dans votre requête /registerDevice ou /registerEmail comme suit :
Exemple de requête
Anchor link to{ "request":{ "application": "XXXXX-XXXXX", // required. Pushwoosh application code "email": "email_address@domain.com", // required. Email address to register for your email project "language": "en", // optional. ISO 639-1|639-2 language code "userId": "Alex", // optional. "tags": { // optional. Tag values to set for the device registered "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // sets the list of values for Tags of List type "DateTag": "2024-10-02 22:11", // note the time should be in UTC "BooleanTag": true // valid values are: true, false } }}Enregistrement des appareils WhatsApp
Anchor link toPour enregistrer un appareil WhatsApp pour votre application, suivez ces directives :
-
hwid : Assurez-vous que ce champ inclut le préfixe whatsapp: suivi du numéro de téléphone au format E.164 (par ex., whatsapp:+0000000000). Le numéro de téléphone doit être valide, ce que Pushwoosh vérifiera.
-
Push token : Un push token n’est pas requis, car le hwid fonctionnera automatiquement comme push token.
-
device_type : Définissez ce champ à 21 pour spécifier WhatsApp comme plateforme.
Exemple de requête
Anchor link to{ "request": { "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "whatsapp:+0000000000", // required. WhatsApp prefix and valid phone number "timezone": 3600, // optional. Time offset in seconds "device_type": 21, // required. WhatsApp device type is 21 "language": "en", // optional. ISO 639-1|639-2 language code "userId": "Alex", // optional. User identifier "tags": { // optional. Tag values for custom segmentation "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], "DateTag": "2024-10-02 22:11", // UTC format "BooleanTag": true }, "app_version": "1.2.3", // optional. Application version "device_model": "Samsung SM-G355H", // optional. Device model "os_version": "2.3" // optional. Operating system version }}Enregistrement des appareils SMS
Anchor link toPour enregistrer un appareil SMS pour votre application, suivez ces directives :
-
hwid : Assurez-vous que ce champ inclut le numéro de téléphone au format E.164 (par ex., +0000000000). Le numéro de téléphone doit être valide, ce que Pushwoosh vérifiera.
-
Push token : Un push token n’est pas requis, car le hwid fonctionnera automatiquement comme push token.
-
device_type : Définissez ce champ requis à 18 pour désigner SMS comme plateforme.
Exemple de requête
Anchor link to{ "request": { "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "+0000000000", // required. Valid phone number in E.164 format "timezone": 3600, // optional. Time offset in seconds "device_type": 18, // required. SMS device type is 18 "language": "en", // optional. ISO 639-1|639-2 language code "userId": "Alex", // optional. User identifier "tags": { // optional. Tag values for custom segmentation "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], "DateTag": "2024-10-02 22:11", // UTC format "BooleanTag": true }, "app_version": "1.2.3", // optional. Application version "device_model": "Samsung SM-G355H", // optional. Device model "os_version": "2.3" // optional. Operating system version }}Codes de statut :
| Code de statut HTTP | status_code | Description |
|---|---|---|
| 200 | 200 | Appareil enregistré avec succès |
| 200 | 210 | Erreur d’argument. Voir status_message pour plus d’informations. |
| 400 | N/A | Chaîne de requête malformée |
| 500 | 500 | Erreur interne |
unregisterDevice
Anchor link toPOST https://api.pushwoosh.com/json/1.3/unregisterDevice
Supprime le push token de l’appareil. L’appareil désinscrit est toujours compté dans le Total des Appareils et peut être atteint avec les In-Apps. Appelée en interne depuis le SDK.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| hwid* | string | ID matériel de l’appareil utilisé dans la requête /registerDevice. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16XXXXXe7a6beceXXXXX530fb2" // required. Hardware device ID used in /registerDevice API }}Codes de statut :
| Code de statut HTTP | status_code | Description |
|---|---|---|
| 200 | 200 | Appareil désabonné avec succès |
| 200 | 210 | Erreur d’argument. Voir status_message pour plus d’informations. |
| 400 | N/A | Chaîne de requête malformée |
| 500 | 500 | Erreur interne |
deleteDevice
Anchor link toPOST https://api.pushwoosh.com/api/v2/device-api/deleteDevice
Supprime un appareil et toutes ses données associées, identifié par le HWID spécifié au sein de l’application. Contrairement à /unregisterDevice, qui ne supprime que le push token et conserve l’enregistrement de l’appareil, /deleteDevice supprime entièrement l’appareil. La requête est traitée de manière asynchrone, et le point de terminaison renvoie 200 OK dès que la demande de suppression a été acceptée pour traitement.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
| Content-Type | Oui | application/json |
Corps de la requête
Anchor link to| Nom | Requis | Type | Description |
|---|---|---|---|
| application | Oui | string | Code d’application Pushwoosh |
| hwid | Oui | string | ID matériel de l’appareil de l’appareil à supprimer. |
Exemple de requête
Anchor link to{ "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16df378e7a6bece9614e1530fb2" // required. Hardware device ID of the device to delete}Exemple de réponse
Anchor link to{ "status_code": 200, "status_message": "OK", "response": null}Codes de statut
Anchor link to| Code de statut HTTP | status_code | Description |
|---|---|---|
| 200 | 200 | Demande de suppression acceptée |
| 200 | 210 | Erreur d’argument. Voir status_message pour plus d’informations. |
| 400 | N/A | Chaîne de requête malformée |
| 401 | N/A | Token d’autorisation manquant ou invalide |
| 500 | 500 | Erreur interne |
setTags
Anchor link toPOST https://api.pushwoosh.com/json/1.3/setTags
Définit les valeurs des tags pour l’appareil. Appelée depuis le SDK.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| hwid* | string | ID matériel de l’appareil utilisé dans la requête /registerDevice. |
| tags* | object | Objet JSON des tags à définir, envoyez “null” pour supprimer la valeur. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request":{ "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16XXXXXe7a6becXXXXXe1530fb2", // required. Hardware device ID used in /registerDevice API "tags": { // required. "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // sets the list of values for Tags of List type "DateTag": "2024-10-02 22:11", // note the time is in UTC "BooleanTag": true // valid values are - true, false } }}Incrémenter les valeurs du tag Integer
Anchor link toPour incrémenter une valeur du Tag Integer, utilisez le paramètre operation avec la valeur “increment” comme suit :
{ "request":{ "application": "12345-67890", // required. Pushwoosh application code "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // required. hardware device ID used in /registerDevice API "tags": { // required. "Level": { // Tag name "operation": "increment", // overwrites the integer tag in increments of the following value "value": 1 // increment for the tag value } } }}Décrémenter les valeurs du tag Integer
Anchor link toPour décrémenter, utilisez des nombres négatifs comme valeur pour l’opération “increment” (-1, -2, -3, -n) :
{ "request":{ "application": "12345-67890", // required. Pushwoosh application code "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // required. Hardware device ID used in /registerDevice API "tags": { // required "Level": { // Tag name "operation": "increment", // overwrites the integer tag in decrement of the following value "value": -1 // decrement for the tag value } } }}Ajouter des valeurs au tag List
Anchor link toPour étendre le Tag List avec de nouvelles valeurs, utilisez le paramètre operation avec la valeur “append” comme suit :
{ "request": { "hwid": "3d124a79XXXXf189XXXX7dfd9XXXXafd", // required. Hardware device ID used in /registerDevice API "application": "6XXXX-XXXX3", // required. Pushwoosh application code "tags": { // required. "ListTag": { // Tag name "operation": "append", // appends following values to the Tag's list of values "value": [ // values to append "tag2", "tag3" ] } } }}Supprimer des valeurs du tag List
Anchor link toPour supprimer certaines valeurs du Tag List, utilisez l’opération “remove” comme suit :
{ "request":{ "application": "12345-67890", // required. Pushwoosh application code "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // required. Hardware device ID used in /registerDevice API "tags": { // required. "In-app Product": { // Tag name "operation": "remove", // removes the following values from the list tag "value": "outwear_02" // value or values to remove } } }}Définir les tags par UserID
Anchor link toPour définir des tags pour tous les appareils associés à un User ID particulier, utilisez le paramètre “userId” au lieu de “hwid”.
{ "request":{ "application": "AAAAA-BBBBB", // Pushwoosh app code "userId": "some_user", // user ID you'd like to set tags for "tags": { // tags and values to set "Language": "es" } }}Codes de statut :
| Code de statut HTTP | status_code | Description |
|---|---|---|
| 200 | 200 | Les tags ont été définis avec succès |
| 200 | 210 | Erreur d’argument. Voir status_message pour plus d’informations. |
| 400 | N/A | Chaîne de requête malformée |
| 500 | 500 | Erreur interne |
getTags
Anchor link toPOST https://api.pushwoosh.com/json/1.3/getTags
Récupère une liste de tags avec les valeurs correspondantes pour l’appareil spécifique.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| userId | string | User ID à utiliser à la place de “hwid”. S’il est utilisé avec un “hwid”, le “hwid” prévaut. |
| hwid | string | ID matériel de l’appareil utilisé dans la requête /registerDevice. |
{ "status_code": 200, "status_message": "OK", "response": { "result": { "Language": "fr" } }}{ "request":{ "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "HWID", // optional. Hardware device ID used in /registerDevice API "userId": "USER_ID" // optional. Can be used instead of "hwid" to retrieve tags for a specific user }}setBadge
Anchor link toPOST https://api.pushwoosh.com/json/1.3/setBadge
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| hwid* | string | ID matériel de l’appareil utilisé dans la requête /registerDevice. |
| badge* | integer | Badge actuel sur l’application. |
{ "status_code": 200, "status_message": "OK"}{ "request":{ "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16dXXXXe7a6XXXX9614XXXX0fb2", // required. Hardware device ID used in /registerDevice API "badge": 4 // required. Current badge on the application }}Cette méthode N’EST PAS utilisée pour mettre à jour la valeur du badge sur l’appareil. Veuillez plutôt utiliser la requête /createMessage avec le paramètre "ios_badges".
applicationOpen
Anchor link toPOST https://api.pushwoosh.com/json/1.3/applicationOpen
Enregistre un événement d’ouverture d’application. Appelée en interne depuis le SDK.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| hwid* | string | ID matériel de l’appareil utilisé dans la requête /registerDevice. |
{ "status_code": 200, "status_message": "OK"}{ "request": { "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16dXXXXe7a6XXXX9614eXXXXfb2" // required. Hardware device ID used in /registerDevice API }}pushStat
Anchor link toPOST https://api.pushwoosh.com/json/1.3/pushStat
Enregistre un événement d’ouverture de push. Appelée en interne depuis le SDK.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| hwid* | string | ID matériel de l’appareil utilisé dans la requête /registerDevice. |
| userId | string | User ID à associer à l’événement d’ouverture de push. |
| hash | string | Tag de hachage reçu dans la notification push (paramètre “p” de la charge utile du push). |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16dfXXXX7a6beXXXX14e1530fb2", // required. Hardware device ID used in /registerDevice API "userId": "USER012345", // optional. The user id to associate with the push open event "hash": "HASH_TAG" // optional. Hash tag received in push notification // ("p" parameter in the push payload) }}messageDeliveryEvent
Anchor link toPOST https://api.pushwoosh.com/json/1.3/messageDeliveryEvent
Enregistre un événement de livraison de push pour l’appareil. Appelée en interne depuis le SDK.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Token d’API Appareil pour accéder à l’API Appareil. Remplacez XXXX par votre véritable token d’API Appareil. |
Corps de la requête
Anchor link to| Nom | Type | Description |
|---|---|---|
| application* | string | Code d’application Pushwoosh |
| hwid* | string | ID matériel de l’appareil utilisé dans la requête /registerDevice. |
| hash | string | Tag de hachage reçu dans la notification push (paramètre “p” de la charge utile du push). |
{ "status_code": 200, "status_message": "OK", "response": null} { "request": { "application": "XXXXX-XXXXX", // required. Pushwoosh application code "hwid": "8f65b16dfXXXX7a6bece9XXXX1530fb2", // required. Hardware device ID used in /registerDevice API "hash": "HASH_TAG" // optional. Hash tag received in push notification // ("p" parameter in the push payload) }}