Workout

GET /v2/activity/workout/{workoutId}

Changed on

Get the workout for the specified ID

Request

Path parameters

workoutIdstring uuid required

ID of the workout to retrieve

Response

Successful request

idstring uuid required

Unique identifier for the workout activity

v1_idinteger

Previous generation identifier for the activity. Will not exist past 09/01/2025

user_idinteger required

The WHOOP User who performed the workout

created_atstring date-time required

The time the workout activity was recorded in WHOOP

updated_atstring date-time required

The time the workout activity was last updated in WHOOP

startstring date-time required

Start time bound of the workout

endstring date-time required

End time bound of the workout

timezone_offsetstring required

The user's timezone offset at the time the workout was recorded. Follows format for Time Zone Designator (TZD) - '+hh:mm', '-hh:mm', or 'Z'.

sport_namestring required

Name of the WHOOP Sport performed during the workout

score_state'SCORED' | 'PENDING_SCORE' | 'UNSCORABLE' required

SCORED means the workout activity was scored and the measurement values will be present. PENDING_SCORE means WHOOP is currently evaluating the workout activity. UNSCORABLE means this activity could not be scored for some reason - commonly because there is not enough user metric data for the time range.

sport_idinteger

ID of the WHOOP Sport performed during the workout. Will not exist past 09/01/2025

Example response

{
  "id": "ecfc6a15-4661-442f-a9a4-f160dd7afae8",
  "v1_id": 1043,
  "user_id": 9012,
  "created_at": "2022-04-24T11:25:44.774Z",
  "updated_at": "2022-04-24T14:25:44.774Z",
  "start": "2022-04-24T02:25:44.774Z",
  "end": "2022-04-24T10:25:44.774Z",
  "timezone_offset": "-05:00",
  "sport_name": "running",
  "score_state": "SCORED",
  "score": {
    "strain": 8.2463,
    "average_heart_rate": 123,
    "max_heart_rate": 146,
    "kilojoule": 1569.34033203125,
    "percent_recorded": 100,
    "distance_meter": 1772.77035916,
    "altitude_gain_meter": 46.64384460449,
    "altitude_change_meter": -0.781372010707855,
    "zone_durations": {
      "zone_zero_milli": 300000,
      "zone_one_milli": 600000,
      "zone_two_milli": 900000,
      "zone_three_milli": 900000,
      "zone_four_milli": 600000,
      "zone_five_milli": 300000
    }
  },
  "sport_id": 1
}

Changes