post
/v9/storage/file-devices/network-routes
Create a new network route, which will normally be applied to all nodes within the cluster. If per-cluster node routing is enabled the optional nodeId parameter should be supplied to indicate which node the route should be added to.
CLIENT REQUEST
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/file-devices/network-routes'
-d
''
import http.client
conn = http.client.HTTPSConnection("172.27.146.40:8444")
payload = "{\"destination\":\"10.1.2.3\",\"gateway\":\"10.0.0.1\",\"mtu\":0,\"nodeId\":\"1\",\"prefixLength\":24,\"type\":\"ROUTE_TYPE_NETWORK\"}"
headers = {
'Authorization': "Basic REPLACE_BASIC_AUTH",
'content-type': "application/json"
}
conn.request("POST", "/v9/storage/file-devices/network-routes", 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/file-devices/network-routes")
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 = "{\"destination\":\"10.1.2.3\",\"gateway\":\"10.0.0.1\",\"mtu\":0,\"nodeId\":\"1\",\"prefixLength\":24,\"type\":\"ROUTE_TYPE_NETWORK\"}"
response = http.request(request)
puts response.read_bodyconst data = JSON.stringify({
"destination": "10.1.2.3",
"gateway": "10.0.0.1",
"mtu": 0,
"nodeId": "1",
"prefixLength": 24,
"type": "ROUTE_TYPE_NETWORK"
});
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/file-devices/network-routes");
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/file-devices/network-routes")
.header("Authorization", "Basic REPLACE_BASIC_AUTH")
.header("content-type", "application/json")
.body("{\"destination\":\"10.1.2.3\",\"gateway\":\"10.0.0.1\",\"mtu\":0,\"nodeId\":\"1\",\"prefixLength\":24,\"type\":\"ROUTE_TYPE_NETWORK\"}")
.asString();import Foundation
let headers = [
"Authorization": "Basic REPLACE_BASIC_AUTH",
"content-type": "application/json"
]
let parameters = [
"destination": "10.1.2.3",
"gateway": "10.0.0.1",
"mtu": 0,
"nodeId": "1",
"prefixLength": 24,
"type": "ROUTE_TYPE_NETWORK"
] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "https://172.27.146.40:8444/v9/storage/file-devices/network-routes")! 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/file-devices/network-routes",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"destination\":\"10.1.2.3\",\"gateway\":\"10.0.0.1\",\"mtu\":0,\"nodeId\":\"1\",\"prefixLength\":24,\"type\":\"ROUTE_TYPE_NETWORK\"}",
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/file-devices/network-routes");
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, "{\"destination\":\"10.1.2.3\",\"gateway\":\"10.0.0.1\",\"mtu\":0,\"nodeId\":\"1\",\"prefixLength\":24,\"type\":\"ROUTE_TYPE_NETWORK\"}");
CURLcode ret = curl_easy_perform(hnd);var client = new RestClient("https://172.27.146.40:8444/v9/storage/file-devices/network-routes");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Basic REPLACE_BASIC_AUTH");
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"destination\":\"10.1.2.3\",\"gateway\":\"10.0.0.1\",\"mtu\":0,\"nodeId\":\"1\",\"prefixLength\":24,\"type\":\"ROUTE_TYPE_NETWORK\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);Body parameters
required
destinationstring
gatewaystring
mtuintegerint32
nodeIdobject
integer
string
prefixLengthintegerint32
typestring (Enum)
application/json
destinationstringDestination IP address of the route
Destination IP address of the route
Example:
"10.1.2.3"gatewaystringGateway IP address
Gateway IP address
Example:
"10.0.0.1"mtuintegerint32Maximum Transmission Unit (MTU) of the route if it differs from the default value. The minimum value differs for IPv4 and IPv6 routes, but the maximum value is 9600
Maximum Transmission Unit (MTU) of the route if it differs from the default value. The minimum value differs for IPv4 and IPv6 routes, but the maximum value is 9600
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
Example:
"1" stringEither a node object ID or a cluster node ID
Either a node object ID or a cluster node ID
Example:
"1"prefixLengthintegerint32Length specifying how many top bits of the destination address are significant to the network
Length specifying how many top bits of the destination address are significant to the network
Example:
24typestring (Enum)Type of route
Type of route
Allowed values:"ROUTE_TYPE_NETWORK""ROUTE_TYPE_HOST""ROUTE_TYPE_GATEWAY"
REQUEST
{
"destination": "10.1.2.3",
"gateway": "10.0.0.1",
"mtu": 0,
"nodeId": "1",
"prefixLength": 24,
"type": "ROUTE_TYPE_NETWORK"
}Responses