Skip to main content

Sleep

WHOOP tracks a member's sleep performance. You can view details and measurements about sleep.

Note: In addition to the sleep activity that starts a Cycle, a member can also take naps throughout the Cycle. WHOOP sets the field nap to true on a Sleep that is a Nap. Naps reduce the amount of sleep needed by a member for the next Cycle.

Data Model

id
required
integer <int64>

Unique identifier for the sleep activity

user_id
required
integer <int64>

The WHOOP User who performed the sleep activity

created_at
required
string <date-time>

The time the sleep activity was recorded in WHOOP

updated_at
required
string <date-time>

The time the sleep activity was last updated in WHOOP

start
required
string <date-time>

Start time bound of the sleep

end
required
string <date-time>

End time bound of the sleep

timezone_offset
required
string

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

nap
required
boolean

If true, this sleep activity was a nap for the user

score_state
required
string
Enum: "SCORED" "PENDING_SCORE" "UNSCORABLE"

SCORED means the sleep activity was scored and the measurement values will be present. PENDING_SCORE means WHOOP is currently evaluating the sleep 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.

object (SleepScore)

WHOOP's measurements and evaluation of the sleep activity. Only present if the Sleep State is SCORED

{
  • "id": 93845,
  • "user_id": 10129,
  • "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",
  • "nap": false,
  • "score_state": "SCORED",
  • "score": {
    }
}