#326 Horse Route Import — Current Status (2026-06-09)¶
Summary¶
Status: ⚠️ Partial implementation — working on API integration issues
Routes available: - ✅ FFE France: 3 Grand Itinéraires (working) - ❌ OSM: Overpass servers down (504 errors) — will retry when recovered - ❌ RouteYou: API endpoints returning 404 — endpoint structure different than expected - ❌ Toerisme Vlaanderen: No horse/paard layer exists in WFS (only walking/cycling) - ❌ Staatsbosbeheer: GPX URLs invalid or no valid route points
Total currently importable: 3 routes (FFE only)
What Went Wrong¶
1. Overpass API (OSM) — TEMPORARY¶
Issue: HTTP 504 Bad Gateway errors on all Overpass mirrors
https://overpass-api.de/api/interpreter → 504
https://maps.mail.ru/osm/tools/overpass/api/interpreter → 504
https://overpass.kumi.systems/api/interpreter → timeout
Status: Servers are overloaded, not a syntax error. OQL query is correct.
Fix: When Overpass recovers (check https://overpass-api.de/), run:
python3 scripts/import_osm_horse_routes.py
Expected when recovered: 300+ horse routes (horse=yes, horse=designated, horse=permissive, bridleway)
2. RouteYou — API ENDPOINT BROKEN¶
Issue: All RouteYou endpoints return 404
https://www.routeyou.com/api/v1/routes?activity=horseback-riding&country=nl → 404
https://www.routeyou.com/api/v1/routes?activity=horse&country=nl → 404
Investigation needed: - RouteYou API structure may have changed - May require authentication token - May have moved to different endpoint version (v2, v3?)
Solution: Need to contact RouteYou or find current API docs
Expected when fixed: 1,400+ routes across NL/BE/DE/FR
3. Toerisme Vlaanderen — NO HORSE LAYER¶
Issue: WFS only has walking (wandel) and cycling (fiets) routes
Available layers:
- routes:traject_wandel
- routes:traject_fiets
- routes:icoonroute_trajecten
[... 12 others, no paard/horse/rijden]
Status: This source doesn't have horse route data
Solution: Mark as unavailable or contact Toerisme Vlaanderen to add horse layer
Expected if they add it: 100+ routes (Flanders)
4. Staatsbosbeheer — INVALID GPX URLS¶
Issue: GPX files either don't exist or have no valid route points
- Drentsche Aa: no valid points
- Veluwe - Kootwijk: no valid points
- [all 10 tested routes failed]
Investigation needed: - URLs may be outdated - GPX files may have been moved - Format may be different than expected
Solution: Verify URLs are current, may need web scraping instead
Expected when fixed: 50+ routes (Dutch forestry)
What's Working ✅¶
FFE France (Equestrian Federation)¶
Grand Itinéraires:
1. Route d'Artagnan
2. Route Napoléon
3. Route Saint-Jacques
Status: Hardcoded data, always available Expected: 3 routes (can be expanded with FFE API)
Next Steps¶
Immediate (this week)¶
- Overpass: Monitor recovery at https://overpass-api.de/ → retry when up
- RouteYou: Research current API (v2/v3?), check for auth requirements
- Staatsbosbeheer: Verify GPX URLs, possibly switch to web scraping
Medium term (next 2 weeks)¶
- Contact RouteYou for API access clarification
- Contact Toerisme Vlaanderen: ask if they have horse layer or plan to add one
- Email KNHS for WFS enablement (pending — see docs/knhs_wfs_email_nl.md)
- Email Routedatabank for access (pending — see docs/routedatabank_email_nl.md)
Fallback options if APIs don't work¶
- Web scraping RouteYou/Staatsbosbeheer/KNHS websites
- Manual curation of high-quality routes from Wikiloc/OpenRouteService
- Partner APIs like Komoot (may have horse filter)
Current Import Master Script¶
Run with python3 scripts/import_all_horse_routes.py:
- ✅ FFE France: works
- ⏭️ OSM: skipped (servers down)
- ❌ RouteYou: 0 routes (API 404)
- ❌ Toerisme: 0 routes (no horse layer)
- ❌ Staatsbosbeheer: 0 routes (invalid URLs)
Total: 3 routes available to import
Once sources are fixed: - OSM: +300 routes (pending Overpass recovery) - RouteYou: +1,400 routes (pending API fix) - KNHS: +650 routes (pending email approval + WFS setup) - Routedatabank: +2,000 routes (pending email approval + API access)
Testing Commands¶
# Test individual importers
python3 -c "import sys; sys.path.insert(0, 'scripts'); from import_routeyou import import_routeyou; print(import_routeyou('nl'))"
python3 -c "import sys; sys.path.insert(0, 'scripts'); from import_osm_horse_routes import import_osm_horse_routes; print(import_osm_horse_routes())"
python3 -c "import sys; sys.path.insert(0, 'scripts'); from import_ffe_france import import_ffe_france; print(import_ffe_france())"
# Check Overpass status
curl https://overpass-api.de/api/status
# Check Toerisme WFS layers
curl "https://geodata.toerismevlaanderen.be/geoserver/routes/wfs?service=WFS&version=2.0.0&request=GetCapabilities" | grep "Name" | head -20
Priority for Implementation¶
- Overpass (OSM) — Most important, 300+ routes, just need servers to recover
- RouteYou — 1,400+ routes, second largest source
- KNHS WFS — 650+ routes, pending email approval
- Routedatabank — 2,000+ routes, pending email approval
- Staatsbosbeheer — 50+ routes, lowest priority
- Toerisme Vlaanderen — unavailable (no horse layer)
Archive¶
Previously attempted: - Import 7 sources (2,300+ routes) — blocked by API issues - Manual route data collection — 30+ sources identified but limited immediate API access - Reverse-geocoding for ride auto-naming — ✅ implemented (#325)