API centrée sur l'utilisateur
L’API centrée sur l’utilisateur fonctionne avec des utilisateurs plutôt qu’avec des appareils individuels. Un utilisateur est identifié par un User ID que vous attribuez, et un utilisateur peut avoir plusieurs appareils. Utilisez ces méthodes pour associer un User ID à un appareil, supprimer un utilisateur avec tous ses appareils et publier les événements effectués par un utilisateur.
registerUser
Anchor link toPOST https://api.pushwoosh.com/json/1.3/registerUser
Associe un ID utilisateur externe à un appareil spécifié.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Jeton d’API d’appareil pour accéder à l’API d’appareil. Remplacez XXXX par votre jeton d’API d’appareil réel. |
Corps de la requête
Anchor link to| Nom | Requis | Type | Description |
|---|---|---|---|
| userId | Non | string | ID utilisateur à associer à un appareil. Si vide, utilisez hwid. |
| application | Oui | string | Code d’application Pushwoosh |
| hwid | Oui | string | HWID Pushwoosh |
| tz_offset | Non | integer | Décalage de fuseau horaire en secondes pour l’appareil. |
| device_type | Non | integer | Type d’appareil. Voir les valeurs possibles dans /registerDevice. |
Peut être utilisé ultérieurement dans l’appel API /createMessage (le paramètre users).
Vous pouvez appeler cette fonction avant d’avoir le jeton push et avant l’appel /registerDevice.
Exemple de requête
Anchor link to{ "request": { "userId": "user_3078a", // optionnel. Si vide, utilisez hwid "application": "XXXXX-XXXXX", // requis. Code d'application Pushwoosh "hwid": "8f65b16df378e7a6bece9614e1530fb2", // requis. ID d'appareil matériel "tz_offset": -3600, // optionnel. Décalage de fuseau horaire en secondes "device_type": 3 // optionnel. Type d'appareil, voir /registerDevice // pour les types d'appareils }}Exemple de réponse
Anchor link to{ "status_code": 200, "status_message": "OK", "response": null}deleteUser
Anchor link toPOST https://api.pushwoosh.com/api/v2/device-api/deleteUser
Supprime un utilisateur et tous les appareils associés à l’ID utilisateur spécifié dans l’application. 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 | Jeton d’API d’appareil pour accéder à l’API d’appareil. Remplacez XXXX par votre jeton d’API d’appareil réel. |
| Content-Type | Oui | application/json |
Corps de la requête
Anchor link to| Nom | Requis | Type | Description |
|---|---|---|---|
| application | Oui | string | Code d’application Pushwoosh |
| user_id | Oui | string | ID utilisateur à supprimer. Tous les appareils associés à cet utilisateur dans l’application spécifiée seront supprimés. |
Exemple de requête
Anchor link to{ "application": "XXXXX-XXXXX", // requis. Code d'application Pushwoosh "user_id": "user_3078a" // requis. ID utilisateur à supprimer}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 | Jeton d’autorisation manquant ou invalide |
| 500 | 500 | Erreur interne |
postEvent
Anchor link toPOST https://api.pushwoosh.com/json/1.3/postEvent
Déclenche un événement.
En-têtes de la requête
Anchor link to| Nom | Requis | Valeur | Description |
|---|---|---|---|
| Authorization | Oui | Token XXXX | Jeton d’API d’appareil pour accéder à l’API d’appareil. Remplacez XXXX par votre jeton d’API d’appareil réel. |
Corps de la requête
Anchor link to| Nom | Requis | Type | Description |
|---|---|---|---|
| hwid | Oui | string | ID d’appareil matériel utilisé dans une requête /registerDevice. Peut être utilisé avec ‘userId’ pour identifier un utilisateur qui a déclenché un événement. |
| application | Oui | string | Code d’application Pushwoosh |
| event | Oui | string | Nom de l’événement exactement tel que créé dans le Control Panel de Pushwoosh. |
| attributes | Oui | object | Objet JSON avec les attributs de l’événement. Laissez-le vide si aucun attribut ne doit être passé. |
| timestampUTC | Non | integer | Horodatage en UTC. |
| timestampCurrent | Non | integer | Horodatage en heure locale. |
| userId | Oui | string | ID utilisateur associé à un utilisateur qui a déclenché l’événement. Peut être remplacé par ou utilisé avec un HWID. |
| device_type | Non | integer | Voir les valeurs possibles |
Le nom de l’événement dans la requête doit correspondre au nom de l’événement dans le Control Panel de Pushwoosh. Notez que la propriété « attributes » peut être vide (mais pas omise) si l’événement n’a pas d’attributs.
Exemple de requête
Anchor link to{ "request":{ "hwid": "8f65b16df378e7a6bece9614e1530fb2", // requis. ID d'appareil matériel utilisé dans une API /registerDevice. // Peut être utilisé avec un userId pour identifier un // utilisateur qui a déclenché un événement. "application": "XXXXX-XXXXX", // requis. Code d'application Pushwoosh "event": "activityCompleted", // requis. Nom de l'événement exactement tel que créé dans le Control Panel de Pushwoosh "attributes": { // requis. Laissez vide si aucun attribut ne doit être passé. "login": "facebook", "success": "yes", "internet": "wifi" }, "timestampUTC": 1435228403, // optionnel. Horodatage en UTC "timestampCurrent": 1435253603, // optionnel. Horodatage en heure locale "userId": "someuser@user.com", // requis. Un ID utilisateur qui est utilisé pour l'identification des // utilisateurs sur plusieurs appareils. Peut être remplacé par // ou utilisé avec un HWID. "device_type": 1 // optionnel. }}Exemple de réponse
Anchor link to{ "status_code": 200, "status_message": "OK", "response": { "code": "61BC9-84DD0" }}Envoi d’événements de conversion
Anchor link toPour déclarer les revenus directement au lieu de suivre les revenus d’un événement existant, envoyez postEvent avec PW_Conversion comme nom d’événement et la value (valeur) et la currency (devise) de la transaction dans les attributes :
{ "request":{ "hwid": "8f65b16df378e7a6bece9614e1530fb2", "application": "XXXXX-XXXXX", "event": "PW_Conversion", "attributes": { "value": 49.99, // requis. Montant de la transaction "currency": "USD", // requis. Code de devise ISO 4217 "transaction_id": "txn_8f21", // optionnel. Votre propre référence de transaction "product_id": "prod_premium" // optionnel }, "userId": "someuser@user.com" }}Mappage automatique des revenus
Anchor link toSi un événement porte les attributs __amount et __currency, Pushwoosh le mappe automatiquement sur PW_Conversion dès la première arrivée d’un tel événement, et active le suivi des revenus pour celui-ci, sans nécessiter de configuration des revenus manuelle. Cela s’applique à tout nom d’événement autre que PW_Conversion lui-même.