Strength

The exercise catalogue

Seeded by Body Lab and the same for everyone. With q, only the exercises every word of it matches, by name or by any of their aliases — "rdl", "skull crusher", "pushup". Includes exercises that are never offered (offered: false), since a routine may still name them.

get/exercises

Request

  • Base URL: https://bodylab.lol/api/v1
  • URL: https://bodylab.lol/api/v1/exercises
  • Auth: HTTP bearer

Query parameters

qstring

Words to match against each exercise's name and aliases. Every word must match, either whole or as the start of a word (at least two letters, so 'sq' finds squats); plurals find singulars. Exact names come first, then whole words, then prefixes.

Headers

X-Client-Platformstring

The native client's platform, e.g. ios. Server-side and non-native callers omit it.

X-Client-Versionstring

The native client's own semver version. With X-Client-Platform, a version below that platform's minimum is refused with CLIENT_UPGRADE_REQUIRED (426).

Response

OK

idstring required

Opaque identifier.

namestring required
notesstring nullable required
movementPatternstring required

Movement pattern. Known values: squat, hinge, lunge, horizontal_push, vertical_push, horizontal_pull, vertical_pull, carry, core, calf, isolation, jump, olympic, conditioning. Treat unknown values as "other".

loadTypestring required

Equipment. Known values: barbell, dumbbell, kettlebell, machine, bodyweight, band. Treat unknown values as "other".

isUnilateralboolean required
implementCountinteger required
allowsAssistanceboolean required

Negative weight (assistance) is meaningful, e.g. an assisted pull-up.

defaultUnit'reps' | 'seconds' required
howToUrlstring nullable required
aliasesstring[] required

Other names the movement goes by — "OHP", "RDL", "skull crusher". No alias names two exercises, so one that matches is an answer rather than a guess.

primaryMusclesstring[] required

What the movement is chosen for. calves covers the whole lower leg.

loadableBystring[] required

What can add load to it. Empty when nothing can: the movement is done for reps or time, never with a weight.

offeredboolean required

Whether Body Lab ever offers it, in a swap or a prescription. False for a movement whose equipment isn't on the list an athlete can say they own — parallel bars, a sled, an incline bench — so it may be scheduled and logged, but Body Lab won't hand it to someone who may not have the thing.

Changes

No recorded changes to this operation across all 1 revision of this API.