post
/public_api/v1/assets/create_user_defined_ip_range/
Define an IP address range and assign a business unit (BU) or IP address tag (IPR) to that range. Note the following guidelines:
- Use the shouldReplace field to indicate whether to replace all previously applied BUs on overlapping ranges.
- Tags and notes on overlapping ranges will be deleted.
- If only startIp is supplied, the endpoint will create a range for that single IP address.
- If only endIP is supplied, the endpoint will create a range for that single IP address.
- Define the range using either the startIp and endIp OR the cidrIp range, not both. Xpanse will run the request on only one range.
Request headers
authorization
String
required
api-key
api-key
Example:
{{api-key}}
x-xdr-auth-id
String
required
api-key-id
api-key-id
Example:
{{api-key-id}}
CLIENT REQUEST
curl -X 'POST'
-H
'Accept: application/json'
-H
'Content-Type: application/json'
-H
'authorization: {{api-key}}'
-H
'x-xdr-auth-id: {{api-key-id}}'
'https://api-}/public_api/v1/assets/create_user_defined_ip_range/'
-d
''
import http.client
conn = http.client.HTTPSConnection("api-")
payload = "{\"request_data\":{\"startIp\":\"string\",\"endIp\":\"string\",\"cidrIp\":\"string\",\"buTagIds\":[\"string\"],\"iprTagIds\":[\"string\"],\"shouldReplace\":true}}"
headers = {
'authorization': "{{api-key}}",
'x-xdr-auth-id': "{{api-key-id}}",
'content-type': "application/json"
}
conn.request("POST", "%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://api-/%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/")
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"] = '{{api-key}}'
request["x-xdr-auth-id"] = '{{api-key-id}}'
request["content-type"] = 'application/json'
request.body = "{\"request_data\":{\"startIp\":\"string\",\"endIp\":\"string\",\"cidrIp\":\"string\",\"buTagIds\":[\"string\"],\"iprTagIds\":[\"string\"],\"shouldReplace\":true}}"
response = http.request(request)
puts response.read_bodyconst data = JSON.stringify({
"request_data": {
"startIp": "string",
"endIp": "string",
"cidrIp": "string",
"buTagIds": [
"string"
],
"iprTagIds": [
"string"
],
"shouldReplace": true
}
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://api-/%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/");
xhr.setRequestHeader("authorization", "{{api-key}}");
xhr.setRequestHeader("x-xdr-auth-id", "{{api-key-id}}");
xhr.setRequestHeader("content-type", "application/json");
xhr.send(data);HttpResponse<String> response = Unirest.post("https://api-/%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/")
.header("authorization", "{{api-key}}")
.header("x-xdr-auth-id", "{{api-key-id}}")
.header("content-type", "application/json")
.body("{\"request_data\":{\"startIp\":\"string\",\"endIp\":\"string\",\"cidrIp\":\"string\",\"buTagIds\":[\"string\"],\"iprTagIds\":[\"string\"],\"shouldReplace\":true}}")
.asString();import Foundation
let headers = [
"authorization": "{{api-key}}",
"x-xdr-auth-id": "{{api-key-id}}",
"content-type": "application/json"
]
let parameters = ["request_data": [
"startIp": "string",
"endIp": "string",
"cidrIp": "string",
"buTagIds": ["string"],
"iprTagIds": ["string"],
"shouldReplace": true
]] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "https://api-/%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/")! 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_URL => "https://api-/%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"request_data\":{\"startIp\":\"string\",\"endIp\":\"string\",\"cidrIp\":\"string\",\"buTagIds\":[\"string\"],\"iprTagIds\":[\"string\"],\"shouldReplace\":true}}",
CURLOPT_HTTPHEADER => [
"authorization: {{api-key}}",
"content-type: application/json",
"x-xdr-auth-id: {{api-key-id}}"
],
]);
$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://api-/%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "authorization: {{api-key}}");
headers = curl_slist_append(headers, "x-xdr-auth-id: {{api-key-id}}");
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"request_data\":{\"startIp\":\"string\",\"endIp\":\"string\",\"cidrIp\":\"string\",\"buTagIds\":[\"string\"],\"iprTagIds\":[\"string\"],\"shouldReplace\":true}}");
CURLcode ret = curl_easy_perform(hnd);var client = new RestClient("https://api-/%7B%7Bfqdn%7D%7D/public_api/v1/assets/create_user_defined_ip_range/");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization", "{{api-key}}");
request.AddHeader("x-xdr-auth-id", "{{api-key-id}}");
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"request_data\":{\"startIp\":\"string\",\"endIp\":\"string\",\"cidrIp\":\"string\",\"buTagIds\":[\"string\"],\"iprTagIds\":[\"string\"],\"shouldReplace\":true}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);Body parameters
application/json
request_dataobject
startIpstringFirst IP address of the range.
First IP address of the range.
endIpstringEnding IP address of the range.
Ending IP address of the range.
cidrIpstringIP range in CIDR notation.
IP range in CIDR notation.
buTagIdsarray[string]List of business unit tag IDs that will be applied to the IP range.
List of business unit tag IDs that will be applied to the IP range.
iprTagIdsarray[string]List of IP range tag IDs (IPR) that will be applied to the IP range.
List of IP range tag IDs (IPR) that will be applied to the IP range.
shouldReplacebooleanBoolean denoting whether to replace all previously applied business units on overlapping ranges.
Boolean denoting whether to replace all previously applied business units on overlapping ranges.
REQUEST
{
"request_data": {
"startIp": "x.x.x.24",
"endIp": "x.x.x.25",
"cidrIp": "null",
"buTagIds": [
"BU:af500527-9f45-4bd8-8eb5-e161d18a47b3"
],
"iprTagIds": [
"IPR:cc1d6312306d48c79fb3023b93d69923"
],
"shouldReplace": false
}
}Responses