Hosts
Get a host
Requires host.access. Adds live connection state and bound sets to the summary.
GET
/
hosts
/
{id}
Get a host
curl --request GET \
--url https://custos.example.com/hosts/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://custos.example.com/hosts/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://custos.example.com/hosts/{id}', 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://custos.example.com/hosts/{id}",
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: Bearer <token>"
],
]);
$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://custos.example.com/hosts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://custos.example.com/hosts/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://custos.example.com/hosts/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"hostname": "<string>",
"ssh_endpoint": {
"address": "<string>",
"source": "<string>"
},
"accounts": [
"<string>"
],
"status": "<string>",
"connection_status": "<string>",
"agent_version": "<string>",
"desired_version": "<string>",
"enrolled_at": "2023-11-07T05:31:56Z",
"last_seen_at": "2023-11-07T05:31:56Z",
"permissions": [
"<string>"
],
"connected": true,
"encryption": true,
"sets": [
"<string>"
]
}Authorizations
An opaque access token from /login or /refresh. Tokens are checked against the database on every request, so revocation is immediate.
Path Parameters
Response
The host
Show child attributes
Show child attributes
The Unix accounts this host manages.
Whether a daemon is currently connected.
The caller's permissions on this host.
Whether the daemon's WebSocket is up right now.
Whether the host registered an X25519 key and can receive sealed sets.
⌘I
Get a host
curl --request GET \
--url https://custos.example.com/hosts/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://custos.example.com/hosts/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://custos.example.com/hosts/{id}', 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://custos.example.com/hosts/{id}",
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: Bearer <token>"
],
]);
$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://custos.example.com/hosts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://custos.example.com/hosts/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://custos.example.com/hosts/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"hostname": "<string>",
"ssh_endpoint": {
"address": "<string>",
"source": "<string>"
},
"accounts": [
"<string>"
],
"status": "<string>",
"connection_status": "<string>",
"agent_version": "<string>",
"desired_version": "<string>",
"enrolled_at": "2023-11-07T05:31:56Z",
"last_seen_at": "2023-11-07T05:31:56Z",
"permissions": [
"<string>"
],
"connected": true,
"encryption": true,
"sets": [
"<string>"
]
}