/cloud/stack/environment/update


POST https://api.sitehost.nz/1.2/cloud/stack/environment/update.json

Update environment variables for a container on the stack.
This only works for environment variables stored in [container name].env

Form Parameters

ParameterTypeRequiredDescription
client_idintegerYesThe ID for the client that the stack belongs to.Example: 1
serverstringYesThe server where the stack resides.Example: ch-servername
projectstringYesThe name of the stack.Example: cc567a321b123c
servicestringYesThe name of the service within the stack, that you wish to update the environment variables for.
For most stacks which have only one service, this is the same as the project/stack name.Example: cc567a321b123c
variables[0][name]stringYesA list of the keys/names of the variables you wish to update.
This parameter accepts one or more values in the format of variables[0][name]=VAR_NAME1, variables[1][name]=VAR_NAME2.Example: VAR_NAME1
variables[0][content]stringA list of the content/values of the variables you wish to update.
This parameter accepts one or more values in the format of variables[0][content]=value1, variables[1][content]=value2. You can delete a value by passing its key but not its content.Example: value1

Code Samples

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

var data = new FormData();
data.append("apikey", "your_key_here");
data.append("client_id", "1");
data.append("server", "ch-servername");
data.append("project", "cc567a321b123c");
data.append("service", "cc567a321b123c");
data.append("variables[0][name]", "VAR_NAME1");
data.append("variables[0][content]", "value1");

xmlHttp.send(data);

var response = xmlHttp.responseText;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.sitehost.nz/1.2/cloud/stack/environment/update.json");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$body = array(
'apikey' => 'your_key_here',
'client_id' => 1,
'server' => 'ch-servername',
'project' => 'cc567a321b123c',
'service' => 'cc567a321b123c',
'variables[0][name]' => 'VAR_NAME1',
'variables[0][content]' => 'value1',
);
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/stack/environment/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" => "ch-servername",
"project" => "cc567a321b123c",
"service" => "cc567a321b123c",
"variables[0][name]" => "VAR_NAME1",
"variables[0][content]" => "value1",
}
request.set_form_data(body)

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

uri = 'https://api.sitehost.nz/1.2/cloud/stack/environment/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'] = 'ch-servername'
body['project'] = 'cc567a321b123c'
body['service'] = 'cc567a321b123c'
body['variables[0][name]'] = 'VAR_NAME1'
body['variables[0][content]'] = 'value1'

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

Response

200:

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