The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This chapter contains the following sections:
The REST API supports retrieving system information from the Cisco Nexus 1000V.
You can read an object on the Cisco Nexus 1000V Virtual Supervisor Module (VSM) using the Representational State Transfer (REST) web services API. In order to call any REST function, you can use tools such as a web browser, the cURL tool, and Windows PowerShell.
The following is the basic construct of a REST URL:
http[s]://<IP_address>/api/<resource locator>
The resource locator consists of two parts:
<resource locator> := <name space>/<resource name>
<name space> indicates the broader class of functions and <resource name> refers to the specific object.
For example, in the following URL:
http://10.10.10.2/api/n1k/license
n1k is the namespace and license is the resource name.
If you are using a browser, type in the URL. For example, if you want to get the license information of your VSM that has an IP address of 10.10.10.2, you type the URL as follows:
https://10.10.10.2/api/n1k/license
Note | Beginning with Cisco Nexus 1000V Release 5.2(1)SV3(1.3), username and password can be authenticated using TACACS+ or RADIUS servers. |
To access the same through cURL, you use the following format:
curl http://username:password@10.10.10.2/api/n1k/license
You get the following XML output:
<set name="license_set"> <instance name="NEXUS_VSG_SERVICES_PKG" url="/api/n1k/license"> <properties> <expires>04 May 2013</expires> <type>NEXUS_VSG_SERVICES_PKG</type> <available>512</available> <status>Unused</status> <used>0</used> </properties> </instance> <instance name="NEXUS_ASA1000V_SERVICES_PKG" url="/api/n1k/license"> <properties> <expires>04 May 2013</expires> <type>NEXUS_ASA1000V_SERVICES_PKG</type> <available>16</available> <status>Unused</status> <used>0</used> </properties> </instance> <instance name="NEXUS1000V_LAN_SERVICES_PKG" url="/api/n1k/license"> <properties> <expires>04 May 2013</expires> <type>NEXUS1000V_LAN_SERVICES_PKG</type> <available>1024</available> <status>Unused</status> <used>0</used> </properties> </instance> </set>
Starting with Cisco Nexus 1000V Release 4.2(1)SV2(2.1), an extensible plug-in architecture is supported on the Cisco Nexus 1000V. Additional REST APIs can be installed using this plug-in infrastructure to expand the capabilities of the API and retrieve a broader set of information from the switch.
The REST API plug-in provides a Web interface to find the available APIs. You can access the Web interface from a browser by using the following URL:
http[s]://<IP_address>/api
For resources under /api, you can access the online documentation by appending ?meta to the resource name as shown in the following example:
http[s]://<ip-addr>/api/port-profile?meta
Every REST API function is associated with a resource name.
To find the list of Cisco Nexus 1000V resource names, construct the URL as follows:
https://10.10.10.2/api/n1k
You get the following output:
<?xml version="1.0" encoding="utf-8"?> <instance url="/api/n1k"> <children> <child name="vff" url="/api/n1k/vff"/> <child name="uplink" url="/api/n1k/uplink"/> <child name="vnic" url="/api/n1k/vnic"/> <child name="user" url="/api/n1k/user"/> <child name="vxlan" url="/api/n1k/vxlan"/> <child name="vnode" url="/api/n1k/vnode"/> <child name="span" url="/api/n1k/span"/> <child name="vpath" url="/api/n1k/vpath"/> <child name="summary" url="/api/n1k/summary"/> <child name="license" url="/api/n1k/license"/> <child name="port-profile" url="/api/n1k/port-profile"/> <child name="vem" url="/api/n1k/vem"/> <child name="vlan" url="/api/n1k/vlan"/> <child name="limits" url="/api/n1k/limits"/> </children> </instance>
Before you load the REST API plug-in, the plug-in must be available in the bootflash of the active and standby directory.
Ensure that you unload the REST API plug-in that is installed during boot time before loading the REST API plug-in from the bootflash.
Note | After unloading the REST API plug-in, wait for at least 10 seconds before loading the new REST API plug-in. |
You cannot install multiple plug-ins on the same system.
The REST API plug-in load and unload commands are supported only in the VSM HA mode.
Ensure that you do not switch over or reload the VSM immediately after unloading the REST API plug-in.
Feature |
Releases |
Feature Information |
---|---|---|
Support for Web Interface |
4.2(1)SV2(2.1a) |
This feature was introduced. |