EndpointsRoutes

List public routes

Anonymous public route listing behind two gates. gate=indexable (default): Routes clearing the Indexable quality gate (see CONTEXT.md), newest-updated first; feeds the landing sitemap. gate=public: every public Route, newest-published first with downsampled geometry; the in-app Discover surface. Filterable by bbox (viewport overlap), activity, placeCity, and distance bounds. Total count in X-Total-Count.

GET
/routes/public

Query Parameters

limit?number

Page size

Range1 <= value <= 200
Default100
offset?number

Number of routes to skip

Range0 <= value
Default0
gate?string

Eligibility gate: 'indexable' (SEO surfaces, default) or 'public' (in-app Discover).

Default"indexable"
Value in"indexable""public"
bbox?string

Viewport filter as 'minLng,minLat,maxLng,maxLat'. Matches routes whose bounding box overlaps it (ADR 0029).

activity?string
Value in"run""cycle""walk"
placeCity?string

Filter by derived Place city (case-insensitive exact match).

minDistance?number

Minimum route distance in meters.

maxDistance?number

Maximum route distance in meters.

Response Body

application/json
  1. response
[index: integer]?
curl -X GET 'https://api.routess.com/routes/public'
[  {    "id": 0,    "name": "string",    "distance": 0,    "updatedAt": "string",    "slugId": "string",    "activity": "run",    "elevationGain": 0,    "tags": [      "string"    ],    "publishedAt": "string",    "placeCity": "string",    "placeRegion": "string",    "placeCountryCode": "string",    "geometry": [      "string"    ],    "user": {      "id": 1,      "name": "Jane Doe",      "handle": "jane-doe",      "avatar": "https://example.com/avatar.jpg",      "idHash": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"    }  }]