ExercisesExercises API

OnlineCredit Usage:1 per callRefreshed 1 month ago
avg: 601ms|p50: 561ms|p75: 627ms|p90: 707ms|p99: 865ms

Overview

To use Exercises, you need an API key. You can get one by creating a free account and visiting your dashboard.

GET Endpoint

URL
https://api.apiverve.com/v1/exercises

Example

How to call the Exercises API in different programming languages.

cURL Request
curl -X GET \
  "https://api.apiverve.com/v1/exercises?muscle=chest&name=barbell&equipment=barbell" \
  -H "X-API-Key: your_api_key_here"
JavaScript (Fetch API)
const response = await fetch('https://api.apiverve.com/v1/exercises?muscle=chest&name=barbell&equipment=barbell', {
  method: 'GET',
  headers: {
    'X-API-Key': 'your_api_key_here',
    'Content-Type': 'application/json'
  }
});

const data = await response.json();
console.log(data);
Python (Requests)
import requests

headers = {
    'X-API-Key': 'your_api_key_here',
    'Content-Type': 'application/json'
}

response = requests.get('https://api.apiverve.com/v1/exercises?muscle=chest&name=barbell&equipment=barbell', headers=headers)

data = response.json()
print(data)
Go (net/http)
package main

import (
    "fmt"
    "io"
    "net/http"

)

func main() {
    req, _ := http.NewRequest("GET", "https://api.apiverve.com/v1/exercises?muscle=chest&name=barbell&equipment=barbell", nil)

    req.Header.Set("X-API-Key", "your_api_key_here")
    req.Header.Set("Content-Type", "application/json")

    client := &http.Client{}
    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}
Example Response
{
  "status": "ok",
  "error": null,
  "data": {
    "count": 5,
    "filteredOn": [
      "name",
      "muscle"
    ],
    "exercises": [
      {
        "name": "Barbell Ab Rollout",
        "force": "pull",
        "level": "intermediate",
        "mechanic": "compound",
        "equipment": "barbell",
        "instructions": [
          "For this exercise you will need to get into a pushup position, but instead of having your hands of the floor, you will be grabbing on to an Olympic barbell (loaded with 5-10 lbs on each side) instead. This will be your starting position.",
          "While keeping a slight arch on your back, lift your hips and roll the barbell towards your feet as you exhale. Tip: As you perform the movement, your glutes should be coming up, you should be keeping the abs tight and should maintain your back posture at all times. Also your arms should be staying perpendicular to the floor throughout the movement. If you don't, you will work out your shoulders and back more than the abs.",
          "After a second contraction at the top, start to roll the barbell back forward to the starting position slowly as you inhale.",
          "Repeat for the recommended amount of repetitions."
        ],
        "muscle": "biceps"
      },
      {
        "name": "Barbell Ab Rollout - On Knees",
        "force": "pull",
        "level": "expert",
        "mechanic": "compound",
        "equipment": "barbell",
        "instructions": [
          "Hold an Olympic barbell loaded with 5-10lbs on each side and kneel on the floor.",
          "Now place the barbell on the floor in front of you so that you are on all your hands and knees (as in a kneeling push up position). This will be your starting position.",
          "Slowly roll the barbell straight forward, stretching your body into a straight position. Tip: Go down as far as you can without touching the floor with your body. Breathe in during this portion of the movement.",
          "After a second pause at the stretched position, start pulling yourself back to the starting position as you breathe out. Tip: Go slowly and keep your abs tight at all times."
        ],
        "muscle": "biceps"
      },
      {
        "name": "Barbell Bench Press - Medium Grip",
        "force": "push",
        "level": "beginner",
        "mechanic": "compound",
        "equipment": "barbell",
        "instructions": [
          "Lie back on a flat bench. Using a medium width grip (a grip that creates a 90-degree angle in the middle of the movement between the forearms and the upper arms), lift the bar from the rack and hold it straight over you with your arms locked. This will be your starting position.",
          "From the starting position, breathe in and begin coming down slowly until the bar touches your middle chest.",
          "After a brief pause, push the bar back to the starting position as you breathe out. Focus on pushing the bar using your chest muscles. Lock your arms and squeeze your chest in the contracted position at the top of the motion, hold for a second and then start coming down slowly again. Tip: Ideally, lowering the weight should take about twice as long as raising it.",
          "Repeat the movement for the prescribed amount of repetitions.",
          "When you are done, place the bar back in the rack."
        ],
        "muscle": "biceps"
      },
      {
        "name": "Barbell Curl",
        "force": "pull",
        "level": "beginner",
        "mechanic": "isolation",
        "equipment": "barbell",
        "instructions": [
          "Stand up with your torso upright while holding a barbell at a shoulder-width grip. The palm of your hands should be facing forward and the elbows should be close to the torso. This will be your starting position.",
          "While holding the upper arms stationary, curl the weights forward while contracting the biceps as you breathe out. Tip: Only the forearms should move.",
          "Continue the movement until your biceps are fully contracted and the bar is at shoulder level. Hold the contracted position for a second and squeeze the biceps hard.",
          "Slowly begin to bring the bar back to starting position as your breathe in.",
          "Repeat for the recommended amount of repetitions."
        ],
        "muscle": "biceps"
      },
      {
        "name": "Barbell Curls Lying Against An Incline",
        "force": "pull",
        "level": "beginner",
        "mechanic": "isolation",
        "equipment": "barbell",
        "instructions": [
          "Lie against an incline bench, with your arms holding a barbell and hanging down in a horizontal line. This will be your starting position.",
          "While keeping the upper arms stationary, curl the weight up as high as you can while squeezing the biceps. Breathe out as you perform this portion of the movement. Tip: Only the forearms should move. Do not swing the arms.",
          "After a second contraction, slowly go back to the starting position as you inhale. Tip: Make sure that you go all of the way down.",
          "Repeat for the recommended amount of repetitions."
        ],
        "muscle": "biceps"
      }
    ]
  }
}

Authentication

The Exercises API requires authentication via API key. Include your API key in the request header:

Required Header
X-API-Key: your_api_key_here

Learn more about authentication →

Interactive API Playground

Test the Exercises API directly in your browser with live requests and responses.

Parameters

The following parameters are available for the Exercises API:

Get Exercise Information

ParameterTypeRequiredDescriptionDefaultExample
musclestringrequired
The muscle group to get exercises for
Supported values: abdominalsabductorsadductorsbicepscalves
-chest
namestringoptional
The name of the exercise to get information about
-barbell
equipmentstringoptional
The equipment used for the exercise
Supported values: barbelldumbbellcablemachinebody_only
-barbell

Response

The Exercises API returns responses in JSON, XML, YAML, and CSV formats. The JSON response is shown in the Example section above; alternative formats below.

Other Response Formats

XML Response
200 OK
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <status>ok</status>
  <error xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
  <data>
    <count>5</count>
    <filteredOn>
      <item>name</item>
      <item>muscle</item>
    </filteredOn>
    <exercises>
      <exercise>
        <name>Barbell Ab Rollout</name>
        <force>pull</force>
        <level>intermediate</level>
        <mechanic>compound</mechanic>
        <equipment>barbell</equipment>
        <instructions>
          <instruction>For this exercise you will need to get into a pushup position, but instead of having your hands of the floor, you will be grabbing on to an Olympic barbell (loaded with 5-10 lbs on each side) instead. This will be your starting position.</instruction>
          <instruction>While keeping a slight arch on your back, lift your hips and roll the barbell towards your feet as you exhale. Tip: As you perform the movement, your glutes should be coming up, you should be keeping the abs tight and should maintain your back posture at all times. Also your arms should be staying perpendicular to the floor throughout the movement. If you don&apos;t, you will work out your shoulders and back more than the abs.</instruction>
          <instruction>After a second contraction at the top, start to roll the barbell back forward to the starting position slowly as you inhale.</instruction>
          <instruction>Repeat for the recommended amount of repetitions.</instruction>
        </instructions>
        <muscle>biceps</muscle>
      </exercise>
      <exercise>
        <name>Barbell Ab Rollout - On Knees</name>
        <force>pull</force>
        <level>expert</level>
        <mechanic>compound</mechanic>
        <equipment>barbell</equipment>
        <instructions>
          <instruction>Hold an Olympic barbell loaded with 5-10lbs on each side and kneel on the floor.</instruction>
          <instruction>Now place the barbell on the floor in front of you so that you are on all your hands and knees (as in a kneeling push up position). This will be your starting position.</instruction>
          <instruction>Slowly roll the barbell straight forward, stretching your body into a straight position. Tip: Go down as far as you can without touching the floor with your body. Breathe in during this portion of the movement.</instruction>
          <instruction>After a second pause at the stretched position, start pulling yourself back to the starting position as you breathe out. Tip: Go slowly and keep your abs tight at all times.</instruction>
        </instructions>
        <muscle>biceps</muscle>
      </exercise>
      <exercise>
        <name>Barbell Bench Press - Medium Grip</name>
        <force>push</force>
        <level>beginner</level>
        <mechanic>compound</mechanic>
        <equipment>barbell</equipment>
        <instructions>
          <instruction>Lie back on a flat bench. Using a medium width grip (a grip that creates a 90-degree angle in the middle of the movement between the forearms and the upper arms), lift the bar from the rack and hold it straight over you with your arms locked. This will be your starting position.</instruction>
          <instruction>From the starting position, breathe in and begin coming down slowly until the bar touches your middle chest.</instruction>
          <instruction>After a brief pause, push the bar back to the starting position as you breathe out. Focus on pushing the bar using your chest muscles. Lock your arms and squeeze your chest in the contracted position at the top of the motion, hold for a second and then start coming down slowly again. Tip: Ideally, lowering the weight should take about twice as long as raising it.</instruction>
          <instruction>Repeat the movement for the prescribed amount of repetitions.</instruction>
          <instruction>When you are done, place the bar back in the rack.</instruction>
        </instructions>
        <muscle>biceps</muscle>
      </exercise>
      <exercise>
        <name>Barbell Curl</name>
        <force>pull</force>
        <level>beginner</level>
        <mechanic>isolation</mechanic>
        <equipment>barbell</equipment>
        <instructions>
          <instruction>Stand up with your torso upright while holding a barbell at a shoulder-width grip. The palm of your hands should be facing forward and the elbows should be close to the torso. This will be your starting position.</instruction>
          <instruction>While holding the upper arms stationary, curl the weights forward while contracting the biceps as you breathe out. Tip: Only the forearms should move.</instruction>
          <instruction>Continue the movement until your biceps are fully contracted and the bar is at shoulder level. Hold the contracted position for a second and squeeze the biceps hard.</instruction>
          <instruction>Slowly begin to bring the bar back to starting position as your breathe in.</instruction>
          <instruction>Repeat for the recommended amount of repetitions.</instruction>
        </instructions>
        <muscle>biceps</muscle>
      </exercise>
      <exercise>
        <name>Barbell Curls Lying Against An Incline</name>
        <force>pull</force>
        <level>beginner</level>
        <mechanic>isolation</mechanic>
        <equipment>barbell</equipment>
        <instructions>
          <instruction>Lie against an incline bench, with your arms holding a barbell and hanging down in a horizontal line. This will be your starting position.</instruction>
          <instruction>While keeping the upper arms stationary, curl the weight up as high as you can while squeezing the biceps. Breathe out as you perform this portion of the movement. Tip: Only the forearms should move. Do not swing the arms.</instruction>
          <instruction>After a second contraction, slowly go back to the starting position as you inhale. Tip: Make sure that you go all of the way down.</instruction>
          <instruction>Repeat for the recommended amount of repetitions.</instruction>
        </instructions>
        <muscle>biceps</muscle>
      </exercise>
    </exercises>
  </data>
</response>
YAML Response
200 OK
status: ok
error: null
data:
  count: 5
  filteredOn:
    - name
    - muscle
  exercises:
    - name: Barbell Ab Rollout
      force: pull
      level: intermediate
      mechanic: compound
      equipment: barbell
      instructions:
        - >-
          For this exercise you will need to get into a pushup position, but
          instead of having your hands of the floor, you will be grabbing on to
          an Olympic barbell (loaded with 5-10 lbs on each side) instead. This
          will be your starting position.
        - >-
          While keeping a slight arch on your back, lift your hips and roll the
          barbell towards your feet as you exhale. Tip: As you perform the
          movement, your glutes should be coming up, you should be keeping the
          abs tight and should maintain your back posture at all times. Also
          your arms should be staying perpendicular to the floor throughout the
          movement. If you don't, you will work out your shoulders and back more
          than the abs.
        - >-
          After a second contraction at the top, start to roll the barbell back
          forward to the starting position slowly as you inhale.
        - Repeat for the recommended amount of repetitions.
      muscle: biceps
    - name: Barbell Ab Rollout - On Knees
      force: pull
      level: expert
      mechanic: compound
      equipment: barbell
      instructions:
        - >-
          Hold an Olympic barbell loaded with 5-10lbs on each side and kneel on
          the floor.
        - >-
          Now place the barbell on the floor in front of you so that you are on
          all your hands and knees (as in a kneeling push up position). This
          will be your starting position.
        - >-
          Slowly roll the barbell straight forward, stretching your body into a
          straight position. Tip: Go down as far as you can without touching the
          floor with your body. Breathe in during this portion of the movement.
        - >-
          After a second pause at the stretched position, start pulling yourself
          back to the starting position as you breathe out. Tip: Go slowly and
          keep your abs tight at all times.
      muscle: biceps
    - name: Barbell Bench Press - Medium Grip
      force: push
      level: beginner
      mechanic: compound
      equipment: barbell
      instructions:
        - >-
          Lie back on a flat bench. Using a medium width grip (a grip that
          creates a 90-degree angle in the middle of the movement between the
          forearms and the upper arms), lift the bar from the rack and hold it
          straight over you with your arms locked. This will be your starting
          position.
        - >-
          From the starting position, breathe in and begin coming down slowly
          until the bar touches your middle chest.
        - >-
          After a brief pause, push the bar back to the starting position as you
          breathe out. Focus on pushing the bar using your chest muscles. Lock
          your arms and squeeze your chest in the contracted position at the top
          of the motion, hold for a second and then start coming down slowly
          again. Tip: Ideally, lowering the weight should take about twice as
          long as raising it.
        - Repeat the movement for the prescribed amount of repetitions.
        - When you are done, place the bar back in the rack.
      muscle: biceps
    - name: Barbell Curl
      force: pull
      level: beginner
      mechanic: isolation
      equipment: barbell
      instructions:
        - >-
          Stand up with your torso upright while holding a barbell at a
          shoulder-width grip. The palm of your hands should be facing forward
          and the elbows should be close to the torso. This will be your
          starting position.
        - >-
          While holding the upper arms stationary, curl the weights forward
          while contracting the biceps as you breathe out. Tip: Only the
          forearms should move.
        - >-
          Continue the movement until your biceps are fully contracted and the
          bar is at shoulder level. Hold the contracted position for a second
          and squeeze the biceps hard.
        - >-
          Slowly begin to bring the bar back to starting position as your
          breathe in.
        - Repeat for the recommended amount of repetitions.
      muscle: biceps
    - name: Barbell Curls Lying Against An Incline
      force: pull
      level: beginner
      mechanic: isolation
      equipment: barbell
      instructions:
        - >-
          Lie against an incline bench, with your arms holding a barbell and
          hanging down in a horizontal line. This will be your starting
          position.
        - >-
          While keeping the upper arms stationary, curl the weight up as high as
          you can while squeezing the biceps. Breathe out as you perform this
          portion of the movement. Tip: Only the forearms should move. Do not
          swing the arms.
        - >-
          After a second contraction, slowly go back to the starting position as
          you inhale. Tip: Make sure that you go all of the way down.
        - Repeat for the recommended amount of repetitions.
      muscle: biceps
CSV Response
200 OK
keyvalue
count5
filteredOn[name,muscle]
exercises[{name:Barbell Ab Rollout,force:pull,level:intermediate,mechanic:compound,equipment:barbell,instructions:[For this exercise you will need to get into a pushup position, but instead of having your hands of the floor, you will be grabbing on to an Olympic barbell (loaded with 5-10 lbs on each side) instead. This will be your starting position.,While keeping a slight arch on your back, lift your hips and roll the barbell towards your feet as you exhale. Tip: As you perform the movement, your glutes should be coming up, you should be keeping the abs tight and should maintain your back posture at all times. Also your arms should be staying perpendicular to the floor throughout the movement. If you don't, you will work out your shoulders and back more than the abs.,After a second contraction at the top, start to roll the barbell back forward to the starting position slowly as you inhale.,Repeat for the recommended amount of repetitions.],muscle:biceps},{name:Barbell Ab Rollout - On Knees,force:pull,level:expert,mechanic:compound,equipment:barbell,instructions:[Hold an Olympic barbell loaded with 5-10lbs on each side and kneel on the floor.,Now place the barbell on the floor in front of you so that you are on all your hands and knees (as in a kneeling push up position). This will be your starting position.,Slowly roll the barbell straight forward, stretching your body into a straight position. Tip: Go down as far as you can without touching the floor with your body. Breathe in during this portion of the movement.,After a second pause at the stretched position, start pulling yourself back to the starting position as you breathe out. Tip: Go slowly and keep your abs tight at all times.],muscle:biceps},{name:Barbell Bench Press - Medium Grip,force:push,level:beginner,mechanic:compound,equipment:barbell,instructions:[Lie back on a flat bench. Using a medium width grip (a grip that creates a 90-degree angle in the middle of the movement between the forearms and the upper arms), lift the bar from the rack and hold it straight over you with your arms locked. This will be your starting position.,From the starting position, breathe in and begin coming down slowly until the bar touches your middle chest.,After a brief pause, push the bar back to the starting position as you breathe out. Focus on pushing the bar using your chest muscles. Lock your arms and squeeze your chest in the contracted position at the top of the motion, hold for a second and then start coming down slowly again. Tip: Ideally, lowering the weight should take about twice as long as raising it.,Repeat the movement for the prescribed amount of repetitions.,When you are done, place the bar back in the rack.],muscle:biceps},{name:Barbell Curl,force:pull,level:beginner,mechanic:isolation,equipment:barbell,instructions:[Stand up with your torso upright while holding a barbell at a shoulder-width grip. The palm of your hands should be facing forward and the elbows should be close to the torso. This will be your starting position.,While holding the upper arms stationary, curl the weights forward while contracting the biceps as you breathe out. Tip: Only the forearms should move.,Continue the movement until your biceps are fully contracted and the bar is at shoulder level. Hold the contracted position for a second and squeeze the biceps hard.,Slowly begin to bring the bar back to starting position as your breathe in.,Repeat for the recommended amount of repetitions.],muscle:biceps},{name:Barbell Curls Lying Against An Incline,force:pull,level:beginner,mechanic:isolation,equipment:barbell,instructions:[Lie against an incline bench, with your arms holding a barbell and hanging down in a horizontal line. This will be your starting position.,While keeping the upper arms stationary, curl the weight up as high as you can while squeezing the biceps. Breathe out as you perform this portion of the movement. Tip: Only the forearms should move. Do not swing the arms.,After a second contraction, slowly go back to the starting position as you inhale. Tip: Make sure that you go all of the way down.,Repeat for the recommended amount of repetitions.],muscle:biceps}]

Response Structure

All API responses follow a consistent structure with the following fields:

FieldTypeDescriptionExample
statusstringIndicates whether the request was successful ("ok") or failed ("error")ok
errorstring | nullContains error message if status is "error", otherwise nullnull
dataobject | nullContains the API response data if successful, otherwise null{...}

Learn more about response formats →

Response Data Fields

When the request is successful, the data object contains the following fields:

FieldTypeSample ValueDescription
countnumber5
-
filteredOnarray["name", ...]
-
[ ] Array items:array[5]Array of objects
-
â”” namestring"Barbell Ab Rollout"
-
â”” forcestring"pull"
-
â”” levelstring"intermediate"
-
â”” mechanicstring"compound"
-
â”” equipmentstring"barbell"
-
â”” instructionsarray["For this exercise you will need to get into a pushup position, but instead of having your hands of the floor, you will be grabbing on to an Olympic barbell (loaded with 5-10 lbs on each side) instead. This will be your starting position.", ...]
-
â”” musclestring"biceps"
-

Headers

Only X-API-Key is required. Optional headers include Accept for response format negotiation (JSON, XML, or YAML), User-Agent, and X-Request-ID for request tracing. See all request headers →

GraphQL AccessALPHA

Access Exercises through GraphQL to combine it with other API calls in a single request. Query only the exercises data you need with precise field selection, and orchestrate complex data fetching workflows.

Test Exercises in the GraphQL Explorer to confirm availability and experiment with queries.

Credit Cost: Each API called in your GraphQL query consumes its standard credit cost.

GraphQL Endpoint
POST https://api.apiverve.com/v1/graphql
GraphQL Query Example
query {
  exercises(
    input: {
      muscle: "chest"
      name: "barbell"
      equipment: "barbell"
    }
  ) {
    count
    filteredOn
    exercises
  }
}

Note: Authentication is handled via the x-api-key header in your GraphQL request, not as a query parameter.

CORS Support

The Exercises API accepts cross-origin requests from any origin, so it can be called directly from browser-based applications without a proxy. See CORS support →

Rate Limiting

Exercises requests are throttled per minute on the Free plan and unthrottled on paid plans. Exceeding the limit returns 429 Too Many Requests; rate-limit usage is reported in the X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset response headers. See per-plan limits and best practices →

Error Codes

The Exercises API uses standard HTTP status codes — 200 on success, 400 for invalid parameters, 401 for missing or invalid keys, 403 for insufficient credits, 429 for rate-limit exhaustion, and 500/503 for server-side issues. Each error response includes an X-Request-ID header you can quote when contacting support. See full error handling guide →

SDKs for Exercises

Official Exercises packages on npm, PyPI, NuGet, and JitPack — plus a Postman collection and an OpenAPI spec. See the SDK guide →

No-Code Integrations

Exercises works with Zapier, Make, Pipedream, n8n, and Power Automate using the same API key. See setup guides →

Frequently Asked Questions

How do I get an API key for Exercises?
Sign up for a free account at dashboard.apiverve.com. Your API key will be automatically generated and available in your dashboard. The same key works for Exercises and all other APIVerve APIs. The free plan includes 1,000 credits plus a 500 credit bonus.
How many credits does Exercises cost?

Each successful Exercises API call consumes credits based on plan tier. Check the pricing section above for the exact credit cost. Failed requests and errors don't consume credits, so you only pay for successful exercises lookups.

Can I use Exercises in production?

The free plan is for testing and development only. For production use of Exercises, upgrade to a paid plan (Starter, Pro, or Mega) which includes commercial use rights, no attribution requirements, and guaranteed uptime SLAs. All paid plans are production-ready.

Can I use Exercises from a browser?
Yes! The Exercises API supports CORS with wildcard configuration, so you can call it directly from browser-based JavaScript without needing a proxy server. See the CORS section above for details.
What happens if I exceed my Exercises credit limit?

When you reach your monthly credit limit, Exercises API requests will return an error until you upgrade your plan or wait for the next billing cycle. You'll receive notifications at 80% and 95% usage to give you time to upgrade if needed.

What's Next?

Continue your journey with these recommended resources

Was this page helpful?