Nest Changelog

1.37.0 PRE

7/31/2023

1.38.0 PRE

8/7/2023

2 changed endpoints

PATCH /strength-routine/items/{guid}

Edit a strength routine.

Request Body
{
  circuit: bool,
- createdBy: {
-   id?: number,
- },
- 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',
}

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', }

DELETE /strength-routine/items/{guid}

Delete a strength routine.

Request Body
{
  circuit: bool,
- createdBy: {
-   id?: number,
- },
- 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',
}

DELETE /strength-routine/items/{guid}

Delete 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', }
3 added endpoints
Added endpoints

GET /users/{userId}/strength-workouts/items

Get strength workout summaries for a user

Guard: customerService, family

Response Body
{
  data: List<{
    completion?: number,
    dateEnd?: number,
    dateStart?: number,
    guid?: string,
    movementStats?: List<{
      interval?: bool,
      movement?: {
        guid?: string,
        name?: string,
      },
      setStats?: List<{
        calories?: number,
        completed?: bool,
        duration?: number,
        heartRate?: number,
        number?: number,
        power?: number,
        reps?: {
          completed?: number,
          planned?: number,
        },
        resistanceMode?: 'standard' | 'concentric' | 'eccentric' | 'isokinetic' | 'chain',
        rest?: number,
        tension?: number,
        volume?: number,
      }>,
      totalStats?: {
        calories?: number,
        duration?: number,
        heartRate?: number,
        power?: number,
        reps?: {
          completed?: number,
          planned?: number,
        },
        rest?: number,
        sets?: number,
        tension?: number,
        volume?: number,
      },
    }>,
    user?: {
      id?: number,
    },
    workoutStats?: {
      calories?: number,
      duration?: number,
      heartRate?: number,
      power?: number,
      reps?: {
        completed?: number,
        planned?: number,
      },
      rest?: number,
      sets?: number,
      tension?: number,
      volume?: number,
    },
  }>,
  pagination: {
    page?: number,
    skip?: number,
    take?: number,
    total?: {
      pages?: number,
      rows?: number,
    },
  },
}

GET /strength-workouts/items/{guid}

Get Detailed view of workout. Includes deleted workouts.

Guard: customerService

Response Body
{
  data: {
    data?: record,
  },
}

GET /strength-workouts/items/{guid}/summary

Guard: loggedIn

Response Body
{
  data: {
    completion?: number,
    dateEnd?: number,
    dateStart?: number,
    guid?: string,
    movementStats?: List<{
      interval?: bool,
      movement?: {
        guid?: string,
        name?: string,
      },
      setStats?: List<{
        calories?: number,
        completed?: bool,
        duration?: number,
        heartRate?: number,
        number?: number,
        power?: number,
        reps?: {
          completed?: number,
          planned?: number,
        },
        resistanceMode?: 'standard' | 'concentric' | 'eccentric' | 'isokinetic' | 'chain',
        rest?: number,
        tension?: number,
        volume?: number,
      }>,
      totalStats?: {
        calories?: number,
        duration?: number,
        heartRate?: number,
        power?: number,
        reps?: {
          completed?: number,
          planned?: number,
        },
        rest?: number,
        sets?: number,
        tension?: number,
        volume?: number,
      },
    }>,
    user?: {
      id?: number,
    },
    workoutStats?: {
      calories?: number,
      duration?: number,
      heartRate?: number,
      power?: number,
      reps?: {
        completed?: number,
        planned?: number,
      },
      rest?: number,
      sets?: number,
      tension?: number,
      volume?: number,
    },
  },
}
2 deleted endpoints

PUT /workouts/items/{guid}

Put a Workout

Guard: loggedIn

Request Body
{
  content: {
    guid?: string,
    type?: 'live' | 'vod' | 'encore' | 'freestyle',
  },
  device?: {
    appVersion?: string,
    model?: string,
    os?: string,
    osVersion?: string,
  },
  legacyProduct?: string,
  localTime?: string,
  percentile: number,
  peripherals?: List<{
    firmwareVersion?: string,
    guid?: string,
    hardwareVersion?: string,
    modelId?: string,
    name?: string,
    serialNO?: string,
    type?: 'bike' | 'rower' | 'treadmill',
  }>,
  ranking: {
    place?: number,
    total?: number,
  },
  stats?: List<{
    classState?: 'warmup' | 'in-session' | 'overflow' | 'ended',
    dateLoggedMs?: number,
    output?: {
      distance: number,
      incrementalDistance: number,
      joules: number,
      RPM: number,
      strokesPerMinute: number,
      time500Meters: number,
      watts: number,
    },
    peripheral: {
      guid: string,
      incline: number,
      resistance: number,
      speed: number,
    },
    physiology?: {
      calories: number,
      heartRate: number,
      hrPoints: number,
    },
    playbackState?: 'playing' | 'paused' | 'stopped' | 'buffering',
  }>,
  user?: {
    id?: number,
  },
}

POST /strength-routine/items

Create a new strength routine.

Guard: loggedIn

Request Body
{
  circuit: bool,
  createdBy?: {
    id?: number,
  },
  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,
    dateModified?: number,
    description?: string,
    duration?: number,
    guid?: 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',
      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<{
          images?: {
            default?: string,
            hd?: string,
            portrait?: string,
            sd?: string,
            square?: string,
          },
          modality?: 'ride' | 'row' | 'run' | 'off' | 'all',
          translations?: record,
          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',
  },
}
Deleted endpoints
WORK IN PROGRESS