/cloud/ssh/user/update


POST https://api.sitehost.nz/1.3/cloud/ssh/user/update.json

Updates an existing SSH user.

Form Parameters

ParameterTypeRequiredDescription
client_idintegerYesThe ID for the client that the SSH user belongs to.Example: 1
server_namestringYesThe server where the SSH user resides.Example: ch-servername
usernamestringYesThe username of the SSH user to update.Example: sshuser
params[password]stringAn updated password for the user.Example: new_password
params[containers][0]stringAn updated list of containers to link the user to. This parameter accepts one or more values in the format of params[containers][0]=x, params[containers][1]=y.Example: newcontainer.nz
params[volumes][0]stringAn updated list of volumes to link the user to. This parameter accepts one or more values in the format of params[volumes][]=x, params[volumes][]=y.Example: new-volume
params[ssh_keys][0]stringAn updated list of IDs for SSH keys to assign to the user. This parameter accepts one or more values in the format of ssh_keys[]=23, ssh_keys[]=25.Example: 23
params[read_only_config]integerAn updated read-only config option for the user. 0 for No and 1 for YesExample: 1

Code Samples

JavaScript PHP Rails Python
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("POST", "https://api.sitehost.nz/1.3/cloud/ssh/user/update.json", false);

var data = new FormData();
data.append("apikey", "your_key_here");
data.append("client_id", "1");
data.append("server_name", "ch-servername");
data.append("username", "sshuser");
data.append("params[password]", "new_password");
data.append("params[containers][0]", "newcontainer.nz");
data.append("params[volumes][0]", "new-volume");
data.append("params[ssh_keys][0]", "23");
data.append("params[read_only_config]", "1");

xmlHttp.send(data);

var response = xmlHttp.responseText;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.sitehost.nz/1.3/cloud/ssh/user/update.json");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$body = array(
'apikey' => 'your_key_here',
'client_id' => 1,
'server_name' => 'ch-servername',
'username' => 'sshuser',
'params[password]' => 'new_password',
'params[containers][0]' => 'newcontainer.nz',
'params[volumes][0]' => 'new-volume',
'params[ssh_keys][0]' => '23',
'params[read_only_config]' => 1,
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
require 'net/http'
require 'uri'

uri = URI.parse("https://api.sitehost.nz/1.3/cloud/ssh/user/update.json")
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Post.new(uri.request_uri)

body = {"apikey" => "your_key_here",
"client_id" => 1,
"server_name" => "ch-servername",
"username" => "sshuser",
"params[password]" => "new_password",
"params[containers][0]" => "newcontainer.nz",
"params[volumes][0]" => "new-volume",
"params[ssh_keys][0]" => "23",
"params[read_only_config]" => 1,
}
request.set_form_data(body)

response = http.request(request)
import requests
from collections import OrderedDict

uri = 'https://api.sitehost.nz/1.3/cloud/ssh/user/update.json'

# We need ordered dictionary because parameters have to be in the right order.
# Refer to Developer Notes for more information.
body = OrderedDict()

body['apikey'] = 'your_key_here'
body['client_id'] = 1
body['server_name'] = 'ch-servername'
body['username'] = 'sshuser'
body['params[password]'] = 'new_password'
body['params[containers][0]'] = 'newcontainer.nz'
body['params[volumes][0]'] = 'new-volume'
body['params[ssh_keys][0]'] = '23'
body['params[read_only_config]'] = 1

response = requests.post(uri, data=body)

Response

200:

application/json
{
  "return": {
    "job_id": "3433562"
  },
  "msg": "Successful",
  "status": true
}