Saltar a contenido

Disponibilidad de fechas

Este método nos permite obtener la disponibilidad de fechas para cada actividad disponible dentro del paquete solicitado.

Implicaciones

Teniendo en cuenta que un paquete puede estar compuesto por una o más actividades, es posible que exista alguna restricción de acceso y no se puedan realizar todas las actividades el mismo día. Esto podría deberse a la distancia entre ellas, por el tiempo requerido para hacer cada una de esas actividades o por cualquier otra restricción/incompatibilidad que se haya creado.

Por lo tanto, deberemos llamar a este método tantas veces como actividades compongan el paquete solicitado.

En la primera llamada indicaremos el identificador de paquete (PackageId) y omitiremos las agrupaciones por fechas (PaxGroupingsDates). La respuesta mostrará un listado con la disponibilidad de las distintas actividades que compongan el paquete. De esta forma, el cliente, podrá seleccionar la fecha de acceso de la primera actividad. La primera actividad puede ser cualquier actividad de las mostradas en la respuesta.

Una vez tengamos la información de la primera actividad y la fecha elegida por el cliente, llamaremos nuevamente a este método añadiendo, en PaxGroupingsDates, esta primera elección. La respuesta mostrará un listado con la disponibilidad de las siguientes actividades que compongan el paquete, teniendo en cuenta las posibles restricciones de su primera elección y, de esta forma, permitir al cliente escoger esa segunda actividad y fecha de acceso.

Iremos repitiendo esta última acción, con el resto de las actividades.

{
    "EchoToken" : "x3cig4i6oq1dyqskapaeu8i8h6",
    "PackageId": "1jpb69xrh3usy"
}
{
    "EchoToken" : "x3cig4i6oq1dyqskapaeu8i8h6",
    "PackageId": "1jpb69xrh3usy",
    "PaxGroupingsDates" : [
        {
            "Id" : "mx3osekefh43g",
            "Date" : "2023-01-25"
        }
    ] 
}
{
    "EchoToken" : "x3cig4i6oq1dyqskapaeu8i8h6",
    "PackageId": "1jpb69xrh3usy",
    "PaxGroupingsDates" : [
        {
            "Id" : "mx3osekefh43g",
            "Date" : "2023-01-25"
        },
        {
            "Id" : "6oq1dyqskapae",
            "Date" : "2023-01-26"
        }
    ] 
}

Método de acceso

POST /Package/AvailableDates

Estructura de la petición

  • EchoToken: (string). Requerido. Token que identifica a la secuencia de peticiones. Ver catálogo extendido
  • PackageId: (string). Requerido. Identificador del paquete. Ver la propiedad Packages.Package.Id de catálogo extendido
  • PaxGroupingsDates: (list). Opcional. Listado de agrupaciones y fechas ya seleccionadas.
    • PaxGroupingDates: (object). Opcional. Información de la agrupación.
      • Id: (string). Requerido. Identificador de la agrupación ProductPaxGroupingId.
      • Date: (date). Requerido. Fecha de acceso a la actividad.

Ejemplos de llamadas

Example
{
    "EchoToken" : "x3cig4i6oq1dyqskapaeu8i8h6",
    "PackageId": "1jpb69xrh3usy",
    "PaxGroupingsDates" : [
        {
            "Id" : "mx3osekefh43g",
            "Date" : "2023-01-25"
        },
        {
            "Id" : "6oq1dyqskapae",
            "Date" : "2023-01-26"
        }
    ] 
}

Estructura de la respuesta

  • PaxGroupingsDates: (list). Listado de agrupaciones.

    • PaxGroupingDates: (object). Información de la agrupación.
      • Id: (string). Identificador de la agrupación (PaxGroupingId).
      • Dates: (list). Listado de fechas disponibles.
        • (date): Fecha con disponibilidad. Formato IS0 8601 (YYYY-MM-DD).
  • Success: (boolean). Valor que indica si la llamada ha sido procesada correctamente o no.

  • Errors: (list). Array de errores.
    • Error: (object).
      • ErrorMessage: (string). Mensaje de error explicando por qué la petición no ha sido correcta. En caso que haya sido correcta, devolverá null.
      • ErrorCode: (int). Código que identifica al error.
  • ErrorEntityBreakDown (list): Lista que contiene objetos con el nombre e ID en caso de error.
    • Id (string): Identificador
    • Name (string): Nombre relacionado del identificador.

Ejemplos de respuesta

Example
{
    "PaxGroupingsDates": [
        {
            "Id": "4gazafx5sjcph",
            "Dates": [
                "2023-01-25T00:00:00",
                "2023-01-26T00:00:00",
                "2023-01-27T00:00:00",
                "2023-01-28T00:00:00"
            ]
        }
    ],
    "Success": true
}