curl --request POST \
--url https://api.wodup.dev/api/public/movements/complex \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"complex_details": [
{
"movement_id": "mv_PccWR3Th",
"reps": 1
},
{
"movement_id": "mv_CSO4yx74",
"reps": 2
}
]
}
'import requests
url = "https://api.wodup.dev/api/public/movements/complex"
payload = { "complex_details": [
{
"movement_id": "mv_PccWR3Th",
"reps": 1
},
{
"movement_id": "mv_CSO4yx74",
"reps": 2
}
] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
complex_details: [{movement_id: 'mv_PccWR3Th', reps: 1}, {movement_id: 'mv_CSO4yx74', reps: 2}]
})
};
fetch('https://api.wodup.dev/api/public/movements/complex', 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/movements/complex",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'complex_details' => [
[
'movement_id' => 'mv_PccWR3Th',
'reps' => 1
],
[
'movement_id' => 'mv_CSO4yx74',
'reps' => 2
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wodup.dev/api/public/movements/complex"
payload := strings.NewReader("{\n \"complex_details\": [\n {\n \"movement_id\": \"mv_PccWR3Th\",\n \"reps\": 1\n },\n {\n \"movement_id\": \"mv_CSO4yx74\",\n \"reps\": 2\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.wodup.dev/api/public/movements/complex")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"complex_details\": [\n {\n \"movement_id\": \"mv_PccWR3Th\",\n \"reps\": 1\n },\n {\n \"movement_id\": \"mv_CSO4yx74\",\n \"reps\": 2\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wodup.dev/api/public/movements/complex")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"complex_details\": [\n {\n \"movement_id\": \"mv_PccWR3Th\",\n \"reps\": 1\n },\n {\n \"movement_id\": \"mv_CSO4yx74\",\n \"reps\": 2\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"complex_details": [
{
"movement_id": "mv_PccWR3Th",
"reps": 1
},
{
"movement_id": "mv_CSO4yx74",
"reps": 2
}
],
"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_abcd1234",
"name": "1 Deadlift + 2 Cleans",
"source": "wodup",
"video": null
}Create complex movement
curl --request POST \
--url https://api.wodup.dev/api/public/movements/complex \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"complex_details": [
{
"movement_id": "mv_PccWR3Th",
"reps": 1
},
{
"movement_id": "mv_CSO4yx74",
"reps": 2
}
]
}
'import requests
url = "https://api.wodup.dev/api/public/movements/complex"
payload = { "complex_details": [
{
"movement_id": "mv_PccWR3Th",
"reps": 1
},
{
"movement_id": "mv_CSO4yx74",
"reps": 2
}
] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
complex_details: [{movement_id: 'mv_PccWR3Th', reps: 1}, {movement_id: 'mv_CSO4yx74', reps: 2}]
})
};
fetch('https://api.wodup.dev/api/public/movements/complex', 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/movements/complex",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'complex_details' => [
[
'movement_id' => 'mv_PccWR3Th',
'reps' => 1
],
[
'movement_id' => 'mv_CSO4yx74',
'reps' => 2
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wodup.dev/api/public/movements/complex"
payload := strings.NewReader("{\n \"complex_details\": [\n {\n \"movement_id\": \"mv_PccWR3Th\",\n \"reps\": 1\n },\n {\n \"movement_id\": \"mv_CSO4yx74\",\n \"reps\": 2\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.wodup.dev/api/public/movements/complex")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"complex_details\": [\n {\n \"movement_id\": \"mv_PccWR3Th\",\n \"reps\": 1\n },\n {\n \"movement_id\": \"mv_CSO4yx74\",\n \"reps\": 2\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wodup.dev/api/public/movements/complex")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"complex_details\": [\n {\n \"movement_id\": \"mv_PccWR3Th\",\n \"reps\": 1\n },\n {\n \"movement_id\": \"mv_CSO4yx74\",\n \"reps\": 2\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"complex_details": [
{
"movement_id": "mv_PccWR3Th",
"reps": 1
},
{
"movement_id": "mv_CSO4yx74",
"reps": 2
}
],
"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_abcd1234",
"name": "1 Deadlift + 2 Cleans",
"source": "wodup",
"video": null
}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
Body
Create complex movement params
POST body for creating a complex movement
Movements in this complex
Show child attributes
Show child attributes
Response
Create complex movement response
Movement object
Movements in this complex
Show child attributes
Show child attributes
Movement instructions / description
Does this movement involve calories. E.g. Row
Does this movement involve distance. E.g. Row
Does this movement involve duration. E.g. Row or Weighted Plank Hold
Does this movement involve height. E.g. Box Jumps
Does this movement involve load. E.g. Back Squat or Weighted Plank Hold
Does this movement involve power. E.g. Row
Does this movement involve reps. E.g. Push-Up or Back Squat
Movement ID
Movement name
Whether this movement is from the global WodUp library or a custom movement
wodup, custom Show child attributes
Show child attributes