curl --request GET \
--url https://api.orbital-systems.com/client/showers/{id}/status \
--header 'x-api-key: <api-key>'import requests
url = "https://api.orbital-systems.com/client/showers/{id}/status"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.orbital-systems.com/client/showers/{id}/status', 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.orbital-systems.com/client/showers/{id}/status",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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.orbital-systems.com/client/showers/{id}/status"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
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.orbital-systems.com/client/showers/{id}/status")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orbital-systems.com/client/showers/{id}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"online": true,
"state": "showering",
"temperature_setpoint": 38,
"flow_setpoint": 9
}{
"message": "Forbidden",
"statusCode": 403,
"name": "ForbiddenError"
}{
"message": "Shower not found",
"statusCode": 404,
"name": "NotFoundError"
}{
"message": "Internal server error"
}Get the live status of a shower
Asks the shower for its status and waits up to 5 seconds for it to answer; online is false if it doesn’t, or right away if the shower is known to be offline. state is what the shower is doing, e.g. ready, starting, showering, paused or hibernating. temperature_setpoint is in °C.
curl --request GET \
--url https://api.orbital-systems.com/client/showers/{id}/status \
--header 'x-api-key: <api-key>'import requests
url = "https://api.orbital-systems.com/client/showers/{id}/status"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.orbital-systems.com/client/showers/{id}/status', 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.orbital-systems.com/client/showers/{id}/status",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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.orbital-systems.com/client/showers/{id}/status"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
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.orbital-systems.com/client/showers/{id}/status")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.orbital-systems.com/client/showers/{id}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"online": true,
"state": "showering",
"temperature_setpoint": 38,
"flow_setpoint": 9
}{
"message": "Forbidden",
"statusCode": 403,
"name": "ForbiddenError"
}{
"message": "Shower not found",
"statusCode": 404,
"name": "NotFoundError"
}{
"message": "Internal server error"
}Authorizations
Send your API key in the x-api-key header of every request. The key belongs to one Orbital account, and requests act as that account: they see and control only the devices it owns or has been given access to. A missing or unknown key gets 403 with { "message": "Forbidden" }.
Path Parameters
The unique identifier for the shower
Response
Request successful
Whether the shower answered within 5 seconds.
true
What the shower is doing, such as ready, starting, showering, paused, cleaning or hibernating. null when it didn’t answer.
"showering"
Current temperature setpoint, in °C. null when the shower didn’t answer.
38
Current flow setpoint, in L/min. null when the shower didn’t answer.
9
Was this page helpful?