API de Dispositivo
registerDevice
Anchor link toPOST https://api.pushwoosh.com/json/1.3/registerDevice
Llamado internamente desde el SDK. Registra el dispositivo para la aplicación.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| push_token | string | Token push para el dispositivo. |
| language | string | Configuración regional de idioma del dispositivo. Debe ser un código de dos letras en minúsculas según el estándar ISO-639-1. |
| hwid* | string | Cadena única para identificar el dispositivo (IDFV en iOS, valor generado aleatoriamente en Android). Más información |
| timezone | integer | Desplazamiento de la zona horaria en segundos para el dispositivo. |
| device_type* | integer | Tipo de dispositivo. Vea los valores posibles a continuación. |
| string | Dirección de correo electrónico para registrar (usar para usuarios de correo electrónico en lugar de HWID y token push). | |
| tags | object | Valores de etiqueta para asignar al dispositivo registrado. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "push_token": "dec301908b9ba8XXXXX57a58e40f96f5XXXXX2068674f5XXXXa25cdc250a2a41", // opcional. "hwid": "1CA6XXXXX-8DAC-XXXXX-XXXXX-B756288B6D3C", // requerido. ID de hardware del dispositivo "idfa": "AEBE52E7-0XXXXX-455A-XXXXX-E57283966239", // opcional. "timezone": 3600, // opcional. Desplazamiento en segundos "device_type": 1, // requerido. Vea los valores posibles a continuación. Para correos electrónicos, // use los parámetros "emails" como se describe a continuación. "email": "email_address@domain.com", // usar en lugar de "hwid" y "push_token" para registrar // la dirección de correo electrónico para su proyecto de correo electrónico "language": "en", // opcional. Código de idioma ISO 639-1|639-2 "userId": "Alex", // opcional. "tags": { // opcional. Valores de etiqueta para establecer para el dispositivo registrado "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // establece la lista de valores para Etiquetas de tipo Lista "DateTag": "2024-10-02 22:11", // tenga en cuenta que la hora debe estar en UTC "BooleanTag": true // los valores válidos son: true, false },
// etiquetas del sistema, opcionales "app_version": "1.2.3", "device_model": "Samsung SM-G355H", "os_version": "2.3",
// claves de cifrado opcionales para chrome/firefox "public_key": "BNmDO4BTKEMJqaqprTf7t/HBXXXXX/orcXXXXX/scS5CFP6XXXXXHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=", "auth_token": "RlRmCXXXXX/s7XXXXXjKFzoQ==",
// claves FCM opcionales para Chrome (para XMPP) "fcm_token": "BNmDO4BTKEMJXXXXXprTf7t/XXXXXBQ/orXXXXXc/scS5CFP6zhQGIHI1/GgRQD8c4kTxTEEF0quvIUiLQqoBY0/Qo=", "fcm_push_set": "RlXXXXXGM/s7XXXXXjKFzoQ==" }}Posibles tipos de dispositivo:
- 1 – iOS
- 3 – Android
- 7 – Mac OS X
- 8 – Windows
- 9 – Amazon
- 10 – Safari
- 11 – Chrome
- 12 – Firefox
- 14 – Email
- 17 – Huawei
- 18 – SMS
- 21 – WhatsApp
Registro de dispositivos de correo electrónico
Anchor link toPara registrar un suscriptor de correo electrónico para su aplicación, envíe el parámetro "email": "email_address@domain.com" en su solicitud /registerDevice o /registerEmail de la siguiente manera:
Ejemplo de solicitud
Anchor link to{ "request":{ "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "email": "email_address@domain.com", // requerido. Dirección de correo electrónico para registrar para su proyecto de correo electrónico "language": "en", // opcional. Código de idioma ISO 639-1|639-2 "userId": "Alex", // opcional. "tags": { // opcional. Valores de etiqueta para establecer para el dispositivo registrado "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // establece la lista de valores para Etiquetas de tipo Lista "DateTag": "2024-10-02 22:11", // tenga en cuenta que la hora debe estar en UTC "BooleanTag": true // los valores válidos son: true, false } }}Registro de dispositivos de WhatsApp
Anchor link toPara registrar un dispositivo de WhatsApp para su aplicación, siga estas pautas:
-
hwid: Asegúrese de que este campo incluya el prefijo whatsapp: seguido del número de teléfono en formato E.164 (por ejemplo, whatsapp:+0000000000). El número de teléfono debe ser válido, lo cual Pushwoosh verificará.
-
Token push: No se requiere un token push, ya que el hwid funcionará automáticamente como el token push.
-
device_type: Establezca este campo en 21 para especificar WhatsApp como la plataforma.
Ejemplo de solicitud
Anchor link to{ "request": { "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "whatsapp:+0000000000", // requerido. Prefijo de WhatsApp y número de teléfono válido "timezone": 3600, // opcional. Desplazamiento de tiempo en segundos "device_type": 21, // requerido. El tipo de dispositivo de WhatsApp es 21 "language": "en", // opcional. Código de idioma ISO 639-1|639-2 "userId": "Alex", // opcional. Identificador de usuario "tags": { // opcional. Valores de etiqueta para segmentación 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. Versión de la aplicación "device_model": "Samsung SM-G355H", // opcional. Modelo del dispositivo "os_version": "2.3" // opcional. Versión del sistema operativo }}Registro de dispositivos SMS
Anchor link toPara registrar un dispositivo SMS para su aplicación, siga estas pautas:
-
hwid: Asegúrese de que este campo incluya el número de teléfono en formato E.164 (por ejemplo, +0000000000). El número de teléfono debe ser válido, lo cual Pushwoosh verificará.
-
Token push: No se requiere un token push, ya que el hwid funcionará automáticamente como el token push.
-
device_type: Establezca este campo requerido en 18 para designar SMS como la plataforma.
Ejemplo de solicitud
Anchor link to{ "request": { "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "+0000000000", // requerido. Número de teléfono válido en formato E.164 "timezone": 3600, // opcional. Desplazamiento de tiempo en segundos "device_type": 18, // requerido. El tipo de dispositivo SMS es 18 "language": "en", // opcional. Código de idioma ISO 639-1|639-2 "userId": "Alex", // opcional. Identificador de usuario "tags": { // opcional. Valores de etiqueta para segmentación 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. Versión de la aplicación "device_model": "Samsung SM-G355H", // opcional. Modelo del dispositivo "os_version": "2.3" // opcional. Versión del sistema operativo }}Códigos de estado:
| Código de estado HTTP | status_code | Descripción |
|---|---|---|
| 200 | 200 | Dispositivo registrado con éxito |
| 200 | 210 | Error de argumento. Vea status_message para más información. |
| 400 | N/A | Cadena de solicitud mal formada |
| 500 | 500 | Error interno |
unregisterDevice
Anchor link toPOST https://api.pushwoosh.com/json/1.3/unregisterDevice
Elimina el token push del dispositivo. El dispositivo no registrado todavía se cuenta en Total Devices y se puede contactar con In-Apps. Llamado internamente desde el SDK.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| hwid* | string | ID de hardware del dispositivo utilizado en la solicitud /registerDevice. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "8f65b16XXXXXe7a6beceXXXXX530fb2" // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice }}Códigos de estado:
| Código de estado HTTP | status_code | Descripción |
|---|---|---|
| 200 | 200 | Dispositivo dado de baja con éxito |
| 200 | 210 | Error de argumento. Vea status_message para más información. |
| 400 | N/A | Cadena de solicitud mal formada |
| 500 | 500 | Error interno |
deleteDevice
Anchor link toPOST https://api.pushwoosh.com/api/v2/device-api/deleteDevice
Elimina un dispositivo y todos sus datos asociados identificados por el HWID especificado dentro de la aplicación. A diferencia de /unregisterDevice, que solo elimina el token push y mantiene el registro del dispositivo, /deleteDevice elimina completamente el dispositivo. La solicitud se procesa de forma asíncrona y el endpoint devuelve 200 OK tan pronto como la solicitud de eliminación ha sido aceptada para su procesamiento.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
| Content-Type | Sí | application/json |
Cuerpo de la solicitud
Anchor link to| Nombre | Requerido | Tipo | Descripción |
|---|---|---|---|
| application | Sí | string | Código de aplicación de Pushwoosh |
| hwid | Sí | string | ID de hardware del dispositivo del dispositivo a eliminar. |
Ejemplo de solicitud
Anchor link to{ "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "8f65b16df378e7a6bece9614e1530fb2" // requerido. ID de hardware del dispositivo a eliminar}Ejemplo de respuesta
Anchor link to{ "status_code": 200, "status_message": "OK", "response": null}Códigos de estado
Anchor link to| Código de estado HTTP | status_code | Descripción |
|---|---|---|
| 200 | 200 | Solicitud de eliminación aceptada |
| 200 | 210 | Error de argumento. Vea status_message para más información. |
| 400 | N/A | Cadena de solicitud mal formada |
| 401 | N/A | Token de autorización faltante o inválido |
| 500 | 500 | Error interno |
setTags
Anchor link toPOST https://api.pushwoosh.com/json/1.3/setTags
Establece los valores de las etiquetas para el dispositivo. Llamado desde el SDK.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| hwid* | string | ID de hardware del dispositivo utilizado en la solicitud /registerDevice. |
| tags* | object | Objeto JSON de etiquetas a establecer, envíe “null” para eliminar el valor. |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request":{ "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "8f65b16XXXXXe7a6becXXXXXe1530fb2", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "tags": { // requerido. "StringTag": "string value", "IntegerTag": 42, "ListTag": ["string1", "string2"], // establece la lista de valores para Etiquetas de tipo Lista "DateTag": "2024-10-02 22:11", // tenga en cuenta que la hora está en UTC "BooleanTag": true // los valores válidos son - true, false } }}Incrementar valores de etiqueta de tipo Entero
Anchor link toPara incrementar un valor de la Etiqueta de tipo Entero, use el parámetro operation con el valor “increment” de la siguiente manera:
{ "request":{ "application": "12345-67890", // requerido. Código de aplicación de Pushwoosh "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "tags": { // requerido. "Level": { // Nombre de la etiqueta "operation": "increment", // sobrescribe la etiqueta de entero en incrementos del siguiente valor "value": 1 // incremento para el valor de la etiqueta } } }}Decrementar valores de etiqueta de tipo Entero
Anchor link toPara decrementar, use los números negativos como valor para la operación “increment” (-1, -2, -3,-n):
{ "request":{ "application": "12345-67890", // requerido. Código de aplicación de Pushwoosh "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "tags": { // requerido "Level": { // Nombre de la etiqueta "operation": "increment", // sobrescribe la etiqueta de entero en decrementos del siguiente valor "value": -1 // decremento para el valor de la etiqueta } } }}Añadir valores de etiqueta de tipo Lista
Anchor link toPara extender la Etiqueta de tipo Lista con nuevos valores, use el parámetro operation con el valor “append” de la siguiente manera:
{ "request": { "hwid": "3d124a79XXXXf189XXXX7dfd9XXXXafd", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "application": "6XXXX-XXXX3", // requerido. Código de aplicación de Pushwoosh "tags": { // requerido. "ListTag": { // Nombre de la etiqueta "operation": "append", // añade los siguientes valores a la lista de valores de la Etiqueta "value": [ // valores a añadir "tag2", "tag3" ] } } }}Eliminar valores de etiqueta de tipo Lista
Anchor link toPara eliminar algunos valores de la Etiqueta de tipo Lista, use la operación “remove” de la siguiente manera:
{ "request":{ "application": "12345-67890", // requerido. Código de aplicación de Pushwoosh "hwid": "21AB7628-XXXX-XXXX-CCC0-PO287CS24CA4", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "tags": { // requerido. "In-App Product": { // Nombre de la etiqueta "operation": "remove", // elimina los siguientes valores de la etiqueta de lista "value": "outwear_02" // valor o valores a eliminar } } }}Establecer etiquetas por UserID
Anchor link toPara establecer etiquetas para todos los dispositivos asociados a un User ID particular, use el parámetro “userId” en lugar de “hwid”.
{ "request":{ "application": "AAAAA-BBBBB", // Código de aplicación de Pushwoosh "userId": "some_user", // ID de usuario para el que desea establecer etiquetas "tags": { // etiquetas y valores a establecer "Language": "es" } }}Códigos de estado:
| Código de estado HTTP | status_code | Descripción |
|---|---|---|
| 200 | 200 | Las etiquetas se han establecido con éxito |
| 200 | 210 | Error de argumento. Vea status_message para más información. |
| 400 | N/A | Cadena de solicitud mal formada |
| 500 | 500 | Error interno |
getTags
Anchor link toPOST https://api.pushwoosh.com/json/1.3/getTags
Recupera una lista de etiquetas con los valores correspondientes para el dispositivo específico.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| userId | string | User ID para ser usado en lugar de “hwid”. Si se usa junto con un “hwid”, el “hwid” prevalece. |
| hwid | string | ID de hardware del dispositivo utilizado en la solicitud /registerDevice. |
{ "status_code": 200, "status_message": "OK", "response": { "result": { "Language": "fr" } }}{ "request":{ "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "HWID", // opcional. ID de hardware del dispositivo utilizado en la API /registerDevice "userId": "USER_ID" // opcional. Se puede usar en lugar de "hwid" para recuperar etiquetas para un usuario específico }}setBadge
Anchor link toPOST https://api.pushwoosh.com/json/1.3/setBadge
Envía el valor actual del badge para un dispositivo a Pushwoosh. Llamado internamente desde el SDK.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| hwid* | string | ID de hardware del dispositivo utilizado en la solicitud /registerDevice. |
| badge* | integer | Badge actual en la aplicación. |
{ "status_code": 200, "status_message": "OK"}{ "request":{ "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "8f65b16dXXXXe7a6XXXX9614XXXX0fb2", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "badge": 4 // requerido. Badge actual en la aplicación }}Llamado desde el SDK internamente. Envía el valor actual del badge para un dispositivo a Pushwoosh. Esto sucede internamente cuando la aplicación cambia el valor del badge en un dispositivo iOS. Permite que los badges autoincrementables funcionen correctamente.
applicationOpen
Anchor link toPOST https://api.pushwoosh.com/json/1.3/applicationOpen
Registra un evento de apertura de aplicación. Llamado internamente desde el SDK.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| hwid* | string | ID de hardware del dispositivo utilizado en la solicitud /registerDevice. |
{ "status_code": 200, "status_message": "OK"}{ "request": { "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "8f65b16dXXXXe7a6XXXX9614eXXXXfb2" // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice }}pushStat
Anchor link toPOST https://api.pushwoosh.com/json/1.3/pushStat
Registra un evento de apertura de push. Llamado internamente desde el SDK.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| hwid* | string | ID de hardware del dispositivo utilizado en la solicitud /registerDevice. |
| userId | string | User ID para asociar con el evento de apertura de push. |
| hash | string | Etiqueta hash recibida en la notificación push (parámetro “p” de la carga útil del push). |
{ "status_code": 200, "status_message": "OK", "response": null}{ "request": { "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "8f65b16dfXXXX7a6beXXXX14e1530fb2", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "userId": "USER012345", // opcional. El id de usuario para asociar con el evento de apertura de push "hash": "HASH_TAG" // opcional. Etiqueta hash recibida en la notificación push // (parámetro "p" en la carga útil del push) }}messageDeliveryEvent
Anchor link toPOST https://api.pushwoosh.com/json/1.3/messageDeliveryEvent
Registra el evento de entrega de push para el dispositivo. Llamado internamente desde el SDK.
Cabeceras de la solicitud
Anchor link to| Nombre | Requerido | Valor | Descripción |
|---|---|---|---|
| Authorization | Sí | Token XXXX | Token de API de Dispositivo para acceder a la API de Dispositivo. Reemplace XXXX con su token de API de Dispositivo real. |
Cuerpo de la solicitud
Anchor link to| Nombre | Tipo | Descripción |
|---|---|---|
| application* | string | Código de aplicación de Pushwoosh |
| hwid* | string | ID de hardware del dispositivo utilizado en la solicitud /registerDevice. |
| hash | string | Etiqueta hash recibida en la notificación push (parámetro “p” de la carga útil del push). |
{ "status_code": 200, "status_message": "OK", "response": null} { "request": { "application": "XXXXX-XXXXX", // requerido. Código de aplicación de Pushwoosh "hwid": "8f65b16dfXXXX7a6bece9XXXX1530fb2", // requerido. ID de hardware del dispositivo utilizado en la API /registerDevice "hash": "HASH_TAG" // opcional. Etiqueta hash recibida en la notificación push // (parámetro "p" en la carga útil del push) }}