Exercises API
Overview
To use Exercises, you need an API key. You can get one by creating a free account and visiting your dashboard.
GET Endpoint
https://api.apiverve.com/v1/exercisesExample
How to call the Exercises API in different programming languages.
curl -X GET \
"https://api.apiverve.com/v1/exercises?muscle=chest&name=barbell&equipment=barbell" \
-H "X-API-Key: your_api_key_here"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);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)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))
}{
"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:
X-API-Key: your_api_key_hereInteractive 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
| Parameter | Type | Required | Description | Default | Example |
|---|---|---|---|---|---|
muscle | string | required | The muscle group to get exercises for Supported values: abdominalsabductorsadductorsbicepscalves | - | |
name | string | optional | The name of the exercise to get information about | - | |
equipment | string | optional | The equipment used for the exercise Supported values: barbelldumbbellcablemachinebody_only | - |
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 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'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>
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
| key | value |
|---|---|
| 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}] |
Response Structure
All API responses follow a consistent structure with the following fields:
| Field | Type | Description | Example |
|---|---|---|---|
status | string | Indicates whether the request was successful ("ok") or failed ("error") | ok |
error | string | null | Contains error message if status is "error", otherwise null | null |
data | object | null | Contains 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:
| Field | Type | Sample Value | Description |
|---|---|---|---|
count | number | - | |
filteredOn | array | - | |
| [ ] Array items: | array[5] | - | |
â”” name | string | - | |
â”” force | string | - | |
â”” level | string | - | |
â”” mechanic | string | - | |
â”” equipment | string | - | |
â”” instructions | array | - | |
â”” muscle | string | - |
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.
Credit Cost: Each API called in your GraphQL query consumes its standard credit cost.
POST https://api.apiverve.com/v1/graphqlquery {
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?
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?
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.








