Route and terrain research
Stravaエンドポイントを使えば、「Route and terrain research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Turn public Strava pages into structured fitness-activity data — a route index by sport, country, and region, one route's full detail (distance, elevation, map), a club's public profile, and the current public challenge gallery, all as normalized JSON. Credential-free.
Get Strava's public route index and route detail, club profiles, and the public challenge gallery as structured JSON.
エンドポイントファミリー
3
ドキュメント化されたパラメータ
10
サンプル数
4
ライブカタログスナップショット
稼働エンドポイント
4
メソッド
GET
必須パラメータ
9
スキーマ参照
4
{
"platform": "Strava",
"endpoint": "strava-routes",
"method": "GET",
"path": "/strava/routes",
"auth": "apiKey"
}ユースケース
Get Strava's public route index and route detail, club profiles, and the public challenge gallery as structured JSON.
Stravaエンドポイントを使えば、「Route and terrain research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Stravaエンドポイントを使えば、「Club and community tracking」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Stravaエンドポイントを使えば、「Fitness-challenge and campaign monitoring」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
マネージド実行
以下の数値はすべて、稼働中のStravaエンドポイントカタログから取得しています(エンドポイント4件、ドキュメント化されたリクエストパラメータ10個、公開レスポンススキーマ4件)。DocsとPlaygroundが参照しているカタログと同じものです。
Stravaのエンドポイントは4件、3つのリクエストファミリーに分類されています(Routes、Challenges、Clubs)。
これらのStravaエンドポイントには10個のリクエストパラメータがドキュメント化されており、うち9個が必須です。統合コードを書く前に入力仕様をすべて確認できます。
4件のStravaエンドポイントのうち4件が実際のサンプルレスポンスを、4件がドキュメント化されたレスポンススキーマを備えています。最初のリクエストの前に実データの形に合わせて実装できます。
Stravaのエンドポイントは成功時のスキーマに加えてエラーレスポンス(400、404、429、500、503)もドキュメント化しています。ブロック、レート制限、レコード欠損は空データではなく型付きのエラーとして返ります。
Stravaのエンドポイントは4個のホスト型MCPツールとして提供されており、エージェントは同じパラメータと同じJSON契約のまま、追加の実装なしに同じルートを呼び出せます。
カバレッジマップ
これらのカードは稼働中のエンドポイントカタログから生成されるため、このページはDocsとPlaygroundが使うAPIサーフェスをそのまま反映します。
/strava/routes
/strava/challenges
/strava/clubs/{id}
エンドポイントカタログ
/strava/routesReturns a page of Strava's public route recommendations for a sport, country, and region (state, or state/city). `sport` values: `hiking`, `road-biking`, `mountain-biking`, `trail-running`, `gravel-biking`. Public data, sourced from Strava's own server-rendered route pages.
レスポンスに関する注記
- Each result's `path` is usable directly as the `path` query parameter to [`/strava/routes/detail`](strava-route-detail.md). - An unsupported `sport` returns `400` before any upstream request is made. - A page number past the last valid page, or an unlisted region, returns `404` rather than an empty `200` list. Example response: ```json { "code": 200, "msg": "OK", "data": { "sport": "hiking", "country": "usa", "region": "colorado", "title": "Top 318 hiking trails in Colorado", "page": 1, "total_pages": 16, "total_results": 318, "source_url": "https://www.strava.com/routes/hiking/usa/colorado", "routes": [ { "rank": 1, "name": "Mallory Cave via N.C.A.R. Trail", "path": "hiking/usa/colorado/boulder/mallory-cave_5171952737974445730", "url": "https://www.strava.com/routes/hiking/usa/colorado/boulder/mallory-cave_5171952737974445730", "difficulty": "Easy", "distance_raw": "1.46 mi", "elevation_gain_raw": "345 ft", "description": "The Mallory Cave hike takes you to the mouth of a beautiful cave...", "image_url": "https://dgtzuqphqg23d.cloudfront.net/8UruePMrrrQMdHGsELroGsOsTMWqh030g7159PMSue4-768x576.jpg" } ] } } ```
MCPツール strava_routes
/strava/routes/detailReturns a single Strava route's detail: type, difficulty, distance, elevation gain, estimated time, and summary. `path` is the relative route path returned by `/strava/routes` results (e.g. `hiking/usa/colorado/boulder/mallory-cave_5171952737974445730`). Public data, sourced from Strava's own server-rendered route pages.
レスポンスに関する注記
- `path` must start with a supported sport segment (`hiking`, `road-biking`, `mountain-biking`, `trail-running`, `gravel-biking`) and contain no path-traversal segments; otherwise `400` is returned before any upstream request is made. - A route that no longer exists returns `404`. Example response: ```json { "code": 200, "msg": "OK", "data": { "name": "Mallory Cave via N.C.A.R. Trail", "route_type": "Hiking Trail", "difficulty": "Easy", "distance_raw": "1.46 mi", "elevation_gain_raw": "345 ft", "estimated_time_raw": "33:48", "summary": "The Mallory Cave hike takes you to the mouth of a beautiful cave...", "path": "hiking/usa/colorado/boulder/mallory-cave_5171952737974445730", "url": "https://www.strava.com/routes/hiking/usa/colorado/boulder/mallory-cave_5171952737974445730", "source_url": "https://www.strava.com/routes/hiking/usa/colorado/boulder/mallory-cave_5171952737974445730" } } ```
MCPツール strava_route_detail
/strava/clubs/{id}Returns a Strava club's public profile: name, verified/private flags, location, description, member count, and cover/avatar images. Only the base public profile is returned -- discussion, leaderboard, member list, and recent-activity data require a logged-in Strava session and are not available. Public data, sourced from Strava's own server-rendered club page.
レスポンスに関する注記
- A club that doesn't exist, or `id` that isn't purely numeric, returns `400`/`404` respectively before or after the upstream request. - `private` reflects whether the club requires a join request to see full content; this endpoint still returns the public profile fields for private clubs. Example response: ```json { "code": 200, "msg": "OK", "data": { "id": "521703", "name": "Women of OZ NWA", "verified": false, "private": true, "location": "Bentonville, Arkansas", "country_code": "us", "description": "Founded in 2019 Women of OZ NWA is an inclusive, non-profit organization...", "member_count": 937, "cover_image_url": "https://dgalywyr863hv.cloudfront.net/pictures/clubs/521703/11986498/3/large.jpg", "avatar_image_url": "https://dgalywyr863hv.cloudfront.net/pictures/clubs/521703/11986503/2/large.jpg", "url": "https://www.strava.com/clubs/521703", "source_url": "https://www.strava.com/clubs/521703" } } ```
MCPツール strava_club
/strava/challengesReturns Strava's public challenge gallery: the currently promoted challenge plus every gallery section (partner challenges, and one section per sport such as run/ride), each with its challenges' goal, duration, and cover art. Public data, sourced from Strava's own challenge gallery.
レスポンスに関する注記
- `sections` is ordered with `partner` first, then the remaining sport categories alphabetically. - A challenge's `goal` is `null` for challenges measured by elapsed time rather than a fixed distance/duration target (e.g. "fastest mile ever"). Example response: ```json { "code": 200, "msg": "OK", "data": { "promoted_challenge": { "id": 6158, "name": "August Flexibility Challenge", "url": "https://www.strava.com/challenges/August-Flexibility-Challenge", "sponsored": false, "goal": 36000, "dimension": "moving_time", "icon": "yoga", "duration": "Aug 1, 2026 to Aug 31, 2026", "goal_description": "Complete 10 hours of yoga or workout activity this month." }, "sections": [ { "category": "partner", "title": "Partner Challenges", "challenges": [ { "id": 6156, "name": "Runna August Ten Days Active Challenge", "url": "https://www.strava.com/challenges/Runna-August-Ten-Days-Active-2026", "sponsored": true, "goal": 10, "dimension": "moving_time", "duration": "Aug 1, 2026 to Aug 31, 2026" } ] }, { "category": "run", "title": "Run Challenges", "challenges": [ { "id": 6162, "name": "August 10K Challenge", "url": "https://www.strava.com/challenges/August-10K-challenge-2026", "sponsored": false, "goal": 10000, "dimension": "avg_pace_min_distance", "duration": "Aug 1, 2026 to Aug 31, 2026", "goal_description": "Complete a 10 km (6.2 mi) run." } ] } ], "source_url": "https://www.strava.com/challenges" } } ```
MCPツール strava_challenges
関連API
Social & Creator Platforms
Build creator intelligence, video research, transcript, and audience-comment workflows without maintaining YouTube scrapers.
Social & Creator Platforms
Turn Twitch's public channel, stream, clip, and team data into structured JSON — live status and viewer counts, top games, clips, VODs, and team rosters — as normalized JSON. Credential-free.
Social & Creator Platforms
Track creator, content, hashtag, music, trend, and public ad creative signals from TikTok with production-ready API routes.
Stravaのスクレイピング方法
Crawlora's Strava endpoints return route indexes, route detail, club profiles, and the challenge gallery as normalized JSON with one API key — no Strava account or auth token required.
/strava/routes requires sport, country and region, all three. sport must be one of hiking, road-biking, mountain-biking, trail-running or gravel-biking — note that plain "running" and "cycling" are not values, and an unsupported one returns a 400 naming the accepted list.
country and region are the slugs from Strava's own route-index URL path, and not every plausible pair exists — verified live, hiking in switzerland/bern returns a populated index while united-states/california returns a 404. Treat a 404 here as "Strava publishes no index for this combination" rather than an error in your call, and page through results with the page parameter.
Pass a route's path — the identifier from the index, not a bare numeric id — to /strava/routes/detail for distance, elevation and map data.
Pass a club id to /strava/clubs/{id} for that club's public profile.
/strava/challenges takes no parameters and returns Strava's current public challenge gallery, including the promoted challenge it is featuring.
FAQ
Call /strava/routes with all three of sport, country and region. sport must be one of hiking, road-biking, mountain-biking, trail-running or gravel-biking, and country and region are the slugs from Strava's own route-index URLs. You get a normalized route index back as structured JSON with no Strava account required.
Because Strava does not publish a route index for that country and region pair. The slugs must match pages Strava actually serves — verified live, hiking in switzerland/bern works while united-states/california 404s despite looking equally reasonable. A 404 is the honest signal that the combination does not exist upstream, not a fault in the request.
No Strava login or auth token is required from the caller — only your Crawlora API key.
Yes — /strava/clubs/{id} returns a club's public profile as structured JSON.