@0x3639/intervals-icu
    Preparing search index...

    Class AnalyticsService

    Activity- and athlete-level analytics: histograms, time-at-HR, interval statistics, power models and activity curves. Activity-level methods take an activity id; athlete-level methods take the usual optional trailing athleteId.

    The older single-curve activity methods (activities.getPowerCurve and friends) hit different routes and remain on ActivityService.

    Caller-supplied activity ids are URL-encoded before interpolation so a delimiter in an id cannot change the route.

    Index
    • Curves (watts, pace, hr ... per types) for one activity, optionally with fatigued variants. Observed live (2026-09-22): the API returns HTTP 422 when a requested stream or fatigue variant is not available for the activity (e.g. hr on a ride without heart rate, kj0/kj1 without fatigue data).

      Parameters

      Returns Promise<PowerCurve[]>

    • Time in heart-rate buckets

      Parameters

      • activityId: string
      • Optionaloptions: { bucketSize?: number }

      Returns Promise<Bucket[]>

    • Statistics for an arbitrary index range of the activity, as if it were an interval

      Parameters

      • activityId: string
      • startIndex: number
      • endIndex: number

      Returns Promise<Interval>

    • Time in power buckets

      Parameters

      • activityId: string
      • Optionaloptions: { bucketSize?: number }

      Returns Promise<Bucket[]>