Nest Changelog
1.39.34
8/28/2023
1.39.35 PRE
8/30/2023
5 changed endpoints Collapse changed endpoints
PATCH /strength-routine/items/{guid}
Edit a strength routine.
Request Body
{ circuit: bool, description: string, duration: number, language: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level: string, name: string, routineMovements: List<{ duration: number, mode?: 'standard' | 'interval', movement?: { guid?: string, }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description: string, interval: { duration?: number,}, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility: 'public' | 'private', }
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number,}, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
PATCH /strength-routine/items/{guid}
Edit a strength routine.
Request Body
{ circuit: bool, description: string, duration: number, language: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level: string, name: string, routineMovements: List<{ duration: number, mode?: 'standard' | 'interval', movement?: { guid?: string, }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description: string, interval: { duration?: number, + weight?: number, }, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility: 'public' | 'private', }
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number, + weight?: number, }, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
GET /strength-routine/admin/items/{guid}
Load an individual strength routine by guid.
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number,}, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
GET /strength-routine/admin/items/{guid}
Load an individual strength routine by guid.
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number, + weight?: number, }, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
POST /users/{userId}/strength-routines/import
Copy a strength routine.
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number,}, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
POST /users/{userId}/strength-routines/import
Copy a strength routine.
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number, + weight?: number, }, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
POST /users/{userId}/strength-routines/items
Create a new strength routine.
Request Body
{ circuit: bool, createdByEchelon: bool, description: string, duration: number, language: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level: string, name?: string, routineMovements: List<{ duration: number, mode?: 'standard' | 'interval', movement?: { guid?: string, }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description: string, interval: { duration?: number,}, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility: 'public' | 'private', }
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number,}, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
POST /users/{userId}/strength-routines/items
Create a new strength routine.
Request Body
{ circuit: bool, createdByEchelon: bool, description: string, duration: number, language: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level: string, name?: string, routineMovements: List<{ duration: number, mode?: 'standard' | 'interval', movement?: { guid?: string, }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description: string, interval: { duration?: number, + weight?: number, }, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility: 'public' | 'private', }
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number, + weight?: number, }, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, visibility?: 'public' | 'private', }, }
GET /users/{userId}/strength-routines/items/{guid}
Get strength routine for a user, comes with workout data for this routine
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number,}, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, userData?: { workouts?: { history?: List<{ date?: number, guid?: string, isPersonalBest?: bool, status?: 'incomplete' | 'complete', }>, personalBest?: { guid?: string, totalVolume?: number, }, }, }, visibility?: 'public' | 'private', }, }
GET /users/{userId}/strength-routines/items/{guid}
Get strength routine for a user, comes with workout data for this routine
Response Body
{ data: { circuit?: bool, createdBy?: { id?: number, }, createdByEchelon?: bool, dateCreated?: number, dateDeleted?: number, dateModified?: number, description?: string, duration?: number, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, language?: 'en' | 'fr' | 'es' | 'de' | 'ko' | 'tr', level?: { images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', translations?: record, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }, modifiedBy?: number, name?: string, routineMovements?: List<{ duration?: number, mode?: 'standard' | 'interval', movement?: { createdBy?: { id?: number, }, dateCreated?: number, dateModified?: number, description?: string, guid?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, name?: string, playback?: { type?: 'hls' | 'dash', url?: string, }, status?: 'draft' | 'published', tags?: List<{ description?: string, images?: { default?: string, hd?: string, portrait?: string, sd?: string, square?: string, }, modality?: 'ride' | 'row' | 'run' | 'off' | 'all' | 'ellipse', text?: string, type?: 'format' | 'category' | 'music' | 'language' | 'closedCaptions' | 'equipment' | 'plan' | 'venue' | 'general' | 'level' | 'accessories' | 'focus' | 'muscleGroup', value?: string, }>, translations?: record, videoStatus?: 'uninitiated' | 'uploadStarted' | 'uploadCompleted' | 'processingStarted' | 'processingCompleted' | 'processingFailed', }, restAfter?: number, restBetweenSets?: number, sets?: List<{ description?: string, interval?: { duration?: number, + weight?: number, }, reps?: List<{ description?: string, restAfter?: number, weight?: number, }>, }>, }>, userData?: { workouts?: { history?: List<{ date?: number, guid?: string, isPersonalBest?: bool, status?: 'incomplete' | 'complete', }>, personalBest?: { guid?: string, totalVolume?: number, }, }, }, visibility?: 'public' | 'private', }, }