/cloud/ssh/user/add


POST https://api.sitehost.nz/1.2/cloud/ssh/user/add.json

Creates a new SSH user.

Form Parameters

ParameterTypeRequiredDescription
client_idintegerYesThe ID for the client that the SSH user will belong to.Example: 1
server_namestringYesThe server to create the SSH user on.Example: ch-servername
usernamestringYesThe username for the new SSH user.Example: sshuser
passwordstringYesThe password for the new SSH user.Example: password
containers[0]stringYesThe list of containers to link the new SSH user to. This parameter accepts one or more values in the format of containers[0]=x, containers[1]=y.Example: example.nz
ssh_keys[0]stringA list of IDs for SSH keys to assign to the user. This parameter accepts one or more values in the format of ssh_keys[0]=23, ssh_keys[1]=25.Example: 23
read_only_configintegerSpecifies whether to make the configuration files read-only for the user. 0 for No and 1 for YesExample: 0

Code Samples

JavaScript PHP Rails Python
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("POST", "https://api.sitehost.nz/1.2/cloud/ssh/user/add.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("password", "password");
data.append("containers[0]", "example.nz");
data.append("ssh_keys[0]", "23");
data.append("read_only_config", "0");

xmlHttp.send(data);

var response = xmlHttp.responseText;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.sitehost.nz/1.2/cloud/ssh/user/add.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',
'password' => 'password',
'containers[0]' => 'example.nz',
'ssh_keys[0]' => '23',
'read_only_config' => 0,
);
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.2/cloud/ssh/user/add.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",
"password" => "password",
"containers[0]" => "example.nz",
"ssh_keys[0]" => "23",
"read_only_config" => 0,
}
request.set_form_data(body)

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

uri = 'https://api.sitehost.nz/1.2/cloud/ssh/user/add.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['password'] = 'password'
body['containers[0]'] = 'example.nz'
body['ssh_keys[0]'] = '23'
body['read_only_config'] = 0

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

Response

200:

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