curl --request PUT \
--url https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"type": "ssh_keys",
"ssh_keys": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa",
"password": null
}
'import requests
url = "https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth"
payload = {
"type": "ssh_keys",
"ssh_keys": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa",
"password": None
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
type: 'ssh_keys',
ssh_keys: 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa',
password: null
})
};
fetch('https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth', 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://console.advinservers.com/api/v1/client/servers/{server}/settings/auth",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'type' => 'ssh_keys',
'ssh_keys' => 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa',
'password' => null
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://console.advinservers.com/api/v1/client/servers/{server}/settings/auth"
payload := strings.NewReader("{\n \"type\": \"ssh_keys\",\n \"ssh_keys\": \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa\",\n \"password\": null\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"type\": \"ssh_keys\",\n \"ssh_keys\": \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa\",\n \"password\": null\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"type\": \"ssh_keys\",\n \"ssh_keys\": \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa\",\n \"password\": null\n}"
response = http.request(request)
puts response.read_body{
"message": "Unauthenticated."
}{
"message": "This API key is not allowed to do that in this team. It needs the \"snapshot.delete\" permission."
}{
"message": "Not found."
}{
"message": "The name field is required.",
"errors": {}
}{
"message": "Too Many Attempts."
}Change a server's password or SSH keys
Overview
Replaces the server password or SSH keys. Send type=password with password, or type=ssh_keys with a newline-separated ssh_keys string. An empty key string removes all keys. Password changes apply immediately when guest tools are available and are saved for the next boot otherwise. SSH key changes take effect on the next boot.
Permissions
Requires the server.credentials (Change server passwords and SSH keys) permission for the selected team. Resources outside that team return 404.
curl --request PUT \
--url https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"type": "ssh_keys",
"ssh_keys": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa",
"password": null
}
'import requests
url = "https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth"
payload = {
"type": "ssh_keys",
"ssh_keys": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa",
"password": None
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
type: 'ssh_keys',
ssh_keys: 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa',
password: null
})
};
fetch('https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth', 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://console.advinservers.com/api/v1/client/servers/{server}/settings/auth",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'type' => 'ssh_keys',
'ssh_keys' => 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa',
'password' => null
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://console.advinservers.com/api/v1/client/servers/{server}/settings/auth"
payload := strings.NewReader("{\n \"type\": \"ssh_keys\",\n \"ssh_keys\": \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa\",\n \"password\": null\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"type\": \"ssh_keys\",\n \"ssh_keys\": \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa\",\n \"password\": null\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://console.advinservers.com/api/v1/client/servers/{server}/settings/auth")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"type\": \"ssh_keys\",\n \"ssh_keys\": \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPDNr9XsCkWrb0LklstkNHufnF8gAVKsPIFsZeFdoZEO gordon@bmrf-workstation\\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRIUDS8hbc8Q60bJVcyNORoaC7cKZgQpwaXkS8Tgwy8 deploy@ci.blackmesa\",\n \"password\": null\n}"
response = http.request(request)
puts response.read_body{
"message": "Unauthenticated."
}{
"message": "This API key is not allowed to do that in this team. It needs the \"snapshot.delete\" permission."
}{
"message": "Not found."
}{
"message": "The name field is required.",
"errors": {}
}{
"message": "Too Many Attempts."
}Authorizations
Your API key, sent as a bearer token. Create one in the control panel under API Keys, give it only the permissions the integration needs, and copy it when it is created. It cannot be shown again. Each key is restricted to one owned team. The key determines the team for every request.
Path Parameters
The server UUID
"ecc6f4f1"
Body
Send a JSON object containing the fields below. Required fields are marked in the schema.
Response
Request accepted. No response body.