Changelog
Every change you can see in the API, newest first. Follow it in a feed reader: Atom feed.
-
Pace plans for a course
POST /v1/pace-plan gives splits every kilometre or mile for one GPX or GeoJSON line, from a target time or a pace on the flat, slower where the course climbs or descends steeply. Each split ends on its mark and names its terrain. 2 credits. POST /v1/route now allows legs up to 60 km and counts waypoints and legs from 0.
-
Route through waypoints in the /v1 style
POST /v1/route takes 2 to 100 [lon, lat] waypoints and flat settings and answers with a GeoJSON line, its legs, climb, hike time, surfaces, SAC grades, hazards and turn-by-turn steps; errors as { error: { code, message } }. Same router and credits as POST /route/v1, which stays.
-
Browser keys, and a daily ceiling for area lookups
The console can issue browser keys (ts_pub_…) that work only from the web origins you list, at 2 requests a second per visitor; elsewhere they get 403 origin_not_allowed. Area lookups (outdoor places and trails in a box) now have a daily ceiling per project of three times the plan's daily average credits (3,000 on Free), then 429 bbox_daily_ceiling.
-
GPX clean and simplify
POST /v1/gpx/clean removes repeated and broken points (and, if asked, times and sensor data) and returns the file as the file: everything else stays byte for byte. POST /v1/gpx/simplify keeps the shape within a tolerance in metres or a point budget, protects the climb and keeps stops. 1 credit each; files up to 5 MB.
-
Elevation profile of a line
POST /v1/elevation-profile returns the series a chart draws (distance, height, grade and position at each point) with ascent, descent, extremes and steepest stretches read from the same series. 2 credits.
-
Heavy requests: a limit on how many run at once
Round trips, route analysis and route weather now also have a per-project concurrency limit: 1 on Free and without a key (per address), 2 on Starter, 4 on Pro, 8 on Business. A request over it gets 429 concurrency_limit with Retry-After: 2. The per-second rates are unchanged.
-
A reference page for every operation, with Try it on a map
Sixteen operations now have their own page with curl, JavaScript and Python examples, parameters, response fields, errors and the full contract, and a Try it panel that sends the request and draws the answer on a map. The OpenAPI file covers all of them, now including search, reverse search, trails, outdoor places, static maps, map matching and snow.
-
Search finds misspellings
When nothing matches exactly, place search now finds near misses and German ue/oe/ae spellings of umlauts ("Matterhon", "Mittagguepfi"). Such results carry "match": "fuzzy". Exact matches are unchanged.
-
Free plan with commercial use, keys and usage
Free keys from the API console: 30,000 credits a month, commercial use with attribution. Calls without a key keep working with 500 credits a day per address. Keyed answers carry X-TrailSplits-Credits-Remaining, and GET /v1/usage returns your usage per operation.
-
Weather along a route at arrival time
POST /v1/route-weather gives the forecast at the hour you reach each part of a line, each place at its own height, with the model named per hour.
-
Hazards on the line
Route analysis and round trips list hazards[]: each ford, aided passage and via ferrata, placed in metres along the line.
-
Hourly weather values
h=1 on the weather forecast adds hourly temperature, precipitation, rain probability, wind, gusts, wind direction and weather code per point, each hour with its model.
-
Route analysis and round trips
POST /v1/route-analysis analyses a GPX or GeoJSON line you already have (matched path, surfaces, tagged grades, climb, hike time, unknowns). POST /v1/roundtrips returns loops from a start point from the same engine as the TrailSplits Planner, with an honest refusal when no good loop exists.
Versions and deprecation
- New fields, operations and data can appear at any time. Clients should ignore what they do not use.
- A breaking change (a removed field or operation, or a changed meaning) gets a new schema version and an entry here marked "Breaking", normally 30 days before it takes effect.
- The old behaviour keeps working until the date in that entry. Key holders are told by email when a breaking change affects an operation they use.
- Security fixes, and changes a data source forces on us, can come sooner; the entry then says why.
See also the conventions and the API terms.