Read Joint Positions
curl --request POST \
--url https://api.example.com/joints/read \
--header 'Content-Type: application/json' \
--data '
{
"joints_ids": [
123
],
"source": "robot",
"unit": "rad"
}
'import requests
url = "https://api.example.com/joints/read"
payload = {
"joints_ids": [123],
"source": "robot",
"unit": "rad"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({joints_ids: [123], source: 'robot', unit: 'rad'})
};
fetch('https://api.example.com/joints/read', 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.example.com/joints/read",
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([
'joints_ids' => [
123
],
'source' => 'robot',
'unit' => 'rad'
]),
CURLOPT_HTTPHEADER => [
"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.example.com/joints/read"
payload := strings.NewReader("{\n \"joints_ids\": [\n 123\n ],\n \"source\": \"robot\",\n \"unit\": \"rad\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.example.com/joints/read")
.header("Content-Type", "application/json")
.body("{\n \"joints_ids\": [\n 123\n ],\n \"source\": \"robot\",\n \"unit\": \"rad\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/joints/read")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"joints_ids\": [\n 123\n ],\n \"source\": \"robot\",\n \"unit\": \"rad\"\n}"
response = http.request(request)
puts response.read_body{
"angles": [
123
],
"unit": "rad"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Control
Read Joint Positions
Read the current positions of the robot’s joints in radians and motor units.
POST
/
joints
/
read
Read Joint Positions
curl --request POST \
--url https://api.example.com/joints/read \
--header 'Content-Type: application/json' \
--data '
{
"joints_ids": [
123
],
"source": "robot",
"unit": "rad"
}
'import requests
url = "https://api.example.com/joints/read"
payload = {
"joints_ids": [123],
"source": "robot",
"unit": "rad"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({joints_ids: [123], source: 'robot', unit: 'rad'})
};
fetch('https://api.example.com/joints/read', 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.example.com/joints/read",
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([
'joints_ids' => [
123
],
'source' => 'robot',
'unit' => 'rad'
]),
CURLOPT_HTTPHEADER => [
"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.example.com/joints/read"
payload := strings.NewReader("{\n \"joints_ids\": [\n 123\n ],\n \"source\": \"robot\",\n \"unit\": \"rad\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.example.com/joints/read")
.header("Content-Type", "application/json")
.body("{\n \"joints_ids\": [\n 123\n ],\n \"source\": \"robot\",\n \"unit\": \"rad\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/joints/read")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"joints_ids\": [\n 123\n ],\n \"source\": \"robot\",\n \"unit\": \"rad\"\n}"
response = http.request(request)
puts response.read_body{
"angles": [
123
],
"unit": "rad"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Query Parameters
Body
application/json
Request to read the joints of the robot.
If set, only read the joints with these ids. If None, read all joints.
Source of the joint angles. 'sim' means the angles are read from the simulation, 'robot' means the angles are read from the hardware.
Available options:
sim, robot The unit of the angles. Defaults to radian.
Available options:
rad, motor_units, degrees Response
Successful Response
Response to read the joints of the robot.
Was this page helpful?