patch
/v9/storage/file-devices/management-access/snmp
Configure SNMP management access. SNMP provides read only access to various system resources.
Note: It's not possible to enable SNMPv3 while SNMPv1 or SNMPv2 are enabled. It's currently not possible to fully configure SNMPv3 via the REST API.
CLIENT REQUEST
curl -X 'PATCH'
-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/management-access/snmp'
-d
''
import http.client
conn = http.client.HTTPSConnection("172.27.146.40:8444")
payload = "{\"allowSnmpV1\":true,\"allowSnmpV2\":true,\"allowSnmpV3\":true,\"allowedCommunities\":[\"public\"],\"allowedHosts\":[\"10.20.30.40\"],\"isEnabled\":true,\"port\":161,\"restrictHosts\":true,\"sendAuthFailureTraps\":true}"
headers = {
'Authorization': "Basic REPLACE_BASIC_AUTH",
'content-type': "application/json"
}
conn.request("PATCH", "/v9/storage/file-devices/management-access/snmp", 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/management-access/snmp")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Basic REPLACE_BASIC_AUTH'
request["content-type"] = 'application/json'
request.body = "{\"allowSnmpV1\":true,\"allowSnmpV2\":true,\"allowSnmpV3\":true,\"allowedCommunities\":[\"public\"],\"allowedHosts\":[\"10.20.30.40\"],\"isEnabled\":true,\"port\":161,\"restrictHosts\":true,\"sendAuthFailureTraps\":true}"
response = http.request(request)
puts response.read_bodyconst data = JSON.stringify({
"allowSnmpV1": true,
"allowSnmpV2": true,
"allowSnmpV3": true,
"allowedCommunities": [
"public"
],
"allowedHosts": [
"10.20.30.40"
],
"isEnabled": true,
"port": 161,
"restrictHosts": true,
"sendAuthFailureTraps": true
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("PATCH", "https://172.27.146.40:8444/v9/storage/file-devices/management-access/snmp");
xhr.setRequestHeader("Authorization", "Basic REPLACE_BASIC_AUTH");
xhr.setRequestHeader("content-type", "application/json");
xhr.send(data);HttpResponse<String> response = Unirest.patch("https://172.27.146.40:8444/v9/storage/file-devices/management-access/snmp")
.header("Authorization", "Basic REPLACE_BASIC_AUTH")
.header("content-type", "application/json")
.body("{\"allowSnmpV1\":true,\"allowSnmpV2\":true,\"allowSnmpV3\":true,\"allowedCommunities\":[\"public\"],\"allowedHosts\":[\"10.20.30.40\"],\"isEnabled\":true,\"port\":161,\"restrictHosts\":true,\"sendAuthFailureTraps\":true}")
.asString();import Foundation
let headers = [
"Authorization": "Basic REPLACE_BASIC_AUTH",
"content-type": "application/json"
]
let parameters = [
"allowSnmpV1": true,
"allowSnmpV2": true,
"allowSnmpV3": true,
"allowedCommunities": ["public"],
"allowedHosts": ["10.20.30.40"],
"isEnabled": true,
"port": 161,
"restrictHosts": true,
"sendAuthFailureTraps": true
] 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/management-access/snmp")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "PATCH"
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/management-access/snmp",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => "{\"allowSnmpV1\":true,\"allowSnmpV2\":true,\"allowSnmpV3\":true,\"allowedCommunities\":[\"public\"],\"allowedHosts\":[\"10.20.30.40\"],\"isEnabled\":true,\"port\":161,\"restrictHosts\":true,\"sendAuthFailureTraps\":true}",
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, "PATCH");
curl_easy_setopt(hnd, CURLOPT_URL, "https://172.27.146.40:8444/v9/storage/file-devices/management-access/snmp");
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, "{\"allowSnmpV1\":true,\"allowSnmpV2\":true,\"allowSnmpV3\":true,\"allowedCommunities\":[\"public\"],\"allowedHosts\":[\"10.20.30.40\"],\"isEnabled\":true,\"port\":161,\"restrictHosts\":true,\"sendAuthFailureTraps\":true}");
CURLcode ret = curl_easy_perform(hnd);var client = new RestClient("https://172.27.146.40:8444/v9/storage/file-devices/management-access/snmp");
var request = new RestRequest(Method.PATCH);
request.AddHeader("Authorization", "Basic REPLACE_BASIC_AUTH");
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"allowSnmpV1\":true,\"allowSnmpV2\":true,\"allowSnmpV3\":true,\"allowedCommunities\":[\"public\"],\"allowedHosts\":[\"10.20.30.40\"],\"isEnabled\":true,\"port\":161,\"restrictHosts\":true,\"sendAuthFailureTraps\":true}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);Body parameters
application/json
allowSnmpV1booleanAllow SNMPv1 requests
Allow SNMPv1 requests
allowSnmpV2booleanAllow SNMPv2c requests
Allow SNMPv2c requests
allowSnmpV3booleanAllow SNMPv3 requests
Allow SNMPv3 requests
allowedCommunitiesarray[string]A list of allowed community string values
A list of allowed community string values
allowedHostsarray[string]A list of hosts allowed to access the specific management interface. The host values can be either IP address or valid DNS names
A list of hosts allowed to access the specific management interface. The host values can be either IP address or valid DNS names
isEnabledbooleanTrue if enabled, false for disabled
True if enabled, false for disabled
portintegerint32UDP port used to receive SNMP messages
UDP port used to receive SNMP messages
Example:
161restrictHostsbooleanTrue indicates that access is restricted to only the hosts in the allowed hosts list
True indicates that access is restricted to only the hosts in the allowed hosts list
sendAuthFailureTrapsbooleanTrue indicates that SNMP authentication failure traps should be sent to configured SNMP trap hosts
True indicates that SNMP authentication failure traps should be sent to configured SNMP trap hosts
REQUEST
{
"allowSnmpV1": false,
"allowSnmpV2": false,
"allowSnmpV3": false,
"allowedCommunities": [
"public"
],
"allowedHosts": [
"10.20.30.40"
],
"isEnabled": false,
"port": 161,
"restrictHosts": false,
"sendAuthFailureTraps": false
}Responses