Loyalty

Loyalty

Loyalty

Introducción:
En este artículo hablamos sobre las peticiones de la API relacionadas con el módulo Loyalty de Fideltour.
Los apartados del Swagger que incluyen esta información son:

Casos de uso:

Esta parte de la API resulta de gran utilidad para incorporar y gestionar contactos en el programa de fidelización de Fideltour, procedentes de distintas fuentes de datos.
  1. Registrar un contacto de Fideltour en el programa de fidelización del cliente.
  2. Actualizar los datos del contacto relacionados con el programa de fidelización:
  3. Actualizar el nivel del contacto
  4. Actualizar los puntos del contacto
  5. Actualizar los puntos de nivel del contacto
  6. Listar y filtrar operaciones relacionadas con el programa de fidelización
  7. Crear una operación para otorgar puntos de fidelización a un contacto registrado en el programa
  8. Crear una operación para redimir puntos de fidelización a un contacto registrado en el programa
  9. Iniciar sesión en el programa de fidelización
  10. Solicitar un cambio de contraseña para la cuenta del programa de fidelización

Métodos disponibles:

Todos los métodos y filtros disponibles para trabajar con loyalty se pueden consultar en los enlaces del Swagger citados anteriormente.
En este artículo nos centramos en los siguientes:

Sign In

Registar un contacto en el programa de fidelización.

Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

password

String

Si

Contraseña del contacto para su Guest Portal

send_activation_email

Boolean

Si

Se envía un email de activación al contacto

send_welcome_email

Boolean

Si

Se envía un email de bienvenida al contacto


Petición:

METODO: POST
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

BODY: se añade un ejemplo a continuación.

  1. {
  2.     "password": "UTendyE!?",
  3.     "send_activation_email": false,
  4.     "send_welcome_email": false,
  5. }

Respuesta:
En caso de una respuesta 200 o 201, el json que se recibe tiene toda la información del contacto

Update data

Actualizar los datos de fidelización de un contacto

Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

level

Int

No

ID del nivel en Fideltour

points

Int

No

Puntos del contacto

level_points

Int

No

Puntos de nivel del contacto

Petición:
METODO: POST
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

BODY: se añade un ejemplo a continuación.

  1. {
  2.     "level": 2673,
  3.     "points": 200
  4.     "level_points": 100
  5. }
Respuesta:
En caso de una respuesta 200 o 201, el json que se recibe tiene toda la información del contacto

Login

Iniciar sesión en el programa de fidelización.
Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

email

String

Si

Email del contacto

password

String

Si

Contraseña del contacto


Petición:
METODO: POST
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
BODY: se añade un ejemplo a continuación.

  1. {
  2.     "email": "test@test.com",
  3.        "password": "UTendyE!?"
  4. }
Respuesta:
En caso de una respuesta 200, el json que se recibe tiene toda la información del contacto

Resetear contraseña

Resetear la contraseña para acceder al programa de fidelización.

Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

email

String

Si

Email del contacto


Petición:
METODO: POST
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
BODY: se añade un ejemplo a continuación.

  1. {
  2.     "email": "test@test.com",
  3. }

Respuesta:
En caso de una respuesta 200, si existe un contacto con el email introducido, se envía un correo con la nueva contraseña establecida por Fideltour.

Get operations


Listar y filtrar las operaciones del programa de fidelización del cliente

Tabla de parámetros:
No hay parámetros obligatorios, ver todos los filtros disponibles en Swagger

Petición:
METODO: GET
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Respuesta:
En caso de una respuesta 200 o 201, se recibe el siguiente json:

  1. {
  2.     "count": 5,
  3.     "next": null,
  4.     "previous": null,
  5.     "results": [
  6.         {
  7.             "id": 405283,
  8.             "contact_email": "pserra@customia.com",
  9.             "book_room_number": null,
  10.             "points": 100,
  11.             "expired_points": null,
  12.             "consumed_points": -100,
  13.             "remaining_points": 0,
  14.             "level_points": 0,
  15.             "bonus_points": "0.00",
  16.             "timestamp": "2023-11-13T12:11:03.746192",
  17.             "comments": null,
  18.             "concept": "test",
  19.             "code": "2991559E1A",
  20.             "redeemed": 0,
  21.             "point_type": 0,
  22.             "expired_date": "2023-11-13T12:11:03.745212",
  23.             "updated_at": "2023-11-13T12:11:03.784747",
  24.             "contact": 11656629,
  25.             "product": null,
  26.             "book": null,
  27.             "manager": 3738,
  28.             "hotel": null
  29.         },
  30.     ]
  31. }

Get operation

Obtener una operación por ID del programa de fidelización del cliente

Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

id

Int

No

Id de la operación enviada en la URL


Petición:
METODO: GET
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Respuesta:
En caso de una respuesta 200 o 201, se recibe el siguiente json:
  1. {
  2.     "id": 405278,
  3.     "contact_email": "pserra@customia.com",
  4.     "book_room_number": null,
  5.     "points": 100,
  6.     "expired_points": null,
  7.     "consumed_points": -100,
  8.     "remaining_points": 0,
  9.     "level_points": 0,
  10.     "bonus_points": "0.00",
  11.     "timestamp": "2023-11-13T12:05:43.309364",
  12.     "comments": null,
  13.     "concept": "test",
  14.     "code": "B0937118E5",
  15.     "redeemed": 0,
  16.     "point_type": 0,
  17.     "expired_date": "2023-11-13T12:05:43.308445",
  18.     "updated_at": "2023-11-13T12:05:43.342388",
  19.     "contact": 11656629,
  20.     "product": null,
  21.     "book": null,
  22.     "manager": 3738,
  23.     "hotel": null
  24. }
Add points
Crear una operación para añadir puntos a un contacto del programa de fidelización.

Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

contact

Int

Si

Id del contacto

concept

String

Si

Concepto de la operación

points

Int

Si

Puntos que se le añaden al contacto


Petición:
METODO: POST
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Respuesta:
En caso de una respuesta 200 o 201, se recibe el siguiente json:

  1. {
  2.     "contact": 11656629,
  3.     "concept": "reservas 2023",
  4.     "points": 500
  5. }

Redeem points
Crear una operación para canjear puntos a un contacto del programa de fidelización.

Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

contact

Int

Si

Id del contacto

concept

String

Si

Concepto de la operación

points

Int

Si

Puntos que se le restan al contacto


Petición:
METODO: POST
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Respuesta:
En caso de una respuesta 200 o 201, se recibe el siguiente json:
  1. {
  2.  "contact": 11656629,
  3.  "concept": "producto canjeado",
  4.  "points": 100
  5. }

Get products

Listar y filtrar los productos del programa de fidelización del cliente

Tabla de parámetros:
No hay parámetros obligatorios, ver todos los filtros disponibles en Swagger

Petición:
METODO: GET
HEADERS: 
  1. Content-type: application/json
  2. Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Respuesta:
En caso de una respuesta 200 o 201, se recibe el siguiente json:
  1. {
  2.       "count": 6,
  3.       "next": null,
  4.       "previous": null,
  5.      "results": [
  6.         {
  7.               "id": 12345,
  8.               "title": "Estamos deseando volver a tenerte con nosotros.",
  9.               "category": 2,
  10.               "image": "https://example/fideltour/media/product-image/example_image.jpg",
  11.               "points": 12345,
  12.               "featured": false,
  13.               "start_date": "2022-12-01",
  14.               "end_date": "2024-12-31",
  15.               "code": "Repetidor1",
  16.               "is_visible": true,
  17.               "promocode": null,
  18.               "notify_alert_emails": true,
  19.               "hotels": [
  20.                     12345,
  21.                     12345,
  22.                     12345,      
  23.               ],
  24.               "levels": [
  25.                     12345,
  26.                     12345,
  27.                     12345
  28.               ]
  29.         },
  30.     ]
  31. }

Get product

Obtener un producto por ID del programa de fidelización del cliente

Tabla de parámetros:

Campo

Tipo

Obl.

Descripción

id

Int

No

Id del producto enviado en la URL


Petición:

METODO: GET
HEADERS: 

Content-type: application/json
Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Respuesta:
En caso de una respuesta 200 o 201, se recibe el siguiente json:

  1. {
  2.       "id": 12345,
  3.       "title": "Estamos deseando volver a tenerte con nosotros.",
  4.       "category": 2,
  5.       "image": "https://example/fideltour/media/product-image/example_image.jpg",
  6.       "points": 12345,
  7.       "featured": false,
  8.       "start_date": "2022-12-01",
  9.       "end_date": "2024-12-31",
  10.       "code": "Repetidor1",
  11.       "is_visible": true,
  12.       "promocode": null,
  13.       "notify_alert_emails": true,
  14.       "hotels": [
  15.             12345,
  16.             12345,
  17.             12345,      
  18.       ],
  19.       "levels": [
  20.             12345,
  21.             12345,
  22.             12345
  23.       ]
  24. }
    • Related Articles

    • Otras conexiones

      Otros Introducción: En la API de Hotel Data Hub, encontraremos que se requieren varios valores de tipo numérico, los cuales identifican a un item u elemento en la base de datos de Fideltour. Podemos deducir, que si un item no existe en la base de ...
    • Consentimientos RGPD

      Consentimientos RGPD Introducción: En este artículo hablamos sobre las peticiones de la API, relacionadas con los consentimientos obligatorios del Registro General de Protección de Datos(RGPD o GDPR en inglés), y como gestionarlos en los contactos. ...
    • Gestión de movimientos

      Movimientos Tabla de contenidos Introducción Casos de uso Métodos disponibles Tabla de parámetros Ejemplos Petición (POST) Respuesta (POST) Petición (GET) Respuesta (GET) Petición (PATCH) Respuesta (PATCH) Introducción: En este artículo hablamos ...
    • Introducción

      Primeros pasos Introducción: En este artículo mostramos como consultar y utilizar la API de HotelDataHub/Fideltour a través de la plataforma Swagger. En ella, encontramos los diferentes endpoints(urls) y la información que debemos facilitar en cada ...
    • Gestión de contactos

      Contactos Introducción: En este artículo hablamos sobre las peticiones de la API relacionadas con los Contactos. Crear contacto Actualizar contacto Listar y filtrar contactos El endpoint que utilizamos es: https://app.hoteldatahub.io/api/v1/contacts/ ...