curl --request GET \
--url https://api.wodup.dev/api/public/wods \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://api.wodup.dev/api/public/wods"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://api.wodup.dev/api/public/wods', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.wodup.dev/api/public/wods",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.wodup.dev/api/public/wods"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.wodup.dev/api/public/wods")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wodup.dev/api/public/wods")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body[
{
"components": [
{
"id": "wc_123abc",
"is_alternating": false,
"level": "Rx",
"notes": "Aim for an 80% effort today.",
"notes_for_coaches": "Try to complete this section in 10 minutes.",
"order": 0,
"partners": 0,
"post_instructions": null,
"pre_instructions": "Make sure to warm up your hips first.",
"prefix": "A",
"results_count": 0,
"workout": {
"description": "Back Squat 5 reps",
"details": {
"movements": [
{
"id": "mv_fT0m3viH",
"load": null,
"reps": "5"
}
],
"rest": {
"type": "as_needed"
},
"type": "Strength"
},
"movements": [
{
"complex_details": null,
"description": null,
"has_calories": false,
"has_distance": false,
"has_duration": false,
"has_height": false,
"has_load": true,
"has_power": false,
"has_reps": true,
"id": "mv_fT0m3viH",
"name": "Back Squat",
"source": "wodup",
"video": {
"id": "dQw4w9WgXcQ",
"service": "youtube"
}
}
],
"name": null,
"type": "Strength"
}
}
],
"id": "wod_123abc",
"name": "Morning Workout",
"occurs_on": "2020-01-01",
"order": 0,
"program": {
"access": "private",
"id": "p_123abc",
"name": "Strength and Conditioning",
"period": "continuous",
"status": "active"
},
"publish_at": "2020-01-01T00:00:00Z"
}
]{
"errors": {}
}List wods
Return all wods for an athlete or program.
curl --request GET \
--url https://api.wodup.dev/api/public/wods \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://api.wodup.dev/api/public/wods"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://api.wodup.dev/api/public/wods', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.wodup.dev/api/public/wods",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.wodup.dev/api/public/wods"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.wodup.dev/api/public/wods")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wodup.dev/api/public/wods")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body[
{
"components": [
{
"id": "wc_123abc",
"is_alternating": false,
"level": "Rx",
"notes": "Aim for an 80% effort today.",
"notes_for_coaches": "Try to complete this section in 10 minutes.",
"order": 0,
"partners": 0,
"post_instructions": null,
"pre_instructions": "Make sure to warm up your hips first.",
"prefix": "A",
"results_count": 0,
"workout": {
"description": "Back Squat 5 reps",
"details": {
"movements": [
{
"id": "mv_fT0m3viH",
"load": null,
"reps": "5"
}
],
"rest": {
"type": "as_needed"
},
"type": "Strength"
},
"movements": [
{
"complex_details": null,
"description": null,
"has_calories": false,
"has_distance": false,
"has_duration": false,
"has_height": false,
"has_load": true,
"has_power": false,
"has_reps": true,
"id": "mv_fT0m3viH",
"name": "Back Squat",
"source": "wodup",
"video": {
"id": "dQw4w9WgXcQ",
"service": "youtube"
}
}
],
"name": null,
"type": "Strength"
}
}
],
"id": "wod_123abc",
"name": "Morning Workout",
"occurs_on": "2020-01-01",
"order": 0,
"program": {
"access": "private",
"id": "p_123abc",
"name": "Strength and Conditioning",
"period": "continuous",
"status": "active"
},
"publish_at": "2020-01-01T00:00:00Z"
}
]{
"errors": {}
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Headers
Only used by platform integrations
ID of gym to execute on behalf of
"gym_123abc"
Query Parameters
ID of program to get wods for
"p_123abc"
ID of athlete to get wods for
"ath_123abc"
Filter by date wod programmed for, inclusive.
Filter by date wod programmed for, inclusive.
A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
1 <= x <= 10050
A cursor for use in pagination. after_cursor is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after_cursor=obj_foo in order to fetch the next page of the list.
"ath_abcdef"
A cursor for use in pagination. before_cursor is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_bar, your subsequent call can include before_cursor=obj_bar in order to fetch the previous page of the list.
"ath_abcdef"
Response
Wod list
[
{
"components": [
{
"id": "wc_123abc",
"is_alternating": false,
"level": "Rx",
"notes": "Aim for an 80% effort today.",
"notes_for_coaches": "Try to complete this section in 10 minutes.",
"order": 0,
"partners": 0,
"post_instructions": null,
"pre_instructions": "Make sure to warm up your hips first.",
"prefix": "A",
"results_count": 0,
"workout": {
"description": "Back Squat 5 reps",
"details": {
"movements": [
{
"id": "mv_fT0m3viH",
"load": null,
"reps": "5"
}
],
"rest": { "type": "as_needed" },
"type": "Strength"
},
"movements": [
{
"complex_details": null,
"description": null,
"has_calories": false,
"has_distance": false,
"has_duration": false,
"has_height": false,
"has_load": true,
"has_power": false,
"has_reps": true,
"id": "mv_fT0m3viH",
"name": "Back Squat",
"source": "wodup",
"video": { "id": "dQw4w9WgXcQ", "service": "youtube" }
}
],
"name": null,
"type": "Strength"
}
}
],
"id": "wod_123abc",
"name": "Morning Workout",
"occurs_on": "2020-01-01",
"order": 0,
"program": {
"access": "private",
"id": "p_123abc",
"name": "Strength and Conditioning",
"period": "continuous",
"status": "active"
},
"publish_at": "2020-01-01T00:00:00Z"
}
]