Create a virtual server.
curl -X 'POST'
-H "X-Subsystem-User: [[apiKey]]"
\
-H "X-Subsystem-Password: [[apiKey]]"
\
-H "X-Api-Key: [[apiKey]]"
\
-H "Authorization: Basic [[basicHash]]"
\
-H
'Accept: application/json'
-H
'Content-Type: application/json'
'https://172.27.146.40:8444/v9/storage/virtual-servers'
-d
''
import http.client
conn = http.client.HTTPSConnection("172.27.146.40:8444")
payload = "{\"ipAddress\":\"10.1.2.3\",\"name\":\"Name2\",\"netmask\":\"18\",\"nodeId\":\"1\",\"port\":\"ag1\"}"
headers = {
'Authorization': "Basic REPLACE_BASIC_AUTH",
'content-type': "application/json"
}
conn.request("POST", "/v9/storage/virtual-servers", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://172.27.146.40:8444/v9/storage/virtual-servers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic REPLACE_BASIC_AUTH'
request["content-type"] = 'application/json'
request.body = "{\"ipAddress\":\"10.1.2.3\",\"name\":\"Name2\",\"netmask\":\"18\",\"nodeId\":\"1\",\"port\":\"ag1\"}"
response = http.request(request)
puts response.read_bodyconst data = JSON.stringify({
"ipAddress": "10.1.2.3",
"name": "Name2",
"netmask": "18",
"nodeId": "1",
"port": "ag1"
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://172.27.146.40:8444/v9/storage/virtual-servers");
xhr.setRequestHeader("Authorization", "Basic REPLACE_BASIC_AUTH");
xhr.setRequestHeader("content-type", "application/json");
xhr.send(data);HttpResponse<String> response = Unirest.post("https://172.27.146.40:8444/v9/storage/virtual-servers")
.header("Authorization", "Basic REPLACE_BASIC_AUTH")
.header("content-type", "application/json")
.body("{\"ipAddress\":\"10.1.2.3\",\"name\":\"Name2\",\"netmask\":\"18\",\"nodeId\":\"1\",\"port\":\"ag1\"}")
.asString();import Foundation
let headers = [
"Authorization": "Basic REPLACE_BASIC_AUTH",
"content-type": "application/json"
]
let parameters = [
"ipAddress": "10.1.2.3",
"name": "Name2",
"netmask": "18",
"nodeId": "1",
"port": "ag1"
] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "https://172.27.146.40:8444/v9/storage/virtual-servers")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "8444",
CURLOPT_URL => "https://172.27.146.40:8444/v9/storage/virtual-servers",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"ipAddress\":\"10.1.2.3\",\"name\":\"Name2\",\"netmask\":\"18\",\"nodeId\":\"1\",\"port\":\"ag1\"}",
CURLOPT_HTTPHEADER => [
"Authorization: Basic REPLACE_BASIC_AUTH",
"content-type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "https://172.27.146.40:8444/v9/storage/virtual-servers");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Basic REPLACE_BASIC_AUTH");
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"ipAddress\":\"10.1.2.3\",\"name\":\"Name2\",\"netmask\":\"18\",\"nodeId\":\"1\",\"port\":\"ag1\"}");
CURLcode ret = curl_easy_perform(hnd);var client = new RestClient("https://172.27.146.40:8444/v9/storage/virtual-servers");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Basic REPLACE_BASIC_AUTH");
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"ipAddress\":\"10.1.2.3\",\"name\":\"Name2\",\"netmask\":\"18\",\"nodeId\":\"1\",\"port\":\"ag1\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);ipAddressstringIP address - generally IPv4 and IPv6 are supported in most cases
IP address - generally IPv4 and IPv6 are supported in most cases
"10.1.2.3"namestringName to associate with the item
Name to associate with the item
"Name2"netmaskobjectNetmask specified as either x.x.x.x for an IPv4 address or can be provided as a prefix length which would be valid for both IPv4 or IPv6 addresses
Netmask specified as either x.x.x.x for an IPv4 address or can be provided as a prefix length which would be valid for both IPv4 or IPv6 addresses
integerNetmask specified as either x.x.x.x for an IPv4 address or can be provided as a prefix length which would be valid for both IPv4 or IPv6 addresses
Netmask specified as either x.x.x.x for an IPv4 address or can be provided as a prefix length which would be valid for both IPv4 or IPv6 addresses
"18" stringNetmask specified as either x.x.x.x for an IPv4 address or can be provided as a prefix length which would be valid for both IPv4 or IPv6 addresses
Netmask specified as either x.x.x.x for an IPv4 address or can be provided as a prefix length which would be valid for both IPv4 or IPv6 addresses
"18"nodeIdobjectEither a node object ID or a cluster node ID
Either a node object ID or a cluster node ID
integerEither a node object ID or a cluster node ID
Either a node object ID or a cluster node ID
"1" stringEither a node object ID or a cluster node ID
Either a node object ID or a cluster node ID
"1"portstringName or object ID of an aggregate port or a VLAN object ID to assign the IP address to
Name or object ID of an aggregate port or a VLAN object ID to assign the IP address to
"ag1"{
"ipAddress": "10.1.2.3",
"name": "Name2",
"netmask": "18",
"nodeId": "1",
"port": "ag1"
}