curl --request PUT \
--url https://console.advinservers.com/api/v1/client/servers/{server}/settings/icon \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"icon_url": "https://img.icons8.com/color/48/linux.png"
}
'import requests
url = "https://console.advinservers.com/api/v1/client/servers/{server}/settings/icon"
payload = { "icon_url": "https://img.icons8.com/color/48/linux.png" }
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({icon_url: 'https://img.icons8.com/color/48/linux.png'})
};
fetch('https://console.advinservers.com/api/v1/client/servers/{server}/settings/icon', 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/icon",
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([
'icon_url' => 'https://img.icons8.com/color/48/linux.png'
]),
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/icon"
payload := strings.NewReader("{\n \"icon_url\": \"https://img.icons8.com/color/48/linux.png\"\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/icon")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"icon_url\": \"https://img.icons8.com/color/48/linux.png\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://console.advinservers.com/api/v1/client/servers/{server}/settings/icon")
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 \"icon_url\": \"https://img.icons8.com/color/48/linux.png\"\n}"
response = http.request(request)
puts response.read_body{
"custom_icon_url": "https://img.icons8.com/color/48/linux.png",
"template_icon_url": "https://img.icons8.com/color/48/linux.png"
}{
"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 icon
Overview
Sets the server icon. Send icon_url from the panel’s bundled logos, or null to restore the operating system image’s default icon. Other URLs are rejected. This changes only the panel display.
Permissions
Requires the server.update (Change server settings) 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/icon \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"icon_url": "https://img.icons8.com/color/48/linux.png"
}
'import requests
url = "https://console.advinservers.com/api/v1/client/servers/{server}/settings/icon"
payload = { "icon_url": "https://img.icons8.com/color/48/linux.png" }
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({icon_url: 'https://img.icons8.com/color/48/linux.png'})
};
fetch('https://console.advinservers.com/api/v1/client/servers/{server}/settings/icon', 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/icon",
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([
'icon_url' => 'https://img.icons8.com/color/48/linux.png'
]),
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/icon"
payload := strings.NewReader("{\n \"icon_url\": \"https://img.icons8.com/color/48/linux.png\"\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/icon")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"icon_url\": \"https://img.icons8.com/color/48/linux.png\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://console.advinservers.com/api/v1/client/servers/{server}/settings/icon")
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 \"icon_url\": \"https://img.icons8.com/color/48/linux.png\"\n}"
response = http.request(request)
puts response.read_body{
"custom_icon_url": "https://img.icons8.com/color/48/linux.png",
"template_icon_url": "https://img.icons8.com/color/48/linux.png"
}{
"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.
The value of icon_url.
https://img.icons8.com/color/48/ubuntu.png, https://img.icons8.com/color/48/debian.png, https://img.icons8.com/fluency/48/fedora.png, https://img.icons8.com/color/48/arch-linux.png, https://img.icons8.com/color/48/centos.png, https://img.icons8.com/color/48/red-hat.png, https://img.icons8.com/color/48/suse.png, https://img.icons8.com/color/48/kali-linux.png, https://img.icons8.com/color/48/free-bsd.png, https://img.icons8.com/color/48/windows-10.png, https://img.icons8.com/color/48/linux.png, null Response
The record, as a JSON object. There is no envelope.
The logo shown beside a server, answered after the icon form has changed it.
The customer's own override, or null when they have not made one.
"https://img.icons8.com/color/48/linux.png"
The icon actually in force: the override, else the template's own.
"https://img.icons8.com/color/48/linux.png"