Promoting an existing secondary KMIP server to primary

Virtual Storage Platform One Object Management API Reference Guide

Version
3.3.x
File Size
137 KB
Audience
anonymous
Part Number
MK-24VSP1OB002-04
ft:lastEdition
2026-05-14
post /v1/kmip/promote_server

Promotes a configured secondary external KMIP server to the primary server. Any primary server is demoted to a secondary server.

Request headers
X-XSRF-TOKEN String required

XSRF token header for CSRF security. Can be obtained as the value of a cookie by performing a GET on /csrf.

Example: xXSRFTOKEN_example
Cookie String required

XSRF token header for CSRF security. Can be obtained as the value of a cookie by performing a GET on /csrf.

Example: cookie_example
CLIENT REQUEST
curl -X 'POST'
-H 'Accept: application/json'
-H 'X-XSRF-TOKEN: xXSRFTOKEN_example' -H 'Cookie: cookie_example'
'http://localhost/v1/kmip/promote_server'
-d '{ "name" : "name" }'
import http.client conn = http.client.HTTPConnection("undefinedundefined") headers = { 'X-XSRF-TOKEN': "SOME_STRING_VALUE", 'Cookie': "SOME_STRING_VALUE" } conn.request("POST", "/v1/kmip/promote_server", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
require 'uri' require 'net/http' url = URI("http://undefinedundefined/v1/kmip/promote_server") http = Net::HTTP.new(url.host, url.port) request = Net::HTTP::Post.new(url) request["X-XSRF-TOKEN"] = 'SOME_STRING_VALUE' request["Cookie"] = 'SOME_STRING_VALUE' response = http.request(request) puts response.read_body
const data = null; const xhr = new XMLHttpRequest(); xhr.withCredentials = true; xhr.addEventListener("readystatechange", function () { if (this.readyState === this.DONE) { console.log(this.responseText); } }); xhr.open("POST", "http://undefinedundefined/v1/kmip/promote_server"); xhr.setRequestHeader("X-XSRF-TOKEN", "SOME_STRING_VALUE"); xhr.setRequestHeader("Cookie", "SOME_STRING_VALUE"); xhr.send(data);
HttpResponse<String> response = Unirest.post("http://undefinedundefined/v1/kmip/promote_server") .header("X-XSRF-TOKEN", "SOME_STRING_VALUE") .header("Cookie", "SOME_STRING_VALUE") .asString();
import Foundation let headers = [ "X-XSRF-TOKEN": "SOME_STRING_VALUE", "Cookie": "SOME_STRING_VALUE" ] let request = NSMutableURLRequest(url: NSURL(string: "http://undefinedundefined/v1/kmip/promote_server")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "POST" request.allHTTPHeaderFields = headers 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 => "http://undefinedundefined/v1/kmip/promote_server", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_HTTPHEADER => [ "Cookie: SOME_STRING_VALUE", "X-XSRF-TOKEN: SOME_STRING_VALUE" ], ]); $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, "http://undefinedundefined/v1/kmip/promote_server"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "X-XSRF-TOKEN: SOME_STRING_VALUE"); headers = curl_slist_append(headers, "Cookie: SOME_STRING_VALUE"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
var client = new RestClient("http://undefinedundefined/v1/kmip/promote_server"); var request = new RestRequest(Method.POST); request.AddHeader("X-XSRF-TOKEN", "SOME_STRING_VALUE"); request.AddHeader("Cookie", "SOME_STRING_VALUE"); IRestResponse response = client.Execute(request);
Body parameters
required
*/*
namestringrequired

User friendly name of the KMIP server

REQUEST
[*/* content]
Responses

successful operation

Body
application/json
namestringrequired

User friendly name of KMIP server

hoststringrequired

Hostname or IP

portintegerrequired
isPrimarybooleanrequired

Marks KMIP server as primary (read/write permissions, as opposed to read-only for secondary severs)

isTLS12Enabledbooleanrequired

Allows/disallows Tls1.2.

kmipProtocolstring (Enum)required

Indicates which KMIP protocol to use (1.3, 1.4, 2.0, 2.1, or 3.0). Defaults to V1_4.

Default:"V1_4"
Allowed values:"V1_3""V1_4""V2_0""V2_1""V3_0"
httpsCiphersstringrequired

String of comma separated cyphers. For example, "TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,SSL_RSA_WITH_3DES_EDE_CBC_SHA,TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"

isOnlinebooleanrequired

Indicates whether or not this external KMIP server is currently reachable by VSP One Object.

uuidstringrequired
RESPONSE
{ "name": "example", "host": "example", "port": 0, "isPrimary": false, "isTLS12Enabled": false, "kmipProtocol": "V1_3", "httpsCiphers": "example", "isOnline": false, "uuid": "example" }

Access was denied due to invalid credentials.

Cannot promote offline KMIP server.

No matching existing KMIP configuration.

The specified HTTP method is not allowed. Please resend the request using the POST method.

Internal error - request timed out.