Iterare
Ya planificaste el viaje hablando. Ahora ponlo en el mapa.
Un asistente te devuelve una parrafada que no es un viaje: sin mapa, sin días, sin kilómetros. Copia este texto, pégaselo en esa misma conversación y lo que conteste se convierte aquí en un viaje de verdad.
- 1
Copia las instrucciones
Es una sola instrucción. No hay que instalar nada ni tener cuenta todavía.
- 2
Pégaselo a tu asistente
En la misma conversación donde planificasteis el viaje: ChatGPT, Claude, el que uses. Te contestará con un bloque de código.
- 3
Pega su respuesta en Iterare
Abre el buscador y pega el bloque entero. Verás qué lugar se ha encontrado para cada parada antes de crear nada.
El texto que se copia
Quiero pasar este viaje a **Iterare**, una app que lo pone en un mapa con su calendario. Devuélvemelo en el formato JSON que se describe abajo, y responde solo con el JSON: sin explicación antes ni después.
## Reglas que no se saltan
1. **No pongas coordenadas.** Ni `lat`, ni `lng`, ni nada parecido. Cada parada se sitúa con `search` —el nombre del sitio— más `city` y `country`. Lo sitúa OpenStreetMap, no tu memoria — y si te lo inventas, el sitio acaba a kilómetros del real sin que nadie lo note.
2. **`city` y `country` van en todas las paradas.** Sin el país, "Córdoba" es la de España o la de Argentina y **elige el buscador, no tú**: ya ha metido la de Argentina en un viaje por Andalucía. Con el nombre repetido dentro de un mismo país pasa igual, y eso lo desempata `city`.
3. **Las paradas van en el orden en que se recorren.** La primera de cada día es de donde se sale.
4. **Solo lo que sepas.** Si no sabes la fecha, no la pongas; si no sabes a qué hora se sale, tampoco. Un hueco se rellena; una hora inventada se cree y se planifica encima de ella.
5. **El JSON va entero en un bloque de código.** De una pieza y sin recortes: aunque solo cambie una parada, se devuelve completo — un trozo suelto no se puede pegar en ningún sitio.
6. **El JSON no se aplaza nunca.** Cada mensaje en el que propongas o cambies el plan **termina con el bloque JSON completo**. No preguntes si lo quiero, no digas «dime y te lo paso», no lo dejes para el final de la conversación: sin el bloque, el plan se queda en el chat y no llega al mapa.
## El formato
- `trip` — el viaje: `name`, y `startDate`/`endDate` en AAAA-MM-DD si se saben. Opcional.
- `routes` — un elemento **por día**. Cada uno lleva `route` y `stops` como hermanos.
- `route.name` — cómo se llama el día. Ponlo siempre y que diga de qué va: "Lagos de Covadonga", "Los Oscos en coche".
- `route.date` — AAAA-MM-DD. Sin fecha, el día entra como propuesta y no ocupa sitio en el calendario.
- `route.departureTime` — HH:MM a la que se sale. Sin ella no habrá horas de llegada, solo duraciones: la app no se inventa ninguna.
- `stops` — las paradas del día, en orden:
- `search` *(obligatorio)* — el nombre del sitio, para buscarlo en OpenStreetMap.
- `city` *(obligatorio)* — el pueblo, la ciudad o la comarca donde está ("Torla, Huesca").
- `country` *(obligatorio)* — el país ("España"). Los tres juntos son lo único que sitúa la parada.
- `name` — cómo llamarla en el viaje, si quieres otro nombre que el que dé el mapa.
- `type` — uno de: ciudad, senderismo, mirador, restaurante, hotel, monumento, playa, parque, area-recreativa, parking, banos, otro. El de montaña es `senderismo`; `otro` si no encaja ninguno.
- `mode` — cómo se llega **hasta aquí desde la parada anterior**. Es del tramo, no del día: un día real es coche hasta el parking y a pie la senda. La primera parada no lo lleva.
- Se calculan solos: driving, walking, cycling.
- Te llevan y tienen horario: cable_car, train, bus, boat, plane.
- `durationMin` — minutos de visita en esta parada.
- `travelDepartureTime` y `travelMin` — **solo en los tramos con horario** (cable_car, train, bus, boat, plane): a qué hora sale y cuánto dura. En coche, a pie o en bici los calcula el mapa y lo que pongas se descarta.
- `notes` — lo que hay que saber de este sitio y no se ve en el mapa: que se llena temprano, que hay que reservar, que la última bajada es a las 18:00.
- `checklist` — lo que se **hace** o se **lleva** aquí. Lo que se **decide** o se consulta va en `notes`.
**Un mismo sitio puede repetirse** dentro del día: dejas el coche en el parking, subes al lago a pie y vuelves a por él son tres paradas, y las tres se escriben.
## Ejemplo
```json
{
"iterare": 2,
"trip": {
"name": "Picos de Europa",
"startDate": "2026-09-12",
"endDate": "2026-09-14"
},
"routes": [
{
"route": { "name": "Lagos de Covadonga", "date": "2026-09-13", "departureTime": "08:30" },
"stops": [
{ "search": "Aparcamiento de Buferrera", "city": "Cangas de Onís", "country": "España", "type": "parking" },
{
"search": "Lago Ercina",
"city": "Cangas de Onís",
"country": "España",
"type": "senderismo",
"mode": "walking",
"durationMin": 120,
"notes": "El acceso en coche se cierra en temporada alta: hay lanzadera desde Cangas.",
"checklist": ["Agua", "Cortavientos"]
},
{ "search": "Aparcamiento de Buferrera", "city": "Cangas de Onís", "country": "España", "type": "parking", "mode": "walking" }
]
},
{
"route": { "name": "Ruta del Cares", "date": "2026-09-14", "departureTime": "09:00" },
"stops": [
{ "search": "Poncebos", "city": "Cabrales", "country": "España", "type": "parking" },
{
"search": "Caín de Valdeón",
"city": "León",
"country": "España",
"type": "senderismo",
"mode": "walking",
"durationMin": 60
},
{
"search": "Poncebos",
"city": "Cabrales",
"country": "España",
"type": "parking",
"mode": "bus",
"travelDepartureTime": "17:40",
"travelMin": 75
}
]
}
]
}
```
---
**El objetivo de esta conversación es ese bloque JSON.** Todo lo demás —lo que me cuentes, lo que discutamos, lo que cambiemos— existe para llegar a él. Si en algún momento no sabes si toca darlo: toca.Lo que no hace
No acepta coordenadas del asistente. Un modelo se inventa un lat/lng con toda naturalidad y te clava el lago a cuarenta kilómetros — un número creíble y falso es peor que un hueco. Cada parada se busca en OpenStreetMap delante de ti, y la que no aparezca se queda fuera en vez de caer en un punto aproximado.