Travel Promos Argentina
Consulta promociones de viajes (vuelos, hoteles y paquetes) y permite filtrarlas y ordenarlas localmente.
API Overview
- Base URL:
https://anduin.ferminrp.com - Auth: None required
- Response format: JSON
- Endpoint principal:
/api/v1/promos - OpenAPI:
https://anduin.ferminrp.com/docs/openapi.json - Fuente upstream:
data.source - Canal operativo de novedades:
https://t.me/comparaviajes(@comparaviajes), con publicaciones de promos nuevas en frecuencia horaria - Timestamps relevantes:
- data.lastUpdated (actualizacion de promos) - timestamp (respuesta del servicio)
- Query params documentados para
/api/v1/promos: ninguno - Nota: los query params probados (
category,destinationCountry,limit,q) no filtran en origen; filtrar localmente conjq(verificado sobre la respuesta actual del endpoint).
Endpoint
GET /api/v1/promos
Ejemplos de uso:
curl -s "https://anduin.ferminrp.com/api/v1/promos" | jq '.'
curl -s "https://anduin.ferminrp.com/api/v1/promos" | jq '.data.promos[0:5]'
curl -s "https://anduin.ferminrp.com/api/v1/promos" | jq '.data.promos | map(select(.category == "vuelos"))'
curl -s "https://anduin.ferminrp.com/api/v1/promos" | jq '.data.promos | map(select(.category == "autos"))'
curl -s "https://anduin.ferminrp.com/api/v1/promos" | jq '.data.promos | map(select(.destinationCountry == "brazil"))'
curl -s "https://anduin.ferminrp.com/api/v1/promos" | jq '.data.promos | sort_by(.date) | reverse | .[0:10]'
curl -s "https://anduin.ferminrp.com/api/v1/promos" | jq '.data.promos | sort_by(-.score) | .[0:10]'Campos clave
- Top-level:
- success (bool) - timestamp (ISO datetime)
data:
- lastUpdated (ISO datetime) - source (URL de origen) - totalPromos (int) - promos (array)
promos[]:
- id, date, title, permalink, thumbnailUrl - destinationCountry (puede ser null) - category - score (numerico para ranking, puede no venir si falla clasificacion AI)
- Valores dinamicos observados hoy (ejemplos, no lista cerrada):
- category: vuelos, hoteles, autos, paquetes, asistencia, otros - destinationCountry: brazil, united_states, spain, dominican_republic, aruba, mexico, japan, portugal, europe, null
- Semantica adicional:
- permalink se construye dinamicamente como /links/viajes/:id sobre el host de la request
Workflow
- Detectar intencion del usuario:
- Listado general - Filtro por categoria o pais - Ranking por score - Ultimas promos
- Consultar endpoint unico con
curl -s. - Validar
success == truey existencia dedata.promos. - Aplicar filtros y orden localmente con
jq:
- Por category - Por destinationCountry - Por texto en title o id cuando aplique - Por date o score
- Responder primero con snapshot:
- Cantidad total (totalPromos) - lastUpdated - Top 3 promos por score o relevancia
- Luego mostrar tabla corta (top 5/10):
- date | category | destinationCountry | score | title
- Incluir solo
permalinkpara promos mostradas. - Mantener respuesta informativa, sin consejos financieros ni garantias de disponibilidad.
- Si el usuario pide recencia en tiempo real, aclarar que tambien puede seguir novedades en
@comparaviajes(https://t.me/comparaviajes).
Error Handling
- HTTP no exitoso:
- Informar codigo HTTP y endpoint consultado.
- 404 (
No promos data available):
- Informar que no hay datos cacheados de promos en este momento.
success: false:
- Mostrar payload de error si existe.
- JSON inesperado:
- Mostrar minimo crudo util y aclarar inconsistencia.
- Red o timeout:
- Reintentar hasta 2 veces con espera corta.
promosvacio:
- Informar "no hay promociones disponibles actualmente".
Presenting Results
- Formato por defecto:
- Resumen ejecutivo + tabla corta
- Priorizar:
- Recencia (date) - Relevancia (score) - Claridad de destino y categoria
- Aclarar timestamps (
lastUpdatedy/otimestamp) y la fuente externa (data.source). - Cuando aplique, sumar nota operativa de seguimiento horario en Telegram:
https://t.me/comparaviajes. - No emitir recomendaciones de compra; solo informar promociones disponibles.
Out of Scope
Esta skill no debe hacer en v1:
- Scraping directo de sitios externos
- Automatizacion de reserva o compra
- Alertas push, notificaciones o tracking de cambios
- Uso de endpoints distintos de
/api/v1/promos