Cómo buscar actividades con filtros
El punto final de búsqueda devuelve actividades disponibles para un destino. Puede aplicar una amplia gama de filtros para limitar los resultados por categoría, precio, duración, hora del día y más.
Punto final
POST {{api_host}}/api/ext/activity/search
encabezados
| Encabezado | Requerido | Descripción |
|---|
x-api-key | Sí | Su clave API de Xeni |
Content-Type | Sí | application/json |
Cuerpo de solicitud
| Parámetro | Tipo | Requerido | Descripción |
|---|
destinationId | cadena | Sí | El ID de destino del punto final de autocompletar. |
filterItem | objeto | No | Opciones de filtrado y clasificación. Vea abajo. |
offSet | entero | No | Desplazamiento de paginación. El valor predeterminado es 0. |
limit | entero | No | Número de resultados a devolver. El valor predeterminado es 50. |
currency | cadena | No | Código de moneda para precios (por ejemplo, "USD"). |
includePriceRange | booleano | No | Cuando true, incluye el rango de precios general en la respuesta. El valor predeterminado es false. |
Objeto de elemento de filtro
| Parámetro | Tipo | Descripción |
|---|
sortOrder | cadena | Ordenar resultados. Opciones: "asc", "desc", "isFeatured", "durationAsc", "durationDesc". |
tagIds | matriz de números enteros | Filtre por ID de etiqueta obtenidos del punto final de etiquetas. |
title | cadena | Búsqueda de texto libre dentro de los títulos de las actividades (por ejemplo, "private transfer"). |
popularity | conjunto de cadenas | Filtrar por atributos de popularidad. |
specials | conjunto de cadenas | Filtrar por ofertas especiales. |
priceRange | matriz | Filtro de rango de precios como [min, max]. |
priceRangeLow | matriz | Filtro de rango de precio bajo como [min, max]. |
durations | conjunto de cadenas | Filtrar por duración de la actividad. |
timeOfDays | conjunto de cadenas | Filtrar por hora del día. |
startDate | cadena | Filtrar actividades que comiencen a partir de esta fecha. |
endDate | cadena | Filtrar actividades que finalicen en o antes de esta fecha. |
Opciones de popularidad
| Valor | Descripción |
|---|
"Kid friendly" | Actividades aptas para niños. |
"Taking safety measures" | Actividades con protocolos de seguridad reforzados. |
"Virtual Experience" | Actividades virtuales u online. |
"Good to avoid crowd" | Actividades en entornos menos concurridos. |
Opciones especiales
| Valor | Descripción |
|---|
"FREECANCELLATION" | Actividades que ofrecen cancelación gratuita. |
"DEALSANDDISCOUNT" | Actividades con ofertas activas o descuentos. |
"LIKELYTOSELLOUT" | Es probable que las actividades populares se agoten. |
Opciones de duración
| Valor | Descripción |
|---|
"Up to 1 hour" | Actividades de duración inferior a 1 hora. |
"1 hour to 4 hours" | Actividades de 1 a 4 horas de duración. |
"4 hours to 1 day" | Actividades de media jornada a jornada completa. |
"1 day to 3 days" | Actividades de varios días. |
"3 days +" | Actividades extendidas de varios días. |
Opciones de hora del día
| Valor | Descripción |
|---|
"6 am to 12 pm" | Actividades matutinas. |
"12 pm to 5 pm" | Actividades de la tarde. |
"5 pm to 12 am" | Actividades vespertinas y nocturnas. |
Solicitud de ejemplo
JSON
{
"destinationId": "737",
"filterItem": {
"sortOrder": "isFeatured",
"tagIds": [
12026
],
"title": "",
"popularity": [
"Kid friendly"
],
"specials": [
"FREE_CANCELLATION"
],
"priceRange": [
0,
500
],
"durations": [
"1 hour to 4 hours"
],
"timeOfDays": [
"6 am to 12 pm"
],
"startDate": "2026-04-01",
"endDate": "2026-04-07"
},
"offSet": 0,
"limit": 50,
"currency": "USD",
"includePriceRange": false
}
Paginación
Utilice los parámetros offSet y limit para paginar los resultados. Por ejemplo, para recuperar la segunda página de 50 resultados:
JSON
{
"destinationId": "737",
"offSet": 50,
"limit": 50,
"currency": "USD"
}
Notas de uso
- Todos los parámetros de filtro dentro de
filterItem son opcionales. Omita cualquier filtro que no necesite. - Puedes combinar múltiples filtros en una sola solicitud. Todos los filtros se aplican juntos (lógica Y).
- El campo
title realiza una búsqueda de texto libre entre los nombres de las actividades, lo cual es útil para encontrar experiencias específicas como traslados o recorridos específicos. - Establezca
includePriceRange en true en la primera solicitud si necesita crear un control deslizante de precios en su interfaz de usuario.
Próximos pasos
Una vez que tenga los resultados de la búsqueda, recupere todos los detalles de una actividad. Consulte Cómo obtener detalles de la actividad.