Versiones comparadas

Clave

  • Se ha añadido esta línea.
  • Se ha eliminado esta línea.
  • El formato se ha cambiado.
Tabla de contenidos
minLevel1
maxLevel7

...

Se pueden descargar los archivos de la coleccion de postman y enviroment en los siguientes documentos:

View file
nameHotelMetaSearchServices.postman_collection.json

View file
nameHotelMetaSearch Preprod.postman_environment.json

Nota

Todos los servicios ejecutados, deben incluir el siguiente header:

Nombre del Header: x-net-metasearch

Valor a enviar: {{userservice}}-{{saleschannelcode}}

Ejemplo: x-net-metasearch=demo-metaprueba

Se deben enviar las IP’s desde las cuales recibiremos los llamados a nuestras APIs, pues se deben incluir en una whitelist.

Si el llamado no cumple con el header o se hace desde una IP diferente a las autorizadas, el request no se va a procesar.

Diagrama de flujo

...

Generalidades de los servicios

...

Tipo de servicio

Servicio

Caracteristicas

Iniciar sesión

GuestSession

Iniciar sesion como usuario invitado

Session

Iniciar sesion como usuario registrado en el sistema (Operador, Agente, etc)

Búsqueda de hoteles

HotelMetaSearch

Utilizado para búsquedas sin SC. La url deeplink retornada redirecciona a la experiencia antigua de venta (Catmandu)

HotelMetaSearchV3

Utilizado para búsquedas con SC. La url deeplink retornada redirecciona a la experiencia antigua de venta (Catmandu) o experiencia nueva de venta (Nuevo front) dependiendo de la configuración en el sistema

HotelMetaSearchByHotelIds

Utilizado para búsquedas con SC por hotel dependiendo de la negociacion entre la agencia y el metabuscador. La url deeplink retornada redirecciona a la experiencia antigua de venta (Catmandu) o experiencia nueva de venta (Nuevo front) dependiendo de la configuración en el sistema

Servicio GuestSession [GET]

Este servicio retorna un token de sesión de usuario invitado necesario para ejecutar los servicios de búsqueda y resultados de hoteles. Se debe realizar la autenticación sobre el ambiente que se desee utilizar.

...

Donde la variable {userservice} sera informada durante la implementación.

Ejemplo de Respuesta:

...

Servicio Session [POST]

Este servicio retorna un token de sesión de usuario registrado en el sistema necesario para ejecutar los servicios de búsqueda y resultados de hoteles. Se debe realizar la autenticación sobre el ambiente que se desee utilizar.

Nota

El token de sesión tiene una validez de 24 horas, por lo que debe utilizarse un único token para ejecutar todos los servicios necesarios dentro de ese período. Pasado ese tiempo, será necesario generar un nuevo token.

CURL Ejemplo:

Bloque de código
curl --location 'https://preprod.netactica.com/NetCoreApi/Session' \
--header 'x-net-metasearch: demo-metaprueba'
--data '{
  "UserName": "{{username}}",
  "Password": "{{password}}",
  "UserService": "{{userservice}}"
}'

Donde las variables {{username}}. {{password}} y {{userservice}} seran informadas durante la implementación.

Ejemplo de Respuesta:

...

Servicio HotelMetaSearch [POST]

Por medio de este servicio se lanza la búsqueda sin SC, para el destino, fechas, distribución de pasajeros que se requieran. Este flujo permite que para la búsqueda que se esta realizando, se muestren cada una de las opciones de hoteles con un deeplink (Es un parametro que contiene una URL que redirecciona a un producto seleccionado) que redirecciona a la experiencia antigua de venta.

Consideraciones Generales:

A tener en cuenta en el Request del servicio.

...

El campo "MaxResults" se utiliza para limitar la cantidad de resultados que se quieren visualizar, aunque la cantidad de resultados total pueda ser superior; es decir, si por ejemplo se encuentran disponibles 1000 hoteles, pero en el parámetro "MaxResults" se digita 100, entonces el sistema solo mostrará los 100 primeros resultados.

...

Enviar el valor true en el campo “IncludeHotelInfo“ si se desea recibir la información estática del hotel

...

Enviar el valor true en el campo “IncludeRooms“ si se desea recibir la información de las habitaciones y sus tarifas

...

Se debe agregar el código del canal de venta, por medio del campo “SalesChanelCode” dentro de la sección de RequestSettings, este codigo de canal de venta sera suministrado en el proceso de implementación.

...

Curl de Ejemplo:

Bloque de código
curl --location 'https://preprod.netactica.com/NetCoreApi/HotelMetaSearch' \
--header 'Content-Type: application/json' \
--header 'x-net-metasearch: netactica-' \
--data '{
    "DestinationPoint": "MIA",
    "CheckIn": "2025-03-09",
    "CheckOut": "2025-03-11",
    "Rooms": [
        {
            "Adults": 1,
            "Children": 0,
            "ChildrenAges": []
        }
    ],
    "IncludeHotelInfo": false,
    "IncludeRooms": false,
    "MaxResults": 10,
    "CurrencyCode": "USD",
    "RequestSettings": {
        "SaleType": "Regular",
        "BranchCode": "{{branchcode}}",
        "SalesChanelCode": "{{saleschannelcode}}",
        "Language": "es"
    },
    "SessionToken": "{{sessiontoken}}"
}'

Donde las variables {{branchcode}} y {{saleschannelcode}} seran informadas durante la implementación. La variable {{sessiontoken}} debe ser reemplazada por el token de sesión, obtenido con los servicios de inicio de sesión (GuestSession o Session).

Ejemplo de Respuesta:

...

Servicio HotelMetaSearchV3 [POST]

Por medio de este servicio se lanza la búsqueda con SC, para el destino, fechas, distribución de pasajeros que se requieran. Este flujo permite que para la búsqueda que se esta realizando, se muestren cada una de las opciones de hoteles con un deeplink (Es un parametro que contiene una URL que redirecciona a un producto seleccionado) que redirecciona a la experiencia nueva o antigua de venta de acuerdo a la configuración establecida para la agencia.

Consideraciones Generales:

A tener en cuenta en el Request del servicio.

  • En el campo “LocationId” se envía el id de ubicación (ciudad, barrio / vecindario, punto de interés, aeropuerto, etc), Validar con implementación el listado de locations disponibles.

  • El campo "MaxResults" se utiliza para limitar la cantidad de resultados que se quieren visualizar, aunque la cantidad de resultados total pueda ser superior; es decir, si por ejemplo se encuentran disponibles 1000 hoteles, pero en el parámetro "MaxResults" se digita 100, entonces el sistema solo mostrará los 100 primeros resultados.

  • Enviar el valor true en el campo “IncludeHotelInfo“ si se desea recibir la información estática del hotel

  • Enviar el valor true en el campo “IncludeRooms“ si se desea recibir la información de las habitaciones y sus tarifas

  • Se debe agregar el código del canal de venta, por medio del campo “SalesChanelCode” dentro de la sección de RequestSettings, este codigo de canal de venta sera suministrado en el proceso de implementación.

  • Se podra enviar un codigo de sucursal, en caso de que la agencia requiera que las ventas se generen a una sucursal en particular, este parametro debe ser enviado en la sección de RequestSettings, bajo el campo “BranchCode”.

Curl de Ejemplo:

Bloque de código
curl --location 'https://preprod.netactica.com/NetCoreApi/HotelMetaSearchV3' \
--header 'Content-Type: application/json' \
--header 'x-net-metasearch: netactica-' \
--data '{
    "DestinationType": "location",
    "LocationId": 329236,
    "CheckIn": "2025-03-09",
    "CheckOut": "2025-03-11",
    "Rooms": [
        {
            "Adults": 1,
            "Children": 0,
            "ChildrenAges": []
        }
    ],
    "IncludeHotelInfo": false,
    "IncludeRooms": false,
    "MaxResults": 10,
    "CurrencyCode": "USD",
    "RequestSettings": {
        "SaleType": "Regular",
        "BranchCode": "{{branchcode}}",
        "SalesChanelCode": "{{saleschannelcode}}",
        "Language": "es"
    },
    "SessionToken": "{{sessiontoken}}"
}'

Donde las variables {{branchcode}} y {{saleschannelcode}} seran informadas durante la implementación. La variable {{sessiontoken}} debe ser reemplazada por el token de sesión, obtenido con los servicios el servicio de inicio de sesión (GuestSession o Session)GetGuestSession.

Ejemplo de Respuesta:

...

Servicio HotelMetaSearchByHotelIds [POST]

Por medio de este servicio se lanza la búsqueda con SC, para un grupo de hoteles, fechas, distribución de pasajeros que se requieran. Este flujo permite que para la búsqueda que se esta realizando, se muestren cada una de las opciones de hoteles con un deeplink (Es un parametro que contiene una URL que redirecciona a un producto seleccionado) que redirecciona a la experiencia nueva o antigua de venta de acuerdo a la configuración establecida para la agencia.

Consideraciones Generales:

A tener en cuenta en el Request del servicio.

  • En el campo “HotelIds” se envia el listado de ids de hoteles negociados entre la agencia y el metabuscador

  • El campo "MaxResults" se utiliza para limitar la cantidad de resultados que se quieren visualizar, aunque la cantidad de resultados total pueda ser superior; es decir, si por ejemplo se encuentran disponibles 1000 hoteles, pero en el parámetro "MaxResults" se digita 100, entonces el sistema solo mostrará los 100 primeros resultados.

  • Enviar el valor true en el campo “IncludeHotelInfo“ si se desea recibir la información estática del hotel

  • Enviar el valor true en el campo “IncludeRooms“ si se desea recibir la información de las habitaciones y sus tarifas

  • Se debe agregar el código del canal de venta, por medio del campo “SalesChanelCode” dentro de la sección de RequestSettings, este codigo de canal de venta sera suministrado en el proceso de implementación.

  • Se podra enviar un codigo de sucursal, en caso de que la agencia requiera que las ventas se generen a una sucursal en particular, este parametro debe ser enviado en la sección de RequestSettings, bajo el campo “BranchCode”.

Curl de Ejemplo:

Bloque de código
curl --location 'https://preprod.netactica.com/NetCoreApi/HotelMetaSearchByHotelIds' \
--header 'Content-Type: application/json' \
--header 'x-net-metasearch: netactica-' \
--data '{
    "HotelIds": [
        32519,
        237798,
        131703,
        13532,
        47144
    ],
    "CheckIn": "2025-03-09",
    "CheckOut": "2025-03-11",
    "Rooms": [
        {
            "Adults": 1,
            "Children": 0,
            "ChildrenAges": []
        }
    ],
    "IncludeHotelInfo": false,
    "IncludeRooms": false,
    "MaxResults": 10,
    "CurrencyCode": "COP",
    "RequestSettings": {
        "SaleType": "Regular",
        "BranchCode": "{{branchcode}}",
        "SalesChanelCode": "{{saleschannelcode}}",
        "Language": "es"
    },
    "SessionToken": "{{sessiontoken}}"
}'

Donde las variables {{branchcode}} y {{saleschannelcode}} seran informadas durante la implementación. La variable {{sessiontoken}} debe ser reemplazada por el token de sesión, obtenido con los servicios el servicio de inicio de sesión (GuestSession o Session)GetGuestSession.

Ejemplo de Respuesta:

...

Modelo de respuesta en servicios de búsqueda

...

La redirección del cliente al deeplink generado en la respuesta de los servicios HotelMetaSearch, HotelMetaSearchV3 y HotelMetaSearchByHotelIds para la opción seleccionada por el cliente, permitira que se redirija al mismo al flujo de venta de la agencia.

...