API Guide

Table Of Contents
def get_cluster_details(url, session_token):
head = {'Authorization': 'Bearer ' + session_token}
response = requests.get(url, verify=False, headers=head)
if (response.status_code == 200):
return response
else:
print(response.status_code)
print("Get cluster details failed")
def set_operational_context(omivv_ip, vcenter_id, session_token, vcenter_username,
vcenter_domain, vcenter_password):
base_url = "https://" + omivv_ip + "/Spectre/api/rest/v1/Services/ConsoleService/
OperationalContext"
postBodyData = {"consoleId": vcenter_id,
"consoleUserCredential": {"username": vcenter_username, "domain":
vcenter_domain,
"password": vcenter_password}}
head = {'Authorization': 'Bearer ' + session_token}
jsonReponse = requests.post(base_url, json=postBodyData, verify=False, headers=head)
if (jsonReponse.status_code != 204):
print("setOperationalContext failed.")
```
Retrieve cluster ID using cluster name
Sample code to retrieve the cluster ID:
```json
def get_cluster_id_by_cluster_name(bearer_token, ip_address, vcenter_ip, cluster_name):
"""Authenticate with OMIVV and enumerate reports."""
try:
""" Get all registered vcenter """
registered_vcenter_list = get_registered_vcenter_list(ip_address, bearer_token)
if(registered_vcenter_list is None):
print("No vcenter is regsitered with this OMIVV")
return
else:
vcenter_id = None;
registered_vc_array = json.loads(registered_vcenter_list)
for vc in registered_vc_array:
if vcenter_ip.upper() == vc['ip'].upper():
vcenter_id = vc['id']
vcenter_tree_response = get_vcenter_tree_from_omivv(ip_address,vcenter_id,
bearer_token)
found = False
if vcenter_tree_response is not None:
vcenter_datacenters = json.loads(vcenter_tree_response)
vcenter_datacenters_List = vcenter_datacenters['datacenters']
for vcenter_datacenter in vcenter_datacenters_List:
cluster_list = vcenter_datacenter["clusters"]
if cluster_list is not None:
for cluster in cluster_list:
if cluster['name'] == cluster_name:
print("Cluster name: " + cluster_name + ", Cluster
id: " + cluster['id'])
found = True
break
if found:
break
if found == False:
print("Cluster " + cluster_name + " not found.")
""" Log out from OMIVV """
logout(ip_address, bearer_token)
except:
print("get_vcenter_tree: Unexpected error:", sys.exc_info()[0])
def get_registered_vcenter_list(omivvIP,bearerToken):
"""Get all registered vcenter with this OMIVV"""
url ="https://" + omivvIP + "/Spectre/api/rest/v1/Services/ConsoleService/Consoles"
head = {'Authorization': 'Bearer ' + bearerToken}
response = requests.get(url, verify=False, headers=head)
if(response.status_code == 200):
Use cases
15