Strava¶
Strava is PeakLine's primary integration. Connecting it unlocks the full feature set: activity sync, full analysis, gear tracking, achievements, AI Coach, auto-reports, and the Secret Club.
Connecting¶
- Open thepeakline.com and click Connect with Strava, or open Settings → Integrations → Strava → Connect if you already have an Email account.
- You're redirected to Strava's standard OAuth2 page on
strava.com. - Strava lists the scopes PeakLine requests (see below). Click Authorize.
- You're redirected back to PeakLine with a session cookie set.
- PeakLine starts an initial sync of your last 30 activities.
The whole flow takes about 30 seconds.
Scopes requested¶
| Scope | What it lets us do | Why |
|---|---|---|
read |
Read your public profile and zones | Render the dashboard, use your FTP if you've set it on Strava |
activity:read_all |
Read all your activities including private | Analyze them, build your dashboard |
profile:read_all |
Read profile fields beyond public ones | Richer profile rendering (optional) |
activity:write |
Append to / update activity descriptions | Only if you enable auto-reports |
We never request profile:write. We cannot modify your account, follow other users on your behalf, or post on Strava as you.
What stays in sync¶
Once connected:
- New activities are picked up by webhook within seconds of being uploaded.
- Edits (renaming an activity, changing the type, hiding from feed) propagate to PeakLine on the next webhook event.
- Deletions cascade to PeakLine — deleted activities disappear from your dashboard.
- Gear changes sync on demand. If you add a new bike on Strava, it shows up in PeakLine's gear list the next time you open it.
Auto-update activity descriptions¶
The single most useful Strava integration, in our opinion.
Enable it in Settings → Strava → Auto-update descriptions, pick a format:
PeakLine analysis:
🏆 PeakLine Score: 762 (Very Good)
📈 Stress Points: 84 (Hard)
🌡️ Temperature: 14°C (felt like 11°C)
💨 Wind: 12 km/h from SW (−7% impact)
💧 Humidity: 68%
🌅 Sunrise: 06:43, sunset: 21:14
🌫️ Air quality: Good (AQI 2)
Heart rate zones:
Z1 5% Z2 65% Z3 22% Z4 7% Z5 1%
Climbs: 3 (total 487 m)
Best VAM: 1,143 m/h on the long climb at km 22
Compared to last 10 rides: +1.2 km/h average speed
The first time it triggers on a new ride, you'll see the description update on Strava within ~30 seconds of upload. It only updates the description PeakLine wrote — if you add your own text, your text is preserved above the PeakLine block.
You can turn it off any time, or selectively disable it per activity from the activity page.
Webhooks under the hood¶
PeakLine subscribes to Strava's webhook for your athlete ID. When a new activity event fires, Strava POSTs a small JSON payload to PeakLine, and we kick off the analysis pipeline in the background.
What this means in practice:
- No polling. PeakLine doesn't hammer Strava's API checking for new activities.
- Sub-minute latency. Most activities are fully analyzed within 30 seconds of you tapping "save" on Strava.
- Resilient. If Strava's webhook fails (their service hiccups), PeakLine catches up the next time you open the dashboard.
Disconnecting¶
Either:
- From PeakLine: Settings → Strava → Disconnect.
- From Strava: strava.com/settings/apps → PeakLine → Revoke Access.
Either path immediately invalidates the token. PeakLine stops syncing.
If you reconnect later, your account on PeakLine is preserved, but activities synced before reconnection may need to be refreshed manually.
Rate limits and credentials¶
Strava enforces strict API rate limits (200 requests per 15 minutes per app, 2000 per day). PeakLine rotates between multiple registered Strava app credentials to stay under the per-app cap, with automatic failover and a 5-minute cooldown on errored credentials.
You won't notice this unless you trigger a massive backfill of years of historical activities all at once. In that case, PeakLine queues the work and processes it over a few minutes.
See also¶
- How we treat your data — what we store and what we don't
- Account tiers — Strava unlocks the full PeakLine tier
- What gets analyzed — what the synced data becomes