Nest Changelog
1.44.3 PRE
10/11/2023
1.44.4 PRE
10/11/2023
3 changed endpoints Collapse changed endpoints
GET /users/{userId}/workouts/items 
Get workout summaries for user
Response Body
{
data: List<{
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
},
status?: 'incomplete' | 'complete',
}>,
pagination: {
page?: number,
skip?: number,
take?: number,
total?: {
pages?: number,
rows?: number,
},
},
}GET /users/{userId}/workouts/items 
Get workout summaries for user
Response Body
{
data: List<{
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
+ steps: number,
},
status?: 'incomplete' | 'complete',
}>,
pagination: {
page?: number,
skip?: number,
take?: number,
total?: {
pages?: number,
rows?: number,
},
},
}GET /users/{userId}/workouts/aggregations 
Get workout aggregations for user
Response Body
{
data: {
furthestDistance?: number,
highestOutput?: number,
mostRecent?: {
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
},
status?: 'incomplete' | 'complete',
},
personalBest?: {
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
},
status?: 'incomplete' | 'complete',
},
totalClasses?: number,
totalDistance?: number,
totalDuration?: number,
},
}GET /users/{userId}/workouts/aggregations 
Get workout aggregations for user
Response Body
{
data: {
furthestDistance?: number,
highestOutput?: number,
mostRecent?: {
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
+ steps: number,
},
status?: 'incomplete' | 'complete',
},
personalBest?: {
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
+ steps: number,
},
status?: 'incomplete' | 'complete',
},
totalClasses?: number,
totalDistance?: number,
totalDuration?: number,
},
}GET /workouts/items/{guid}/summary 
Get summary view of a workout
Response Body
{
data: {
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
},
status?: 'incomplete' | 'complete',
user?: {
id?: number,
},
},
}GET /workouts/items/{guid}/summary 
Get summary view of a workout
Response Body
{
data: {
appSource?: 'echelon' | 'worlds' | 'fitos',
content?: {
description?: string,
duration?: number,
guid?: string,
image?: {
default?: string,
hd?: string,
portrait?: string,
sd?: string,
square?: string,
},
instructors?: List<{
id?: number,
name?: string,
}>,
legacy?: {
id?: number,
type?: 'reflect' | 'connect',
},
name?: string,
type?: 'live' | 'vod' | 'encore' | 'freestyle',
},
dateEnd?: number,
dateStart?: number,
duration?: {
percentage?: number,
text?: string,
value?: number,
},
guid?: string,
output?: number,
percentile?: number,
ranking?: {
place?: number,
total?: number,
},
stats?: {
calories: number,
distance: number,
heartRate: number,
heartRateMax: number,
hrPoints: number,
incline: number,
joules: number,
resistance: number,
rpm: number,
speed: number,
spm: number,
+ steps: number,
},
status?: 'incomplete' | 'complete',
user?: {
id?: number,
},
},
}