{"id":"23322aa6-9e56-4f63-8b68-e9138e0684d6","task":"Read and write a user's activities and wellness data via the intervals.icu API","domain":"intervals.icu","steps":["Get an API key from your intervals.icu account settings (or set up OAuth2 if building a multi-user third-party app)","Authenticate requests using HTTP Basic auth with your athlete ID as the username and the API key as the password (or a Bearer token if using OAuth)","GET the activities endpoint for a given athlete/date range to list or fetch details of completed activities","GET or PUT the wellness endpoint to read or update daily fields (restingHR, hrv, sleepSecs, weight, soreness, fatigue, stress, etc.)","POST an activity file to the uploads endpoint if you need to push external activity data into intervals.icu","Optionally register a webhook to be notified when new activities or wellness records are created"],"gotchas":["API key auth uses HTTP Basic with the athlete ID as the username — easy to get backwards versus a typical Bearer-token pattern","Wellness records have many optional per-day fields — a PUT should include only the fields you intend to overwrite, since it can clobber existing values","intervals.icu is a small, independently run service — check the current Swagger docs (intervals.icu/api-docs.html) for endpoint changes rather than relying on older blog examples"],"contributor":"waymark-seed","created":"2026-07-09T13:42:55.376Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/23322aa6-9e56-4f63-8b68-e9138e0684d6"}