Ir al contenido principal
Todas las coleccionesConfiguraciónIntegracionesIntegración de Datos por API
3. Entidad Clientes: Gestión de la información y atributos personalizados de los clientes
3. Entidad Clientes: Gestión de la información y atributos personalizados de los clientes
Actualizado hace más de 3 meses

La entidad Clientes en WoowUp te permite gestionar la información de tus usuarios, incluyendo sus datos personales, comportamiento de compra y atributos personalizados. Este recurso es fundamental para crear campañas de marketing efectivas basadas en el perfil y la actividad de los clientes.

Diccionario de campos:

Campo

Tipo

Descripción

document

string

Documento o cédula

email

string

Email

telephone

string

Teléfono

service_uid

string

Identificador externo

first_name

string

Nombre

last_name

string

Apellido

birthdate

string

Fecha de nacimiento

Formato: yyyy-mm-dd

gender

enum

Valores: "F", "M"

street

string

Dirección

postcode

string

Código postal

city

string

Ciudad

department

string

Departamento / Provincia

state

string

Estado

country

string

País

document_type

string

Tipo de documento

marital_status

enum

Valores: "single", "commited", "married", "divorced", "widowed".

tags

string

Etiquetas separadas por coma.
Ejemplo: "tag1,tag2,tag3"

points

integer

Puntos totales del cliente

mailing_enabled

enum

Habilitado para envío de emails. Valores: "enabled", "disabled".

mailing_disabled_reason

enum

Razón por la que no está habilitado. Valores: "bounce", "unsubscribe", "spamreport", "dropped", "other".

whatsapp_enabled

string

Habilitado para envío de Whatsapp. Valores: "enabled", "disabled".

whatsapp_disabled_reason

string

Razón por la que no está habilitado. Valores: "bounce", "unsubscribe", "spamreport", "dropped", "other".

sms_enabled

string

Habilitado para envío de SMS. Valores: "enabled", "disabled".

sms_disabled_reason

string

Razón por la que no está habilitado. Valores: "bounce", "unsubscribe", "spamreport", "dropped", "other".

club_inscription_date

string

custom_attributes

array

Par clave-valor con información adicional del usuario. La definición de estos atributos debe ser creada previamente


3.1 Identificación de clientes mediante múltiples identificadores

WoowUp permite identificar a un cliente utilizando varios identificadores clave, lo que garantiza que puedas trabajar con los datos del cliente de manera flexible:

  1. document: Número de documento de identidad.

  2. email: Correo electrónico principal del cliente.

  3. telephone: Número de teléfono móvil.

  4. service_uid: Identificador único asignado al cliente por un servicio externo (opcional).

Para interactuar con la API de WoowUp, cualquiera de estos identificadores puede utilizarse para obtener, actualizar o crear un cliente. Al menos uno debe estar presente.

La jerarquía y prioridad de los identificadores es la que se muestra en el listado, sin embargo es completamente personalizable dentro de WoowUp.


3.2 Lógica para crear o actualizar un cliente

Antes de crear o actualizar un cliente, verifica si ya existe en la base de datos de WoowUp utilizando el endpoint GET /users/exist. Dependiendo de la respuesta, se tomará una acción:

  1. Verificar si el cliente existe (GET user exist):
    Este endpoint permite verificar si un cliente con esos identificadores específicos ya está registrado en la base de datos de WoowUp. En este ejemplo, se incluyen el documento y el email del cliente, pero es posible incluir hasta los 4 identificadores como parámetros.

    Ejemplo:

    curl --request GET \ 
    --url https://api.woowup.com/apiv3/multiusers/exist?document=12345678&[email protected]\
    --header 'Accept: application/json' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Basic <tu_api_key>'

    Respuesta:

    {
    "payload": {
    "exist": true,
    "userapp_id": "31173442"
    },
    "message": "",
    "code": "ok",
    "time": "57ms"
    }

    A partir de la respuesta "exist": true/false, debemos optar por actualizar o crear el cliente dentro de WoowUp.


    2. Actualizar un cliente existente (PUT user):
    Si el cliente existe, es posible actualizar su información mediante este endpoint. Es necesario enviar en el body al menos un identificador (documento, email, teléfono o service_uid).

    Ejemplo:

    curl --request PUT \ 
    --url https://api.woowup.com/apiv3/multiusers \
    --header 'Authorization: Basic <tu_api_key>' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --data '{
    "document": "12345678",
    "email": "[email protected]",
    "first_name": "Juan",
    "last_name": "Pérez",
    "state": "CABA",
    "city": "Buenos Aires",
    "custom_attributes": {
    "loyalty_level": "Gold",
    "favorite_store": "Store N°01"
    }
    }'

    Respuesta:

    Como respuesta obtendrás todos los campos con los datos actualizados del cliente

    {
    "payload": {
    "userapp_id": XXXXXXXX,
    "user_id": YYYYYYYY,
    "app_id": ZZZ,
    "service_uid": null,
    "email": "[email protected]",
    "first_name": "Juan",
    "last_name": "Pérez",
    "telephone": null,
    "birthday": null,
    "gender": null,
    "document": "12345678",
    "document_type": null,
    "state": "CABA",
    "city": "Buenos Aires",
    "department": null,
    "address": null,
    "postal_code": null,
    "marital_status": null,
    "tags": null,
    "points": 0,
    "customform": [],
    "club_inscription_date": null,
    "blocked": false,
    "notes": null,
    "mailing_enabled": true,
    "mailing_enabled_reason": null,
    "whatsapp_enabled": false,
    "whatsapp_enabled_reason": "invalid_telephone",
    "sms_enabled": false,
    "sms_enabled_reason": "invalid_telephone",
    "custom_attributes": {
    "loyalty_level": "Gold",
    "favorite_store": "Store N°01" },
    "family": [],
    "createtime": "2024-02-01T21:26:18+00:00",
    "updatetime": "2024-07-05T21:34:35+00:00"
    },
    "message": "ok",
    "code": "ok",
    "time": "50ms"
    }

    3. Crear un nuevo cliente (POST user):
    Si el cliente no existe, procede a crearlo.

    Ejemplo:

    curl --request POST \ 
    --url https://api.woowup.com/apiv3/multiusers \
    --header 'Authorization: Basic <tu_api_key>' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --data '{
    "document": "12345678",
    "document_type": "DNI",
    "email": "[email protected]",
    "first_name": "Juan",
    "last_name": "Pérez",
    "state": "CABA",
    "city": "Buenos Aires",
    "telephone": "+54911558877744",
    "birthdate": "1990-01-21",
    "gender": "M",
    "marital_status": "single",
    "tags": "tag1,tag2",
    "points": 150,
    "mailing_enabled": "enabled",
    "custom_attributes": {
    "loyalty_level": "Gold",
    "favorite_store": "Store N°01"
    }
    }'

    Respuesta:

    Como respuesta obtendrás todos los campos con los datos creados del cliente

    {
    "payload": {
    "userapp_id": XXXXXXXX,
    "user_id": YYYYYYYY,
    "app_id": ZZZ,
    "service_uid": null,
    "email": "[email protected]",
    "first_name": "Juan",
    "last_name": "Pérez",
    "telephone": "+54911558877744",
    "birthday": "1990-01-21",
    "gender": "M",
    "document": "12345678",
    "document_type": null,
    "state": "CABA",
    "city": "Buenos Aires",
    "department": null,
    "address": null,
    "postal_code": null,
    "marital_status": null,
    "tags": "tag1,tag2",
    "points": 150,
    "customform": [],
    "club_inscription_date": null,
    "blocked": false,
    "notes": null,
    "mailing_enabled": true,
    "mailing_enabled_reason": null,
    "whatsapp_enabled": true,
    "whatsapp_enabled_reason": null,
    "sms_enabled": true,
    "sms_enabled_reason": null,
    "custom_attributes": {
    "loyalty_level": "Gold",
    "favorite_store": "Store N°01" },
    "family": [],
    "createtime": "2024-02-01T21:26:18+00:00",
    "updatetime": "2024-07-05T21:34:35+00:00"
    },
    "message": "ok",
    "code": "ok",
    "time": "50ms"
    }



3.3 Consulta de clientes mediante múltiples identificadores

Obtener un cliente (GET user):
Para obtener los datos de un cliente individual ya registrado en WoowUp, puedes usar el siguiente endpoint. Se puede buscar al cliente utilizando cualquiera de los identificadores disponibles: email, document, telephone, o service_uid.

Ejemplo:

curl --request GET \ 
--url https://api.woowup.com/apiv3/multiusers/find?document=20983522&[email protected] \
--header 'Authorization: Basic <tu_api_key>' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \

La respuesta incluirá todos los detalles del cliente, como su nombre, apellidos, correo electrónico, teléfono, y cualquier atributo personalizado que hayas definido.

Respuesta:

{
"payload": {
"userapp_id": XXXXXXXX,
"user_id": YYYYYYYY,
"app_id": ZZZ,
"service_uid": null,
"email": "[email protected]",
"first_name": "Juan",
"last_name": "Pérez",
"telephone": "+54911558877744",
"birthday": "1990-01-21",
"gender": "M",
"document": "12345678",
"document_type": null,
"state": "CABA",
"city": "Buenos Aires",
"department": null,
"address": null,
"postal_code": null,
"marital_status": null,
"tags": "tag1,tag2",
"points": 150,
"customform": [],
"club_inscription_date": null,
"blocked": false,
"notes": null,
"mailing_enabled": true,
"mailing_enabled_reason": null,
"whatsapp_enabled": true,
"whatsapp_enabled_reason": null,
"sms_enabled": true,
"sms_enabled_reason": null,
"custom_attributes": {
"loyalty_level": "Gold",
"favorite_store": "Store N°01" },
"family": [],
"createtime": "2024-02-01T21:26:18+00:00",
"updatetime": "2024-07-05T21:34:35+00:00"
},
"message": "ok",
"code": "ok",
"time": "50ms"
}


3.4 Eliminar un cliente (DELETE user):

Si es necesario eliminar un cliente de WoowUp, usa el siguiente endpoint. Asegúrate de identificar correctamente al cliente antes de realizar esta operación usando sus identificadores en el body.

Ejemplo:

curl --request DELETE \ 
--url https://api.woowup.com/apiv3/multiusers \
--header 'Authorization: Basic <tu_api_key>' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"document": "12345678",
"email": "[email protected]"
}'

Respuesta:

{
"payload": [],
"message": "ok",
"code": "ok",
"time": "98ms"
}

3.4 Eliminar un segmento de clientes (DELETE users bulk):

Si deseas eliminar una gran cantidad de clientes de WoowUp, puedes crear primero un segmento en WoowUp, guardarlo y luego eliminar todos los clientes pertenecientes a ese segmento mediante este endpoint.

En el body se debe enviar el parámetro segment_id, siendo el id el número que se obtiene en la URL de WoowUp al seleccionar el segmento de la lista desplegable.

Ejemplo:

curl --request DELETE \ 
--url https://api.woowup.com/apiv3/multiusers/bulk \
--header 'Authorization: Basic <tu_api_key>' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"segment_id": 4321,
"notify_to": "[email protected]"
}'

Respuesta:

{
"payload": { "request_id": "XXX" },
"message": "ok",
"code": "ok",
"time": "111ms"
}


3.5 Atributos extendidos

WoowUp te permite agregar atributos personalizados a cada cliente, lo que facilita la segmentación y análisis de tu base de datos de manera flexible. Estos atributos pueden incluir información adicional relevante para tu negocio, como nivel de fidelidad, preferencias de compra u otros datos específicos.

Antes de enviarlos en una consulta, es necesario crearlos dentro de WoowUp.

Puedes consultar esta documentación para obtener más información:


Ejemplo de atributos extendidos:

"custom_attributes": { 
"loyalty_level": "Platinum",
"favorite_category": "Electrónica"
}
¿Ha quedado contestada tu pregunta?