APIs for managing data centers

The REST APIs under the datacenter category provide information about the clusters, nodes, aggregates, volumes, LUNs, fileshares, namespaces, and other elements in your data center. These APIs are available for querying, adding, deleting, or modifying the configuration in your data center.

Most of these APIs are GET calls that provide cross-cluster aggregation with filtering, sorting and pagination support. On running these APIs, they return data from the database. Therefore, the newly created-objects need to be discovered by the next acquisition cycle for appearing in the response.

If you want to query the details of a specific object, you need to enter the unique ID of that object to view its details. For example,
curl -X GET "https://<hostname>/api/datacenter/cluster/clusters/4c6bf721-2e3f-11e9-a3e2-00a0985badbb" -H "accept: application/json" -H "Authorization: Basic <Base64EncodedCredentials>"
Note: The CURL commands, examples, requests, and responses to the APIs, are available on your Swagger API interface. You can filter and order the results by specific parameters as indicated on Swagger. These APIs enable you to filter the results for specific storage objects, such as cluster, volume, or storage VM.
HTTP verb Path Description
GET

/datacenter/cluster/clusters

/datacenter/cluster/clusters/{key}

You can use this method to view the details of the ONTAP clusters across the data center.

GET

/datacenter/cluster/nodes

/datacenter/cluster/nodes/{key}

You can use this method to view the details of the nodes in the data center.

GET

/datacenter/protocols/cifs/shares

/datacenter/protocols/cifs/shares/{key}

You can use this method to view the details of the CIFS shares in the data center.

GET

/datacenter/protocols/nfs/export-policies

/datacenter/protocols/nfs/export-policies/{key}

You can use this method to view the details of the export policies for the supported NFS services.

You can query the export policies for a cluster or storage VM and reuse the export policy key for provisioning NFS file shares. For more information about the assigning and reusing export policies on workloads, see "Provisioning CIFS and NFS file shares".

GET

/datacenter/storage/aggregates

/datacenter/storage/aggregates/{key}

You can use this method to view the collection of aggregates in the entire data center for provisioning workloads on them or monitoring.

GET

/datacenter/storage/luns

/datacenter/storage/luns/{key}

You can use this method to view the collection of LUNs in the entire data center.

GET

/datacenter/storage/qos/policies

/datacenter/storage/qos/policies/{key}

You can use this method to view the details of all the QoS policies in the data center and apply the policies as required.

GET

/datacenter/storage/qtrees

/datacenter/storage/qtrees/{key}

You can use this method to view the qtree details across the data center.

GET

/datacenter/storage/volumes

/datacenter/storage/volumes/{key}

You can use this method to view the collection of volumes in the data center.

GET

POST

DELETE

PATCH

/datacenter/protocols/san/igroups

/datacenter/protocols/san/igroups/{key}

You can assign initiator groups (igroups) authorized to access particular LUN targets. If there is an existing igroup, you can assign it. You can also create igroups and assign them to the LUNs.

You can use these methods to query, create, delete, and modify igroups respectively.

Points to note:

  • POST: While creating an igroup, you can designate the storage VM on which you want to assign access.
  • DELETE: You need to provide the igroup key as an input parameter to delete a particular igroup. If you have already assigned an igroup to a LUN, you cannot delete that igroup.
  • PATCH: You need to provide the igroup key as an input parameter to modify a particular igroup. You must also enter the property that you want to update, along with its value.

GET

POST

DELETE

PATCH

/datacenter/svm/svms

/datacenter/svm/svms/{key}

You can use these methods to view, create, delete, and modify Storage Virtual Machines (storage VMs).

Points to note:

  • POST: You must enter the storage VM object that you want to create as an input parameter. You can create a custom storage VM, and then assign required properties to it.
    Note: If you have enabled SLO-based workload provisioning on your environment, while creating the storage VM, ensure that it supports all of the protocols required for provisioning LUNs and file shares on them, for example, SMB/CIFS, NFS, FCP, and iSCSI. The provisioning workflows might fail if the storage VM does not support the required services. It is recommended that the services for the respective types of workloads are also enabled on the storage VM.
  • DELETE: You need to provide the storage VM key to delete a particular storage VM.
    Note: If you have enabled SLO-based workload provisioning on your environment, you cannot delete that storage VM on which storage workloads have been provisioned. When you delete a storage VM on which a CIFS/SMB server has been configured, this API also deletes the CIFS/SMB server, along with the local Active Directory configuration. However, the CIFS/SMB server name continues to be in the Active Directory configuration that you must delete manually from the Active Directory server.
  • PATCH: You need to provide the storage VM key to modify a particular storage VM. You also need to enter the properties that you want to update, along with their values.