Cisco Cloud Services Platform REST API Guide
First Published: 2018-10-15
Last Updated: 2020-12-21
Information About the Cisco CSP REST API
Supported Response Formats in Release 2.1.0 and Later Releases
Supported Response Formats in Release 1.0 and 2.0.0
Authentication, Authorization, and Accounting (AAA) APIs
Get Information About AAA Authentication Server Configuration and Caching Timeout
Specify the AAA Authentication Server
Specify the Timeout for AAA Authentication Response
Configure the Pre-Login Banner
Get Information About Clusters
Delete a Member from a Cluster
Enable Node Failure detection and VNF Service migration
Update Node Eviction Parameters
Enable Configuration Sync for Cluster
Patch Upgrade Cisco CSP 2100 Release Notes
Patch Upgrade Cisco CSP 2100 software
Get Information About NTP Servers
Get Information About NTP Server Status
Get Status Information About Port Isolation of VNF
Enable or Disable Port Isolation of VNF
Get Status Information About OVS DPDK
Enable or Disable OVS with DPDK
Get Information about LLDP Configuration
Assign a pNIC to a Port Channel
Configure Link State Tracking of Individual pNIC
Get Description About an Individual pNIC
Configure Description of an Individual pNIC
Modify the Description of an Individual pNIC
Delete the Description of an Individual pNIC
Get Information About LLDP Neighbors
Configure Card Mode of an Individual pNIC
Get Information About the RADIUS Servers
Get Information About All Files
Get Information About a Remote File
Copy Files from Cisco CSP 2100 (Release 2.2.3 and Later Releases)
Copy Files from Cisco CSP 2100 (Release 2.2.2)
Get Information About a Resource
Delete a Configured Resource Feature
Configure ACL Access for the Management Interface
Get Information About the CSP 2100 Version
Get Description About the CSP 2100 Resource
Configure Description of the CSP 2100 Resource
Modify the Description of the CSP 2100 Resource
Delete the Description of the CSP 2100 Resource
Get Information About Services
Get Description About a Service
Modify the Description of a Service
Delete the Description of a Service
Modify the Emulator-Pin of a Service
Get Mapping Information Between Physical CPUs and Virtual CPUs
Get Information About vNIC, VF MAC Addresses, and SRIOV Interfaces
Assign Serial Port to a Service
Add VM Monitoring to a Service
Get VM Monitoring Information About a Service
Delete VNF User Group from Service
Modify VNF User Group of Service
Add Storage Disks to a Service
Get Information About Configured Session Idle Timeout
Configure Session Idle Timeout
Get Information About SNMP Agents
Configure Engine ID of an SNMP Agent
Get Information About SNMP Communities
Create or Modify an SNMP Community
Get Information About SNMP Groups
Create or Modify an SNMP Group
Get Information About SNMP Users
Get Information About SNMP Hosts
Get Information About SNMP Server Agents
Get Information About SNMP Server View
Create or Modify an SNMP Server View
Get Information About SNMP Server Community
Configuring an SNMP Server Community
Get Information About SNMP Server Group
Specifying an SNMP Server Group Name
Get Information About SNMP Server User
Configuring an SNMP Server User
Get Information About SNMP Server Host
Configuring an SNMP Server Host
Get Information About SNMP Server Contact
Configuring SNMP Server Contact Information
Get Information About SNMP Server Location
Configuring SNMP Server Location Information
Get Information About SNMP Server EngineID
Configuring SNMP Server EngineID Information
Get Information About SNMP Server enable
Get Information About SNMP Traps
Get Information About Disk I/O Statistics
Get Information About TACACS+ Servers
Add or Modify a TACACS+ Server
Get Information About the Time Zone
Configure the Time Zone for Cisco CSP 2100
Change the Time Zone for Cisco CSP 2100
Delete the Configured Time Zone
Technical Support Information API
Generate Technical Support Information
Get Information About the Cisco CSP 2100 Users
Release 2.2.2 and Later Releases
Get Status Information about Password Expiry
Enable or Disable Password Expiry on CSP
Enable or Disable TPM based Disk Encryption
Start, Stop, Show Counters APIs
Obtaining Documentation and Submitting a Service Request
You can perform operations on the Cisco Cloud Services Platform (Cisco CSP) objects using the Representational State Transfer (REST) API. The Cisco CSP 2100 REST APIs support create, retrieve, update, and delete (CRUD) operations. To call any REST function, you can use tools such as a web browser, the cURL tool, or Windows PowerShell. If you are using a web browser, type the URL. If you are using cURL or Windows PowerShell, use the following format:
Note: Starting with Release 2.1.0, Cisco CSP 2100 supports only port 443. Therefore, you do not need to specify the port number (port_number).
The module locator consists of two parts: a namespace and a module name.
The namespace indicates the broader class of functions and the module name refers to the specific object. For example:
In this example, running is the namespace and clusters is the module name.
Starting with Release 2.1.0, Cisco CSP 2100 supports only JSON format on port 443 for REST API response. You do not need to specify the port number in the REST API.
Cisco CSP 2100 release 2.0.0 and 1.0 support the JSON and XML formats for REST API response. With port 443, JSON response format is supported. With port 8888, XML response format is supported. You need to specify the port number in the REST API.
Table 1. Available Modules
Module |
Description |
/api/running/security_servers |
Module for specifying the server for AAA authentication, configuring a RADIUS or TACACS+ server. |
/api/running/banner |
Module for configuring a pre-login or MOTD banner. |
/api/running/save-load |
Module for saving a configuration to a file or loading a configuration from a file. |
/api/running/clusters |
Module for creating, deleting, and modifying clusters and for retrieving information about clusters. |
/api/running/system |
Module for specifying the ISO installation mode. |
/api/running/package-install |
Module for upgrading the Cisco CSP 2100 software and checking the upgrade status. |
/api/running/ntps |
Module for creating and deleting an NTP server and for retrieving information about an NTP server. |
/api/operational/ntp_status |
Module for retrieving information about the NTP server status. |
/api/running/pnics |
Module for retrieving information about pNICs and modifying pNICs. |
/api/operational/pnics |
Module for retrieving statistics about pNICs. |
/api/operational/lldp |
Module for retrieving LLDP neighbor information. |
/api/operational/repository |
Module for retrieving information about repository files. |
/api/running/resources |
Module for retrieving information about resources. |
/api/running/running/clock |
Module for configuring and changing the time zone, and deleting the configured time zone. |
/api/running/support |
Module for creating technical support information. |
/api/running/services |
Module for creating, deleting, and modifying services and for retrieving information about services. |
/api/running/snmp |
Module for creating, deleting, and modifying SNMP communities, groups, hosts, users, and traps. |
/api/running/snmp-server |
Module for creating, deleting and modifying SNMP view, community, group, user, host, and enabling traps. A new CLI that is compliant with the IOS style CLI with read or write configuration. |
/api/running/csp_users |
Module for creating, deleting, and modifying users. |
/api/operational/vnics |
Module for retrieving statistics about vNICs. |
https://ip-address:port-number/api/running/security_servers/aaa
Retrieves information about the AAA authentication server and caching time.
Release |
Modification |
2.7.0 |
The caching timeout parameter is introduced. |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/aaa -H "Content-Type:application/vnd.yang.data+json" -d '{"aaa" : {"authentication" : "authentication_server "}}'
Specifies the server to be used for AAA authentication.
Name |
Description |
Importance |
authentication_server |
Specifies the server for AAA authentication. Valid values are: · tacacs: TACACS+ server. This is the default server. · radius: RADIUS server. |
Required |
Example
Release |
Modification |
2.2.0 |
This API is introduced. |
Method
PUT
Module
https://ip-address:port-number/api/running/security_servers/aaa -H "Content-Type:application/vnd.yang.data+json" -d '{"aaa" : {"caching" : {"rest_req_caching_tmout" : "caching_timeout "}}}'
Description
Specifies the caching timeout for external authentication responses from TACACS/RADIUS servers for the REST API requests.
Parameters
Name |
Description |
Importance |
caching_timeout |
Specifies the time in seconds to cache the external authentication responses. Valid values (seconds) are: · 1-600: Caching is enabled. · 0: Caching is disabled. |
Required |
Example
API History
Release |
Modification |
2.7.0 |
The caching timeout parameter is introduced in the AAA authentication command. |
https://ip-address:port-number/api/running/banner -H "Content-type: application/vnd.yang.data+json" -d '{"login":"filename"}'
Configures a banner that is displayed before a user logs in to the Cisco CSP 2100. This banner is displayed on the login page of the web interface and the Cisco CSP 2100 CLI window.
After configuring the pre-login banner, if you make any changes in the banner file, you must do the following:
1. Remove the banner file by using the following API:
curl -u username:password -X DELETE https://ip-address:port-number/api/running/banner/login -H "Content-type: application/vnd.yang.data+json" -d
For more information about how to delete the banner file, see the Delete the Pre-Login Banner section.
2. Add the banner file again in the configuration by using the following API:
curl -u username:password -X POST https://ip-address:port-number/api/running/banner -H "Content-type: application/vnd.yang.data+json" -d '{"login":"filename"}'
Changes made in the banner file are not automatically updated in the pre-login banner.
Name |
Description |
Importance |
filename |
Name of the banner file available in the Cisco CSP 2100 repository. The banner file can be up to 1024 bytes in size. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/banner/login -H "Content-type: application/vnd.yang.data+json" -d
Deletes the configured pre-login banner.
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/banner -H "Content-type: application/vnd.yang.data+json" -d '{"motd":"filename"}'
Configures the message-of-the-day (MOTD) banner that is displayed after a user logs in to the Cisco CSP 2100. This banner is displayed in the web interface and the Cisco CSP 2100 CLI window.
After configuring the MOTD banner, if you make any changes in the banner file, you must do the following:
1. Remove the banner file by using the following API:
curl -u username:password -X DELETE https://ip-address:port-number/api/running/banner/motd -H "Content-type: application/vnd.yang.data+json" -d
For more information about how to delete the banner file, see the Delete the MOTD Banner section.
2. Add the banner file again in the configuration by using the following API:
curl -u username:password -X POST https://ip-address:port-number/api/running/banner -H "Content-type: application/vnd.yang.data+json" -d '{"motd":"filename"}'
Changes made in the banner file are not automatically updated in the MOTD banner.
Name |
Description |
Importance |
filename |
Name of the banner file available in the Cisco CSP 2100 repository. The banner file can be up to 1024 bytes in size. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/banner/motd -H "Content-type: application/vnd.yang.data+json" -d
Deletes the configured MOTD banner.
Release |
Modification |
2.1.0 |
This API is introduced. |
You can use the configuration file commands described in this section to save the running configuration to the repository and to load the running configuration from the repository to Cisco CSP 2100. If you had to perform a clean installation of Cisco CSP 2100 for any reason, these commands enable you to quickly restore the Cisco CSP configuration settings. For information about saving a running configuration and then loading it, see the Cisco Cloud Services Platform Configuration Guide.
https://ip-address:port-number/api/running/save-load/_operations/save -H "Content-type: application/vnd.yang.data+json" -d '{"input": {" config-file":"filename"}}'
Saves the running configuration to a file.
Name |
Description |
Importance |
filename |
Name of the file in which the configuration is saved. This file is saved in the Cisco CSP 2100 repository. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/save-load/_operations/load-H "Content-type: application/vnd.yang.data+json" -d '{"input": {" config-file":"filename"}}'
Loads a configuration from a file.
Name |
Description |
Importance |
filename |
Name of the configuration file available in the Cisco CSP 2100 repository. Note: You must also copy the appropriate files, such as the service ISO file (specified in iso_name) and banner files, required by the saved configuration file to the /osp/repository directory. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/clusters
https://ip-address:port-number/api/running/clusters/cluster/name
https://ip-address:port-number/api/running/clusters?deep
Retrieves information about the nodes associated with all clusters or a specific cluster.
To get detailed information about the nodes associated with all clusters or a specific cluster, use the ?deep parameter.
Name |
Description |
Importance |
name |
Name of the cluster |
Optional |
Examples
Release |
Modification |
1.0 |
This API is introduced. |
Release 2.5.0
https://ip-address:port-number/api/running/clusters -H "Content-type: application/vnd.yang.data+json" -d '{"cluster": [{"name":"name", "nodes": {"node": [{"member_ip":"member_ip"}, {"member_ip": "member_ip"}]}}]}'
Note: Support for this API in releases earlier to 2.5.0 is deprecated.
Release 2.8.0
https:// ip-address:port-number/api/new_post_cluster/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":"name","nodes":{"node":[{"member_ip":"member_ip"},{"member_ip":"member_ip"},{"member_ip":"member_ip"}]}}]}'
Note: We recommend you use the new API from 2.8.0 release onwards to create a cluster.
Creates a cluster. Clusters enable you to make configuration changes to all other Cisco CSP 2100 members of a cluster by using the web interface of a Cisco CSP 2100 cluster member.
Name |
Description |
Importance |
name name |
Specifies the name of the cluster. |
Required |
member_ip member_ip |
Specifies the IP address of a member that is being assigned to the cluster. You can add multiple members at a time by specifying their IP addresses in the member_ip parameter separated by commas. |
Required |
Example
Release |
Modification |
2.8.0 |
The new post cluster API is introduced. |
2.5.0 |
The cluster API is deprecated. |
1.0 |
The cluster API is introduced. |
Release 2.5.0
https://ip-address:port-number/api/running/clusters/cluster -H "Content-type: application/vnd.yang.data+json" -d '{"cluster": {"name":"name", "nodes": {"node": [{"member_ip": "member_ip"}]}}}'
Note: Support for this API in releases earlier to 2.5.0 is deprecated.
Release 2.8.0
https:// ip-address:port-number /api/add_cluster_node/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":"name","nodes":{"node":[{"member_ip":"member_ip"}]}}]}'
Note: We recommend you use the new API from 2.8.0 release onwards to add members to a cluster.
Adds members to a cluster.
Name |
Description |
Importance |
name name |
Specifies the name of the cluster. |
Required |
member_ip member_ip |
Specifies the IP address of a member that is being added to the cluster. You can add multiple members at a time by specifying their IP addresses in the member_ip parameter separated by commas. |
Required |
Example
Release |
Modification |
2.8.0 |
The new add cluster node API is introduced. |
2.5.0 |
The cluster API to add a node is deprecated. |
1.0 |
The cluster API to add a node is introduced. |
https://ip-address:port-number/api/running/clusters/cluster/name -H "Content-type: application/vnd.yang.data+json" \-d '{"cluster": {"name": "name", "nodes": {"node": [{"member_ip":"member_ip"}, {"member_ip":"member_ip"}, {"member_ip":"member_ip"}]}}}'
Replaces all current cluster member IP addresses with only the member IP addresses you specify in this API. To retain any of the current cluster member IP addresses, you must explicitly specify them. For example, you have cluster members A through D with the following IP addresses:
· Member A - 192.0.2.111
· Member B - 192.0.2.112
· Member C - 192.0.2.113
· Member D - 192.0.2.114
You want to keep member A and replace members B through D with new IP addresses. You need to include member A, along with the new IP addresses, in the PUT method.
Name |
Description |
Importance |
name name |
Specifies the name of the cluster. |
Required |
member_ip member_ip |
Specifies the IP address of the member that is being changed in the cluster. You can add multiple members at a time by specifying their IP addresses in the member_ip parameter separated by commas. |
Required |
Example
Release |
Modification |
2.5.0 |
This API is deprecated |
1.0 |
This API is introduced. |
Release 2.5.0
https://ip-address:port-number/api/running/clusters/cluster/name/nodes/node/ip-address
Note: Support for this API in releases earlier to 2.5.0 is deprecated.
Starting from 2.8.0
https:// ip-address:port-number /api/delete_cluster_node/name/ip-addresss -H "Content-Type:application/vnd.yang.data+json"
Note: We recommend you use the new API from 2.8.0 release onwards to delete a member from a cluster.
Deletes a specific member of a cluster.
Name |
Description |
Importance |
name |
Name of the cluster. |
Required |
ip-address |
IP address of the member that is being removed from the cluster. |
Required |
Example
API History
Release |
Modification |
2.8.0 |
The delete cluster node API is introduced. |
2.5.0 |
The cluster API to delete a node is deprecated. |
2.0.0 |
The cluster API to delete a node is introduced. |
Release 2.5.0
https://ip-address:port-number/api/running/clusters/cluster/name
Note: Support for this API in releases earlier to 2.5.0 is deprecated.
Release 2.8.0
https://ip-address:port-number/api/delete_cluster/name -H "Content-Type:application/vnd.yang.data+json"
Note: We recommend you use the new API from 2.8.0 release onwards to delete a cluster.
Description
Deletes a specific cluster.
Name |
Description |
Importance |
name |
Name of the cluster |
Required |
Example
Release |
Modification |
2.8.0 |
The new delete cluster API is introduced. |
2.5.0 |
The cluster API to delete a cluster is deprecated. |
1.0 |
The cluster API to delete a cluster is introduced. |
Method
POST
Module
https://ip-address:port-number/api/new_post_cluster/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":" "name","enable-node-redundancy":"enable-node-redundancy","eviction-timeout":"eviction-timeout","nodes":{"node":[{"member_ip":"member_ip "},{"member_ip":"member_ip"},{"member_ip":"member_ip"}]}}]}'
Description
To enable node failure detection and VNF migration for the cluster.
Parameters
Name |
Description |
Importance |
name |
Name of the cluster |
Required |
enable-node-redundancy |
Enables or disables the node redundancy for the cluster. Valid values are true or false. |
Required |
eviction-timeout |
Enter the node eviction timeout in seconds. |
Required |
member_ip |
Specifies the IP address of a member that is being assigned to the cluster. You can add multiple members at a time by specifying their IP addresses in the member_ip parameter separated by commas. |
Required |
Example
API History
Release |
Modification |
2.8.0 |
This API is introduced. |
Method
PATCH
Module
https://ip-address:port-number/api/add_cluster_node /running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":" "name","enable-node-redundancy":"enable-node-redundancy","eviction-timeout":"eviction-timeout"}]}'
Description
To update node eviction parameters.
Parameters
Name |
Description |
Importance |
name |
Name of the cluster |
Required |
enable-node-redundancy |
Enables or disables the node redundancy for the cluster. Valid values are true or false. |
Required |
eviction-timeout |
Enter the node eviction timeout in seconds. |
Required |
Example
API History
Release |
Modification |
2.8.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/new_post_cluster/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":" "name","enable-storage-netwrok":"enable-storage-network","gluster-disk-allocation":"gluster-disk-allocation","nodes":{"node":[{"member_ip":" member_ip "},{"member_ip":"member_ip"},{"member_ip":"member_ip"}]}}]}'
Description
To enable storage network for the cluster.
Parameters
Name |
Description |
Importance |
name |
Name of the cluster |
Required |
enable-storage-network |
Enables or disables the storage network. Valid values are true or false. |
Required |
gluster-disk-allocation |
Specifies the gluster disk allocation in percentage. The default disk capacity value of the gluster is 80% and the remaining disk capacity is allocated for the local storage. The VNFs are deployed in the gluster location using the distributed storage network for the cluster.
Note: You can recover the VNFs deployed in the gluster location during Day-N configuration, when the storage network is enabled. |
Required |
member_ip |
Specifies the IP address of a member that is being assigned to the cluster. You can add multiple members at a time by specifying their IP addresses in the member_ip parameter separated by commas. |
Required |
Example
API History
Release |
Modification |
2.8.0 |
This API is introduced. |
Method
POST
Module
https://ip-address/api/new_post_cluster/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":name,"enable-config-sync”: enable-config-sync,"nodes":{"node":[{"member_ip":member_ip},{"member_ip":member_ip},{"member_ip":member_ip}]}}]}'
Description
To enable configuration sync for cluster nodes.
Parameters
Name |
Description |
Importance |
name |
Name of the cluster |
Required |
enable-config-sync |
Enables configuration sync for cluster nodes |
Required |
member_ip |
Specifies the IP address of a member that is being assigned to the cluster. You can add multiple members at a time by specifying their IP addresses in the member_ip parameter separated by commas |
Required |
Examples
curl -ku admin:admin -X POST https://172.27.109.86/api/new_post_cluster/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":user,"enable-config-sync”:true,"nodes":{"node":[{"member_ip":172.27.109.86},{"member_ip":172.27.109.100},{"member_ip":172.27.109.120}]}}]}'
API History
Release |
Modification |
2.9.0 |
This API is introduced. |
Method
PATCH
Module
https://ip-address/api/add_cluster_node/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":name,"enable-config-sync": enable-config-sync,"sync-node":[{"sync_ip":sync-ip},{"sync_ip":sync-ip}]}]}'
Description
To update the configuration sync parameters for cluster or to update the nodes on which configuration sync is performed.
Parameters
Name |
Description |
Importance |
name |
Name of the cluster |
Required |
enable-config-sync |
Enables configuration syncing for cluster nodes |
Required |
sync_ip |
Specifies the IP address of a node to which the configuration should be synced to. You can add multiple nodes at a time by specifying their IP addresses in the sync_ip parameter separated by commas |
Required |
Examples
curl -ku admin:admin -X POST https://172.27.109.86/api/new_post_cluster/running/clusters -H "Content-Type:application/vnd.yang.data+json" -d '{"cluster":[{"name":user,"enable-config-sync”:true,"sync-node”:[{"sync_ip":172.27.109.86},{"sync_ip":172.27.109.100},{"sync_ip":172.27.109.120}]}}]}'
Note:
· The “sync-node” list should contain all cluster member IP addresses for which the configuration has to be synced.
· To disable configuration sync on one cluster node, the sync-node list should omit the node being disabled and contain all enabled nodes.
API History
Release |
Modification |
2.9.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/collectd/_operations/collectd-stat -H "Content-Type: application/vnd.yang.data+json"
Description
Collectd package collects system and application performance metrics periodically and provides memory, disk and CPU statistics. The collectd package provides historical resource utilization. Hence, duration enums such as 30 minutes, 10 hour, 1 day, 15 days, 30 days are allowed. You can select any of these durations and get statistics for the specific time interval.
A graphical representation of the following statistics is provided:
· A memory graph representing memory-free and memory-used parameters.
· A disk graph representing disk operations per second.
· A CPU graph representing CPU utilization of the kernel space and user space (cpu-system and cpu-user)
Parameters
Name |
Description |
Importance |
memory-used |
Statistics based on physical memory utilized. |
Required |
memory-free |
Statistics based on memory that is available and using power. |
Required |
disk-ops |
Statistics based on performance of hard disks. |
Required |
duration |
Statistics based on the duration such as 30 minutes, 10 hour, 1 day, 15 days, or 30 days. |
Required |
cpu-system |
Statistics based on CPU utilization of the kernel space. |
Required |
cpu-user |
Statistics based on CPU utilization of the user space |
Required |
Examples
API History
Release |
Modification |
2.3.1 |
This API is introduced. |
https://ip-address:port-number/api/operations/factory-default-reset/all -H "Content-Type: application/vnd.yang.data+json"
Allows restoring Cisco CSP 2100 to original factory defaults. After the API is executed, Cisco CSP 2100 reboots automatically, and you are prompted with the configuration services questionnaire similar to clean installation. For more information about how to set up your Cisco CSP 2100 through clean installations, see the Cisco Cloud Services Platform Quick Start Guide.
Note: Executing the API, erases all configuration. Connectivity is lost, and admin password is changed to factory default password.
After factory-reset of ovs-dpdk enabled device, the device resets back to factory default ovs-dpdk disabled setting. For more information about the ovs dpdk configuration, see the OVS DPDK APIs.
Release |
Modification |
2.2.5 |
This API is introduced. |
https://ip-address:port-number/api/running/system/install/iso/mode/_operations/mode
Specifies the installation mode for installing Cisco CSP 2100. This REST API only specifies the installation mode. It does not initiate the Cisco CSP 2100 installation.
Name |
Description |
Importance |
mode |
Specifies the installation mode. The value can be one of the following: · clean-install: Specifies to not retain any existing configurations and settings. · software-update: Specifies to retain the existing configurations and settings in the new installation. |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/system/install/iso/update/_operations/update -H "Content-Type: application/vnd.yang.data+json" -d '{"input":{"image":"imagename "}}'
Upgrades the Cisco CSP 2100 software using an ISO image file.
Note:
· To upgrade the Cisco CSP 2100 software by using this REST API, Cisco FlexFlash must be enabled in the Cisco Integrated Management Controller (CIMC). To enable the Cisco FlexFlash or to check that the Cisco FlexFlash is enabled, in the CIMC, click Storage > Cisco FlexFlash and then click the Virtual Drive Info tab. For detailed configuration information about the CIMC, see Cisco Integrated Management Controller Configuration Guides.
· You cannot use this REST API to upgrade the Cisco CSP 2100 software from Release 2.1.x to Release 2.2.0. Use the CIMC console to upgrade the Cisco CSP 2100 software from Release 2.1.x to Release 2.2.0. You can use this API to upgrade from Release 2.2.0 to later versions.
Name |
Description |
Importance |
image imagename |
Specifies the name of the Cisco CSP 2100 ISO software update image available in the Cisco CSP 2100 repository. |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/system/install -H "Content-Type: application/vnd.yang.data+json" -d '{"input": {"mode":"mode"}}'
Specifies the installation mode for installing Cisco CSP 2100 by using an ISO image. This REST API only specifies the installation mode. It does not initiate the Cisco CSP 2100 installation.
Name |
Description |
Importance |
mode mode |
Specifies the installation mode. The value can be one of the following: · clean-install: Specifies to not retain any existing configurations and settings. · update-software: Specifies to retain the existing configurations and settings in the new installation. |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is removed. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/package-install/show-upgrade-status
Shows the status of the Cisco CSP 2100 software upgrade process.
Release |
Modification |
2.1.0 |
This API is removed. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/install/package-upgrade/_operations/rel-notes -d '{"input":{"package-file":"filename"}}'
Lists the Cisco CSP 2100 bugs available in Release Notes for a patch upgrade.
Name |
Description |
Importance |
package-file filename |
Specifies the name of the package file for upgrade, which is available in the Cisco CSP 2100 repository. |
Required |
Example
Release |
Modification |
2.6.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/install/package-upgrade/_operations/update -d '{"input":{"package-file":"filename", "force": "force"}}'
Description
Updates CSP software from current version to its next patch version.
Parameters
Name |
Description |
Importance |
package-file filename |
Specifies the name of the package file for upgrade, which is available in the Cisco CSP 2100 repository. |
Required |
force force |
Enables or disables the upgrade of CSP software during failure. Valid values are true and false. |
Optional |
Example
API History
Release |
Modification |
2.6.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/install/patch-upgrade/_operations/check status
Description
Checks and shows the status of the patch upgrade operation.
Parameters
None
Example
API History
Release |
Modification |
2.6.0 |
This API is introduced. |
https://ip-address:port-number/api/running/ntps
https://ip-address:port-number/api/running/ntps/ntp/ntp_server
https://ip-address:port-number/api/running/ntps?deep
Retrieves information about all NTP servers or a specific NTP server.
To get detailed information about all NTP servers or a specific NTP server, use the ?deep parameter.
Name |
Description |
Importance |
ntp_server |
Host name or IP address of the NTP server |
Optional |
Examples
Release |
Modification |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/operational/ntp_status/_operations/ntp_get_status
Retrieves information about the status of the NTP server.
Release |
Modification |
2.0.0 |
This API is introduced. |
https://ip-address:port-number/api/running/ntps/ntp -H "Content-Type: application/vnd.yang.data+json" -d '{"ntp": {"ntp_server":"ntp_server"}}'
Adds an NTP server.
Name |
Description |
Importance |
ntp_server ntp_server |
Specifies the host name or the IP address of the NTP server. |
Required |
Examples
Release |
Modification |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/ntps/ntp/ntp_server
Deletes an NTP server.
Name |
Description |
Importance |
ntp_server |
Host name or IP address of the NTP server |
Required |
Examples
Release |
Modification |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/system-settings/vm/switching-mode
Retrieves status information about port isolation of VNF management interfaces.
Release |
Modification |
2.2.5 |
This API is introduced. |
https://ip-address:port-number/api/running/system-settings/vm/switching-mode -H "Content-type: application/vnd.yang.data+json" -d '{"switching-mode": "switchingmode"}
Enables or disables port isolation of VNF management interfaces.
Name |
Description |
Importance |
switching-mode switchingmode |
Specifies the switching modes. Valid values are: protected: Disables communication between VNF management ports. VEB: Enables communication between VNF management ports. Default mode is VEB. |
Optional |
Example
Release |
Modification |
2.2.5 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/ operational/system-settings/ovs/dpdk
Description
Retrieves information about the status of ovs dpdk.
Examples
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/system-settings/_operations/ovs-dpdk -H "Content-Type: application/vnd.yang.data+json" -d '{"input": {"action":"action"}}'
Description
Enables or disables the Open vSwitch (OvS) with Data Plane Development Kit (DPDK) modes.
Parameters
Name |
Description |
Importance |
action action |
Sets the ovs dpdk mode. Valid values are enable and disable. |
Required |
Usage Guidelines
By default, ovs-dpdk is disabled on upgrade and clean install modes. DPDK offers poll mode drivers that enables direct transfer of packets between user space and physical interface, and bypass kernel network stack.
Note: The system reboots on enabling or disabling ovs-dpdk.
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
https://ip-address:port-number/api/running/pnics
https://ip-address:port-number/api/running/pnics/pnic/name
https://ip-address:port-number/api/running/pnics?deep
Retrieves information about all pNICs or a specific pNIC.
To get detailed information about all pNICs or a specific pNIC, use the ?deep parameter.
Name |
Description |
Importance |
name |
Name of the pNIC. PNICs are named in Eth<pcie slot>-<port> format. The slot 0 corresponds to LOM port and slot 9 corresponds to mLOM ports. |
Optional |
Examples
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/operational/pnics -H "Content-type:application/vnd.yang.collection+json"
https://ip-address:port-number/api/operational/pnics/pnic -H "Accept:application/vnd.yang.collection+json"
https://ip-address:port-number/api/operational/pnics/pnic/name
Retrieves statistics for all pNICs or a specific pNIC. The pNIC statistics are updated every 10 seconds.
Name |
Description |
Importance |
name |
Name of the pNIC |
Optional |
Example
Release |
Modification |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/pnics/pnic -H "Content-type: application/vnd.yang.data+json" -d '{"pnic": {"name": "name", "adminstatus": "adminstatus", " promiscuous": "promiscuousmode ", "bond_mode": "bond_mode", "lacp_type": "lacp_type", "sr-iov": {"numVFs": "numVFs", "switchMode": "switchMode"}, "lldp":"lldp_mode", "trunks": "vlan_num", "member_of": "portchannel_name"}}}}'
Modifies a pNIC.
Note: You cannot modify the name of a pNIC.
Name |
Description |
Importance |
name name |
Specifies the name of the pNIC. You cannot modify the name of a pNIC. |
Required |
adminstatus adminstatus |
Shuts down or re-enables a disabled pNIC. Valid values are up and down. This parameter is not available if the pNIC is configured as a passthrough interface. |
Optional |
promiscuous |
Specifies the promiscuous mode. Valid values are enabled and disabled. Default is disabled. This parameter is available only when the pNIC is configured as a passthrough interface. When promiscuous mode is enabled, traffic is passed to the vNIC independent of the packet MAC address. |
Optional |
bond_mode bond_mode |
Specifies the mode of the bond. Valid values are balance-slb, active-backup, and balance-tcp. For more information about these values, see the Create a Port Channel section. |
Optional |
lacp_type lacp_type |
Specifies the link aggregation control protocol (LACP) type for the bond. Valid values are active, passive, and off. |
Optional |
sr-iov |
Provides SR-IOV support. Note: SR-IOV feature is supported with the 10G and 40G interfaces. |
Optional |
numVFs numVFs |
Specifies the number of VFs. Up to 63 VFs are supported on a 10G interface and up to 64 VFs are supported on a 40G interface. Use 0 to disable the SR-IOV support. Note: · You cannot disable the SR-IOV support if any existing service is already using this feature. · To add more VFs to a pNIC, you first need to disable the SR-IOV support and then enable it. · VF interfaces come up only when the physical pNIC is up and running. |
Optional |
switchMode switchmode |
Specifies the switch mode. Valid values are: · VEB: Virtual Ethernet Bridge mode · VEPA: Virtual Ethernet Port Aggregator (VEPA) mode. This mode is reserved for switches with a VEPA-capable hardware, that is, switches that support IEEE 802.1Qbg. Default mode is VEB. |
Optional |
lldp lldp_mode |
Sets the LLDP mode. Valid values are enabled and disabled. Default is enabled. |
Optional |
type |
Specifies the type. Valid values are ethernet and port-channel. Default is ethernet. |
Optional |
trunks vlan_num |
Specifies the VLAN number. Valid range is from 1 to 4096. Default is 1. Enter VLANs separated by commas, VLAN ranges separated by dashes, or a combination of both. |
Optional |
member_of portchannel_name |
Specifies the name of the port channel. |
Optional |
Example
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
2.4.0 |
The SR-IOV feature support for 40G interface has been added. |
2.1.0 |
The adminstatus, promiscuous, sr-iov, numVFs, switchMode parameters are added. |
2.0.0 |
The passthrough parameter is removed. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/pnics/pnic/name/lldp
Retrieves the Link Layer Discovery Protocol (LLDP) information for a specific pNIC.
Name |
Description |
Importance |
name |
Name of the pNIC |
Required |
Example
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/pnics/pnic -H "Content-Type: application/vnd.yang.data+json" -d '{"pnic": {"name":"name", "lldp":"lldp_mode"}}'
Enable or disables LLDP.
Name |
Description |
Importance |
name name |
Specifies the name of the pNIC. |
Required |
lldp lldp_mode |
Sets the LLDP mode. Valid values are enabled and disabled. Default is enabled. |
Required |
Example
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/pnics -H "Content-type: application/vnd.yang.data+json" -d '{"pnic":{"name":"name", "type":"port_channel", "bond_mode":"bond_mode", "lacp_type":"lacp_type", "trunks":"vlan_num"}}'
Creates a port channel.
Starting from 2.8.0, you can configure the port-channels that have SR-IOV enabled pNICs as subordinate interfaces. The SR-IOV enabled port-channels cannot be assigned to VNF services during deployment because these port-channels are not intended to carry data traffic.
Note: After creating a port channel, you must assign at least two pNIC members to the port channel. For information about how to assign a pNIC to a port channel, see the Assign a pNIC to a Port Channel section.
Name |
Description |
Importance |
name name |
Specifies the name of the port channel. PNICs are named in Eth<pcie slot>-<port> format. The slot 0 corresponds to LOM port and slot 9 corresponds to mLOM ports. |
Required |
type |
Specifies the type of the port. You must specify the type as port_channel. |
Required |
bond_mode bond_mode |
Specifies the mode of the bond. Valid values are the following: · balance-slb: In this mode, load balancing is done between the pNIC members of a port channel based on the MAC address. This is the default mode. · active-backup: In this mode, load balancing is done between two members of a port channel. One pNIC acts as the active member and carries all the traffic. The other pNIC acts as the backup member and carries traffic only when the active pNIC fails. · balance-tcp: In this mode, load balancing is done between the pNIC members of a port channel based on the L2, L3, and L4 protocol information such as destination MAC address, IP address, and TCP port. This mode requires the upstream switch to support 802.3ad with successful LACP negotiation. Default is balance-slb. |
Optional |
lacp_type lacp_type |
Specifies the LACP type for the bond. Valid values are active, passive, and off. Default is off. |
Optional |
trunks vlan_num |
Specifies the VLANs. Valid range is from 1 to 4096. Default value is 1. Enter VLANs separated by commas, VLAN ranges separated by dashes, or a combination of both. |
Optional |
Example
Release |
Modification |
2.5.0 |
The pNIC name has been changed to the new format, Eth<slot>-port. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/pnics/pnic/name -H "Content-type: application/vnd.yang.data+json" -d '{"pnic":{"member_of":"portchannel_name"}}'
Assigns a pNIC member to a port channel.
Starting from 2.8.0, you can associate the SR-IOV enabled pNICS to the port-channel.
Name |
Description |
Importance |
name |
Name of the pNIC. |
Required |
member_of portchannel_name |
Specifies the name of the port channel. |
Required |
Example
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
1.0 |
This API is introduced. |
Method
PATCH
Module
https://ip-address:port-number/api/running/pnics/pnic/name -H "Content-type: application/vnd.yang.data+json" -d '{"pnic": {"name"":"name", "link-state-tracking":"link-state"}}''
Description
Allows you to enable or disable the link-state tracking. Link-state tracking provides redundancy in the network when used with server network.
Note: This feature is available for port channel and non-passthrough pNICs.
Parameters
Name |
Description |
Importance |
name |
Name of the pNIC |
Required |
link-state-tracking link-state |
Enables or disables link state tracking. Valid values are Enabled and Disabled. |
Required |
Example
API History
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
2.3.1 |
This API is introduced. |
https://ip-address:port-number/api/running/pnics/pnic/name
Deletes a specific port channel.
Note: Before deleting a port channel, you must unassign the pNICs assigned to the port channel.
Name |
Description |
Importance |
name |
Name of the port channel |
Required |
Example
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
1.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/pnics/pnic/name/description
Description
Retrieves description about an individual pNIC member.
Parameters
Name |
Description |
Importance |
name |
Name of the pNIC |
Required |
Example
API History
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/pnics/pnic/name -H "Content-type: application/vnd.yang.data+json" -d '{"description":"new description"}'
Description
Allows you to add a description for a pNIC.
Note: Only users who belong to the admin-group can modify all pNIC descriptions.
Parameters
Name |
Description |
Importance |
name |
Name of the pNIC |
Required |
description new description |
Specifies a description for an individual pNIC. Valid values are a string up to 256 characters, underscores, dashes, periods, and commas. Note: Configuring the pNIC description configures the corresponding ifAlias SNMP MIB of pNIC. |
Required |
Example
API History
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
2.3.0 |
This API is introduced. |
Method
PUT
Module
https://ip-address:port-number/api/running/pnics/pnic/name/description -H "Content-type: application/vnd.yang.data+json" -d '{"description":"new description"}'
Description
Allows you to edit and modify a pNIC description.
Note: Only users who belong to the admin-group can modify all pNIC descriptions.
Parameters
Name |
Description |
Importance |
name |
Name of the pNIC |
Required |
description new description |
Specifies a new description of an individual pNIC that is being changed. Valid values are a string up to 256 characters, underscores, dashes, periods, and commas. Note: Configuring the pNIC description configures the corresponding ifAlias SNMP MIB of pNIC. |
Required |
Example
API History
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
2.3.0 |
This API is introduced. |
Method
DELETE
Module
https://ip-address:port-number/api/running/pnics/pnic/name/description
Description
Deletes a pNIC description.
Note: Only users who belong to the admin-group can delete all pNIC descriptions.
Parameters
Name |
Description |
Importance |
name |
Name of the pNIC |
Required |
description |
Specifies the existing description of an individual pNIC. |
Required |
Example
API History
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/operational/lldp/ lldp?deep
Description
Retrieves LLDP neighbor information for all interfaces.
To get detailed information about LLDP neighbor, use the ?deep parameter.
Parameters
None
Example
API History
Release |
Modification |
2.5.0 |
The PNIC name has been changed to the new format, Eth<slot>-port. |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/ system-settings/pnic-breakout/_operations/list-intf -d '{"input": {"nic_mode_pair": [{ "devno":"devno", "mode":"mode" }] } }'
Description
It lists or converts card mode or both into XL71. Allows 40G XL710 PNIC to be run in breakout mode of 4x10G.
Parameters
Name |
Description |
Importance |
denvo denvo |
Specifies the device number that is listed when using the list-intf command. |
Required |
mode mode |
Specifies one of the supported modes for XL710 card such as, 2x40, 4x10. |
Required |
Example
Example for listing breakout
Example for converting card mode
API History
Release |
Modification |
2.5.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/radius-server
https://ip-address:port-number/api/running/security_servers/radius-server/host/hostname
Retrieves information about all RADIUS servers or a specific RADIUS server.
Name |
Description |
Importance |
hostname |
Hostname or IP address of the RADIUS server. |
Optional |
Examples
Release |
Modification |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/radius-server -H "Content-Type:application/vnd.yang.data+json" -d '{"host": {"server":"hostname", "secret": {"key": "key", "shared-secret": "shared-secret"}, "auth-port":"auth-port", "acct-port ":"acct-port"}}'
Adds a RADIUS server.
Name |
Description |
Importance |
server hostname |
Hostname or IPv4 address of the RADIUS server. |
Required |
secret |
Specifies the information about the secret to authenticate communication between the RADIUS server and the Cisco CSP 2100. |
Required |
key key |
Specifies a preshared key for the RADIUS server. Supported key value are as follows: · 0: Clear text preshared key · 7: Encrypted preshared key |
Required |
shared-secret shared-secret |
Specifies the preshared secret to authenticate communication between the RADIUS server and the Cisco CSP 2100. The preshared secret is alphanumeric, case sensitive, and has a maximum of 63 characters. |
Required |
auth-port auth-port |
Configures the RADIUS server to perform authentication functions and associates a specific host with the port that receives RADIUS authentication messages. The default port is 1812. The range is from 0 to 65535. |
Optional |
acct-port acct-port |
Configures the RADIUS server to perform accounting functions and associates a specific host with the port that receives RADIUS accounting messages. The default port is 1813. The range is from 0 to 65535. |
Optional |
Example
Release |
Modification |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/radius-server/options -H "Content-Type: application/vnd.yang.data+json" -d '{"option": {"timeout": "seconds"}}'
Configures the duration to wait for a response from a RADIUS server before declaring a timeout failure.
Name |
Description |
Importance |
timeout seconds |
Timeout interval for the RADIUS server. The default timeout interval is 3 seconds and the valid range is from 1 to 10 seconds. |
Required |
Example
curl -u admin:admin -X PATCH https://198.51.100.1/api/running/security_servers/radius-server/options -H "Content-Type: application/vnd.yang.data+json" -d '{"option": {"timeout" : "6"}}'
Release |
Modification |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/radius-server/options -H "Content-Type: application/vnd.yang.data+json" -d '{"option": {"retransmit": "count"}}'
Configures the number of retransmits allowed before reverting to local authentication.
Name |
Description |
Importance |
retransmit count |
Number of retransmits allowed before reverting to local authentication. The default number of retransmits is 1 and the valid range is from 0 to 5. |
Required |
Example
Release |
Modification |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/radius-server/host/hostname
Deletes a RADIUS server.
Name |
Description |
Importance |
hostname |
Hostname or IP address of the RADIUS server. |
Required |
Example
Release |
Modification |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/operational/repository/_operations/get_images -H "Content-type: application/vnd.yang.data+json"
Retrieves information about all files available in the repository.
Release |
Modification |
2.0.0 |
This API is introduced. |
https://ip-address:port-number/api/operational/repository/image/image_name/_operations/get_image -H "Content-type: application/vnd.yang.data+json"
Retrieves detailed information about a file available in the repository.
Name |
Description |
Importance |
image_name |
Name of the file |
Required |
Example
Release |
Modification |
2.0.0 |
This API is introduced. |
https://ip-address:port-number/api/operational/repository/mount/ storage_name/image/image_name/_operations/get_image -H "Content-type: application/vnd.yang.data+json"
Retrieves detailed information about a remote file.
Name |
Description |
Importance |
storage_name |
Storage space name |
Required |
image_name |
Name of the file |
Required |
Example
Release |
Modification |
2.0.0 |
This API is introduced. |
Method
POST
Modules
To copy an image file to Cisco CSP 2100, use the following REST APIs:
1. curl -u username:password -c cookie_filename.txt -X POST -H "X-Requested-With: XMLHttpRequest" https://CSP2100_MGMT_IP/api/login
When you run this REST API to login to Cisco CSP 2100, a .txt file with specified name is created containing information about the user authentication credentials. This REST API must return "OK" response. If it returns "Unauthorized" response, it means that the user credentials are incorrect.
2. curl -b cookie_filename.txt -F 'file=@/filepath/filename' -X POST https://CSP2100_MGMT_IP/api/uploadfile
3. curl -b cookie_filename.txt -X POST -H "X-Requested-With: XMLHttpRequest" https://CSP2100_MGMT_IP/api/logout
Description
Copies the specified image file to Cisco CSP 2100.
Parameters
Name |
Description |
Importance |
cookie_filename.txt |
Name of the file that is created when you run the REST API to login to Cisco CSP 2100. This file contains information about the user authentication credentials. By default, this file is created in the current working directory. If required, you can specify a different path for this file. |
Required |
/filepath/filename |
Location and name of the image file to be copied. |
Required |
Example
API History
Release |
Modification |
1.0.0 |
This API is introduced. |
https://ip-address:port-number/api/running/file-create/_operations/create -H "Content-Type: application/vnd.yang.data+json" -d '{"input": {"file-name": "file-name", "content": "content"}}'
Allows you to create a new text file that resides in the local repository. The new files does not overwrite existing files or can be edited after creation. These new files are not copied to other nodes in cluster mode.
Name |
Description |
Importance |
file-name file-name |
Specifies the name of the text file. If the specified name of the text file exists, creating a file process is aborted. Valid values are alphanumeric, underscore, dash, period. The range is from 1 to 80 characters. |
Required |
content content |
Specifies the text to be included in file. Valid values are a string up to 4096 characters and spaces are allowed in the content. |
Optional |
Example
Release |
Modification |
2.3.0 |
This API is introduced. |
To copy a file from Cisco CSP 2100 in Release 2.2.3 and later releases, use the following REST APIs:
1. curl -u username:password -c cookie_filename.txt -X POST -H "X-Requested-With: XMLHttpRequest" https://CSP2100_MGMT_IP/api/login
When you run this REST API to login to Cisco CSP 2100, a .txt file with specified name is created containing information about the user authentication credentials. This REST API must return "OK" response. If it returns "Unauthorized" response, it means that the user credentials are incorrect.
2. curl -b cookie_filename.txt -o destination_filename -X GET https://CSP2100_MGMT_IP/api/getfile/filetype/source_filename
3. curl -b cookie_filename.txt -X POST -H "X-Requested-With: XMLHttpRequest" https://CSP2100_MGMT_IP/api/logout
Copies the specified image, log, or certificate file to a local or remote system.
Name |
Description |
Importance |
cookie_filename.txt |
Name of the file that is created when you run the REST API to login to Cisco CSP 2100. This file contains information about the user authentication credentials. By default, this file is created in the current working directory. If required, you can specify a different path for this file. |
Required |
destination_filename |
Name with which the file is copied. |
Required |
filetype |
Type of the file to be copied. Valid options are image, log, and certificate. |
Required |
source_filename |
Name of the file to be copied. |
Required |
Example
Release |
Modification |
2.2.3 |
This API is introduced. |
To copy files from Cisco CSP 2100 in Release 2.2.2, use the following REST APIs:
1. curl -u username:password -c cookie_filename.txt -X POST -H "X-Requested-With: XMLHttpRequest" https://CSP2100_MGMT_IP/api/login
When you run this REST API to login to Cisco CSP 2100, a .txt file with specified name is created containing information about the user authentication credentials. This REST API must return "OK" response. If it returns "Unauthorized" response, it means that the user credentials are incorrect.
2. curl -b cookie_filename.txt -o destination_filename -X POST -d '{"filetype": "filetype"}' https://CSP2100_MGMT_IP/api/download/source_filename
3. curl -b cookie_filename.txt -X POST -H "X-Requested-With: XMLHttpRequest" https://CSP2100_MGMT_IP/api/logout
Copies the specified image, log, or certificate file to a local or remote system.
Name |
Description |
Importance |
cookie_filename.txt |
Name of the file that is created when you run the REST API to login to Cisco CSP 2100. This file contains information about the user authentication credentials. By default, this file is created in the current working directory. If required, you can specify a different path for this file. |
Required |
destination_filename |
Name with which the file is copied. |
Required |
filetype filetype |
Specifies the type of the file to be copied. Valid options are image, log, and cert. |
Required |
source_filename |
Name of the file to be copied. |
Required |
Examples
Release |
Modification |
2.2.3 |
This API is removed and a new API is introduced for Release 2.2.3 and later releases. New API is described in the Copy Files from Cisco CSP 2100 (Release 2.2.3 and Later Releases) section. |
2.2.2 |
This API is introduced. |
https://ip-address:port-number/api/operational/images/image/filename/_operations/delete-image
Deletes an image file from the repository.
Name |
Description |
Importance |
filename |
Name of the image file. |
Required |
Example
Release |
Modification |
2.0.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/operational/images/image/filename/_operations/rename-image
Description
Rename an image file from the repository.
Parameters
Name |
Description |
Importance |
new-image-name filename |
Specifies name of the new image file. |
Required |
Example
API History
Release |
Modification |
2.6.1 |
This API is introduced. |
https://ip-address:port-number/api/running/resources/resource/csp-2100
https://ip-address:port-number/api/running/resources/resource/csp-2100/name
Description
Retrieves information about the system resources for Cisco CSP 2100. For each Cisco CSP 2100, there is only one resource and the resource name are set to csp-2100.
Name |
Description |
Importance |
name |
Name of the resource feature. |
Required |
Example
Release |
Modification |
2.5.0 |
New command, dns has been introduced. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/resources/resource/csp-2100 -H "Content-Type: application/vnd.yang.data+json" -d '{"resource": {"default_gw": "default_gw", "dns_server": "dns_server", "dns": {"dnsip":"dnsip"}, "domain_name": "domain_name", "host_name": "host_name", "ip_address": "ip_address", "log_severity": "log_severity", {"ip-receive-acl": {"source":"source_ip_address", "service": "service", "priority": "priority", "action": "action"}}, "mgmt_mtu": "mgmt_mtu ", "mgmt_pnic": "pnic_name ", "mgmt_pnic_mode": "mgmt_pnic_mode", "mgmt_vlan": "vlan_num", "netmask": "netmask", {"syslog_server": {"host": "ip/hostname ", "host": "ip/hostname "}}, "rsyslog_tcp_port": "rsyslog_tcp_port", "rsyslog_udp_port": "rsyslog_udp_port", "rsyslog_udp_only": "rsyslog_udp_only", "service-mgmt-pnic": pnic_name, {"storagelist": {"storage": [{"mount_name": "mount_name", "storagetype": "nfs", "storage_space_total_gb": "storage_space", "server_ip": "server_ip", "server_path": "server_path"}]}}}}'
Method
POST
Module
https://ip-address:port-number/api/running/resources/resource/csp-2100 -H "Content-Type: application/vnd.yang.data+json" -d '{"host-vnic": {"vnic-name": "nfs_network", "vnic-ip": "vnic-ip", "vnic-netmask": "vnic-netmask", "route": [{"network": "network", "next-hop": "next-hop"} , { "network": "network", "next-hop": "next-hop"}], "vnic-vlan": "vnic-vlan", "external-pnic": "pnic-name"}}'
Modifies the csp-2100 resource. For each Cisco CSP 2100, there is only one resource and the resource name is set to csp-2100.
Name |
Description |
Importance |
default_gw default_gw |
Specifies the default gateway for the resource. |
Optional |
dns_server dns_server (Deprecated) |
Specifies the DNS server for the resource (Deprecated). |
Optional (Deprecated) |
dns dnsip |
Specifies multiple DNS servers for a resource. |
Optional |
domain_name domain_name |
Specifies the domain name for the resource. |
Optional |
host_name host_name |
Specifies the host name for the resource. |
Optional |
ip_address ip_address |
Specifies the IP address of the resource. |
Optional |
log_severity log_severity |
Specifies the severity level for log messages. Valid values are debug, info, notice, warning, error, critical, alert, and emerg. Default is info. |
Optional |
ip-receive-acl |
Enables the Access Control List (ACL) access for the management interface. When this feature is enabled, only specified source networks can access the management interface. For detailed information about the parameters for this feature, see the Configure ACL Access for the Management Interface section. |
Optional |
mgmt_mtu mgmt_mtu |
Specifies the maximum transmission unit (MTU) size for the management interface. By default, the MTU size for the management interface (mgmt0) is 1500 bytes. To support jumbo frames, you can configure the MTU size of up to 9000 bytes. Note: To maintain connectivity, when you change MTU setting on CSP 2100, ensure that similar MTU configuration is also applied to the upstream switch. |
Optional |
mgmt_pnic pnic_name |
Specifies the management pNIC for Cisco CSP 2100. You can specify a pNIC or a port channel as the management pNIC. |
Optional |
mgmt_pnic_mode mgmt_pnic_mode |
Specifies the mode for the management pNIC. Valid values are shared and dedicated. Default is shared. In shared mode, the management interface pNIC can be shared with any service VMs. The management interface pNIC carries the management traffic of Cisco CSP 2100 and the management and data traffic of any service using this pNIC. In dedicated mode, the management interface pNIC carries only the management traffic of Cisco CSP 2100. In shared mode, you can change the management interface pNIC to any available pNIC. In dedicated mode, you can change the management interface pNIC only to a pNIC that is not associated with any service. Note: If you try to change the mode of the management interface pNIC to dedicated while a service is currently using it, you get the “Management PNIC already in service use” error. Similarly, if the management interface pNIC is in dedicated mode and you try to create a service using the management pNIC, you get the “PNIC is dedicated to management” error. |
Optional |
mgmt_vlan vlan_num |
Specifies the management VLAN corresponding to the management (mgmt0) interface. Valid range is from 1 to 4094. |
Optional |
netmask netmask |
Specifies the netmask. |
Optional |
host-vnic host-vnic |
Specifies an additional host vnic to create an alternate network for the host to communicate. You can use this to create a dedicated network for NFS traffic. A host-vnic configuration requires an external PNIC, which is separate from the CSP management. The IP and route configuration of the host-vnic is used to communicate through that PNIC. |
Optional |
syslog_server |
Specifies the IPv4 IP address or host name of the remote syslog servers. This IP address or host name must be reachable from Cisco CSP 2100. You can configure the Cisco CSP 2100 syslog as a client to send internal log messages to multiple remote syslog servers on TCP and UDP ports or only UDP port. The remote syslog server should be capable of receiving RFC-5424 formatted logging messages. If the rsyslog_udp_only parameter is not set to true, you must specify both transport ports. Note: You can send log messages to a maximum of eight syslog servers. |
Optional |
rsyslog_tcp_port rsyslog_tcp_port |
Specifies the TCP port for the remote syslog server. Note: You must configure the remote syslog server and specify the same TCP port for transport. For example, if you have specified port 9020 as rsyslog_tcp_port, then on the remote syslog server, configure the TCP port for 9020. You cannot set this parameter if the rsyslog_udp_only parameter is set to true. |
Optional |
rsyslog_udp_port rsyslog_udp_port |
Specifies the UDP port for the remote rsyslog server. Note: You must configure the remote syslog server and specify the same UDP port for transport. For example, if you have specified port 514 as rsyslog_udp_port, then on the remote syslog server, configure the UDP port for 514. |
Optional |
rsyslog_udp_only rsyslog_udp_only |
Specifies that the remote syslog server uses only UDP transport. Valid values are true and false. Note: When you set this parameter to true, you cannot set the rsyslog_tcp_port parameter. |
Optional |
service-mgmt-pnic pnic_name |
Specifies the single pNIC or port channel to be used as the dedicated service management interface. Following are the guidelines for the dedicated service management interface: · Only one dedicated service management interface can be active at a time. · The specified pNIC cannot be a member of a port channel. · The specified pNIC cannot be same as the Cisco CSP 2100 management pNIC (mgmt_pnic). · The dedicated service management interface can be changed only when it is not in use. In addition, the port or the port channel that you are planning to assign as the dedicated service management interface should not be in use. · The dedicated service management interface can be used by multiple services and on multiple vNICs in the same service. · The dedicated service management interface is deleted only when it is not in use. |
Optional |
storagelist |
Adds NFS storage space. For information about the storagelist parameters, see the Add NFS Storage Space and Delete NFS Storage Space sections. |
Optional |
Examples
Release |
Modification |
2.5.0 |
· New command, dns has been introduced. · The host-vnic parameter has been introduced. |
2.2.5 |
The syslog_server parameter is introduced and rsyslog_ip parameter is removed. |
2.2.0 |
The ip-receive-acl, mgmt_vlan, and service-mgmt-pnic parameters are added. |
2.1.0 |
The mgmt_mtu and mgmt_pnic_mode parameters are added. |
2.0.0 |
The storagelist and rsyslog_udp_only parameters are added. |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/resources/resource/csp-2100/name
Deletes a configured resource feature.
Name |
Description |
Importance |
name |
Name of the configured resource parameter that you want to delete. You cannot delete the csp-2100 resource and the ip_address, netmask, default_gw, mgmt_pnic, host_name, csp_version, num_cpus_total, and ram_total_mb parameters. Note: When you delete the configured management VLAN, the management VLAN is reset to 1. |
Required |
Example
Release |
Modification |
2.0.0 |
This API is introduced. |
POST:
https://ip-address:port-number/api/running/resources/resource/csp-2100/ip-receive-acls -H "Content-Type: application/vnd.yang.data+json" -d '{"ip-receive-acl": {"source": "source_ip_address", "service": "service", "priority": "priority", "action": "action"}}'
https://ip-address:port-number/api/running/resources/resource/csp-2100/ip-receive-acls -H "Content-Type: application/vnd.yang.data+json" -d '{"resource: ip-receive-acls": {"ip-receive-acl": {"source": "source_ip_address", "service": "service", "priority": "priority", "action": "action"}}}'
Configures the ACL access for the management interface.
Name |
Description |
Importance |
ip-receive-acl |
Enables the ACL access for the management interface. When this feature is enabled, only specified source networks can access the management interface. |
Required |
source source_ip_address |
Specifies the IPv4 IP address of the source network in the ip-address/prefix format. If the source network is specified as 0.0.0.0/0, the configuration is applicable to all source networks. |
Required |
service service |
Specifies the service type for the management ACL access. Valid values are: · ssh: Includes port 22 and port 2024. · https: Includes port 80, port 443 and all ports to access the service console. · snmp: Includes port 161 and configured NET-SNMP port. · netconf: Includes port 2022. This port is required for communication between nodes of a cluster. · icmp: Provides ability to ping the host. You can specify one, more than one, or all service types in this parameter. To specify multiple service types, enter the values within the square brackets []; for example, service ["ssh", "snmp"]. If you do not specify any specific service, the configuration is applicable to all services. |
Optional |
priority priority |
Specifies the priority for the ACL rule. Each ACL rule must have a unique priority value. Valid range is from 0 to 65,535. ACL rule with priority 0 has the highest priority. Whenever an ACL rule with priority 0 is matched, Cisco CSP 2100 performs the action associated with this ACL rule and does not look up any lower priority ACL rules. |
Required |
action action |
Specifies the action for the packets received from the source network. Valid values are: · accept: Accept the packets. · reject: Reject the packets and return the error to the source network. · drop: Drop packets immediately and do not send any information to the source network. |
Required |
Examples
Specify Multiple Service Types
Release |
Modification |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/running/resources/resource/csp-2100/ip-receive-acls
https://ip-address:port-number/api/running/resources/resource/csp-2100/ip-receive-acls/ip-receive-acl/"ip-address/prefix"
https://ip-address:port-number/api/running/resources/resource/csp-2100/ip-receive-acls?deep
Retrieves information about all source networks or a specific source network for ACL access for the management interface.
To get detailed information about all source networks or a specific source network, use the ?deep parameter.
Name |
Description |
Importance |
ip-address/prefix |
IP address of the source network. Note: You must specify the ip-address/prefix value within the quotation marks ("") as shown in the Example section. |
Required |
Example
Release |
Modification |
2.2.0 |
This API is introduced. |
https://ip-address:port-number/api/running/resources/resource/csp-2100 -H "Content-Type: application/vnd.yang.data+json" -d '{"resource": {"storagelist":{"storage":[{"mount_name":"name", "storagetype":"nfs", "storage_space_total_gb":"storage_space", "server_ip":"server_ip", "server_path":"server_path"}]}}}'
Adds an NFS storage space.
Name |
Description |
Importance |
mount_name name |
Specifies the storage space name. |
Required |
storagetype |
Specifies the storage type. Valid value is nfs. |
Required |
storage_space_total_gb storage_space |
Specifies the total storage space (in GB). |
Required |
server_ip server_ip |
Specifies the IP address of the server. |
Required |
server_path server_path |
Specifies the path on the server. |
Required |
Example
Release |
Modification |
2.0.0 |
This API is introduced. |
https://ip-address:port-number/api/running/resources/resource/csp-2100/storagelist/storage/name
Deletes an NFS storage space.
Note: Before deleting an NFS storage space, make sure that no service on this host is using this NFS storage space.
Name |
Description |
Importance |
name |
Storage space name |
Required |
Example
Release |
Modification |
2.0.0 |
This API is introduced. |
https://ip-address:port-number/api/running/resources/resource/csp-2100/csp_version
Retrieves information about the Cisco CSP 2100 version.
Release |
Modification |
1.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/resources/resource/csp-2100/description
Description
Retrieves description about the Cisco CSP 2100.
Parameters
None
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/ resources/resource/csp-2100 -H "Content-type: application/vnd.yang.data+json" -d '{"description":"new description"}'
Description
Allows you to add a description for the CSP resource.
Parameters
Name |
Description |
Importance |
description new description |
Specifies a description for a CSP resource. Valid values are a string up to 256 characters, underscores, dashes, periods, and commas. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
PUT
Module
https://ip-address:port-number/api/running/resources/resource/csp-2100/description -H "Content-type: application/vnd.yang.data+json" -d '{"description":"new description"}'
Description
Allows you to edit and modify a CSP-2100 description.
Note: Only users who belong to the admin-group can modify CSP-2100 descriptions
Parameters
Name |
Description |
Importance |
description new description |
Specifies a new description of a CSP 2100 resource that is being changed. Valid values are a string up to 256 characters, underscores, dashes, periods, and commas. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
DELETE
Module
https://ip-address:port-number/api/running/resources/resource/csp-2100/description
Description
Deletes description of a CSP 2100 resource.
Note: Only users who belong to the admin-group can delete CSP resource description.
Parameters
None
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
https://ip-address:port-number/api/running/services
https://ip-address:port-number/api/running/services/service/name
https://ip-address:port-number/api/running/services?deep
Retrieves information about all services or a specific service.
To get detailed information about all services or a specific service, use the ?deep parameter.
Name |
Description |
Importance |
name |
Name of the service |
Required |
Example
Release |
Modification |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/services -H "Content-type: application/vnd.yang.data+json" –d '{"service":{"name":"name", "day0_filename":"day0_filename", "day0-dest-filename": "day0-dest-filename", "day0-volume-id": "day0-volume-label", "disk_size":"disk_size", "disk-resize":"true_false", "disk_loc":"disk_loc", "disk_storage_name":"disk_location", "disk_type":"disk_type", "firmware":"firmware_type", "secure-boot":"true_false", "image_storage_name":"image_location", "ip": "vnf_mgmt_ip", "iso_name":"iso_name", "cache-mode": "none|writethrough", "vnf-group ":"VNF user group ", "key":"key_value", "vnc_password":"vnc_password", "macid":"mac_id", "monitor":"monitor", "memory":"memory", "novnc-port": "port_num", "numcpu":"numcpu", "power":"mode", "description":"new description", "monitoring": {"monitoring": [{"status": "monitoring-status", "boot-time":"boot-time", "poll-interval":"poll-interval", "failure-retry-cnt":"failure-retry-cnt", "recovery-policy”: {“ip-monitoring” : “recovery-policy”, “link-state-monitoring” : ”recovery-policy”}, "max-recovery-retries":"max-recovery-retries"}]},"properties":"properties", "serial_ports": {"serial_port": [{"serial":"serial_number", "serial_type":"serial_type","service_port":"service_port"}]},"storage_disks": {"storage_disk": [{"storage_disk_id":"id", "storage_disk_location":"disk_location", "storage-disk-image-file ":"image_file_name ", "storage_disk_format":"disk_format", "storage_disk_device":"disk_device", "storage_disk_space_used_gb":"disk_space_used", "storage_disk_space_total_gb":"disk_space_total"}]}, "uuid":"uuid", "vm_type":"vm_type", "vnc_password":"vnc_password", "vnics": {"vnic": [{"nic":"nic_num", "mgmt-vnic":"mgmt-vnic ", "span-port":"span-port ", "model":"model", "native":"vlan_num", "network_name":"network_name", "tagged":"tagged", "type":"type", "passthrough_mode":"pt_mode", "vlan":"vlan_num", "spoofchk":"spoofchk", “monitor-vnic”:”true/false”}]}}}'
Creates or imports a service.
To import a service using an exported image available in the Cisco CSP 2100 repository, specify the name of the exported service in the iso_name parameter. For all other parameters, specify the values that the exported service used.
Starting from release 2.8.0, you can configure the firmware type and secure boot for VNF when creating a service.
Starting from release 2.7.0, you can configure the UUID when creating a service.
Starting from release 2.3.1, you can configure span-port on VNICs to true or false that marks them for spanning later through the span-ports tcpdump action start/stop/show command.
Starting with release 2.3.0, you can configure the monitoring service to monitor the VNF, associate a service with a VNF user group.
Starting with release 2.3.0, the description parameter can be configured for a specific service. To remove the service description, use the no form of this command.
Starting with release 2.3.0, you can configure the monitoring service to monitor the VNF and associate a service with a VNF user group.
Starting with release 2.3.0, the VNC password can be encrypted with the key field.
Starting from release 2.2.5, ISO volume label can be configured only for the first day0 ISO file.
Note: After creating a service, if you want to modify it, you can use the PATCH method.
Name |
Description |
Importance |
name name |
Specifies the name of the service. Note: Once created, you cannot modify the name of a service. |
Required |
day0_filename day0_filename |
Specifies the name of the day0 configuration text or ISO file. The day0 configuration file contains the configuration information that is applied when a service is created. The day0 configuration file must reside in the same directory in which the boot image is located. Starting with Release 2.3.0, you can specify an empty day0 filename. Starting with Release 2.3.0, you can specify up to eight day0 configuration files. When specifying multiple files, separate the file names only with a comma as shown in the following example: "hello.txt,hello1.txt,config.txt" Note: Do not use spaces between the file names or between the comma and file names. |
Optional |
day0-dest-filename day0-dest-filename |
Specifies the name of the day0 destination text or ISO file. The day0 destination file is required for the services that require a predefined configuration file name. Following are the guidelines for the day0 destination filename: · Starting with Release 2.3.0, you can specify up to eight day0 destination files. When specifying multiple files, separate the file names only with a comma as shown in the following example: day0-dest-filename "/config/banner/,/config/banner/,/config/banner/" · Starting with Release 2.3.0, you can specify folder structure format for the day0-dest-filename parameter. For example: day0-dest-filename "/config/banner/,/config/banner/,/config/banner/" Note: The folder structure must begin and end with a forward slash. If the folder structure does not end with a forward slash, the last string in the folder structure is considered as the destination filename. Also, the folder structure cannot include consecutive dots, such as ellipsis. You do not need to specify a value for the day0_filename and can only specify the folder structure for day0-dest-filename. · To use the same filename as the day0_filename, do not specify a value for the day0-dest-filename parameter. For example: "day0_filename": "myday0file" "day0_filename": "file1,file2", "day0-dest-filename":"dest-file1, " When the value of day0-dest-filename parameter is blank or no value is specified, the filename specified in the day0_filename parameter is used for the day0-dest-filename parameter. · To maintain one to one mapping between the day0_filename and the day0-dest-filename parameter values, specify the same number of commas in the day0-dest-filename parameter values as you have specified in the day0_filename parameter values. For example, for the following values for the day0_filename parameter containing one comma: "day0_filename": "file1,file2",the day0-dest-filename parameter values must also contain one comma as shown in the following examples: |
Optional |
|
o "day0_filename": "file1,file2", "day0-dest-filename": "," o "day0_filename": "file1,file2", "day0-dest-filename": "dest-file1,dest-file2" |
|
day0-volume-id day0-volume-label |
Specifies the volume label to be used for ISO file. Valid values are a string up to 32 characters and spaces are allowed in the volume label. Note: You can specify a volume label only for the first day0 ISO file if the first day0 filename configuration is available. All remaining ISO files are system assigned default volume labels. |
Optional |
disk_loc disk_loc |
Specifies the image file to be used for service storage. This parameter is applicable only for Release 1.0. |
Optional |
disk_size disk_size |
Specifies the total amount of disk space available (in GB) for this service. This parameter is not configurable when a QCOW2 image is selected in the iso_name parameter and the disk-resize parameter is set to false. |
Optional |
disk-resize true_false |
Enables or disables the resizing of bootable QCOW2 image. Valid values are true and false. Default value is false. |
Optional |
disk_storage_name disk_location |
Specifies the location of the service image file. Default value is local. You can set the location to be an NFS storage mount point or gluster. Note: Gluster is supported when you create the cluster location with the storage network enabled. |
Optional |
disk_type disk_type |
Specifies the disk type. Valid choices are ide and virtio. |
Optional |
firmware firmware_type |
Specifies the firmware type of VNF. Valid values are legacy and uefi type. Default value is legacy. |
Optional |
image_storage_name image_location |
Specifies the location of the boot image specified as iso_name. The location can be an NFS storage mount point. Default value is local. To specify the NFS location, the NFS storage must have been added as described in the Add NFS Storage Space section. |
Optional |
ip vnf_mgmt_ip |
Specifies the VNF management IP address to be used in the service The VNF Management IP value entered in this parameter does not get configured in the service. This parameter serves only as a reference to the VNF management IP address mapped to a service. |
Optional |
iso_name iso_name |
Specifies the ISO, OVA, QCOW software image file, and zip file to be used to create the service. Note: With Cisco VSM and Cisco VSG services, only ISO image files are supported. |
Required |
cache-mode cache-mode |
Specifies the cache mode of a service. Valid values are none or writethrough. |
Optional |
vnf-group VNF user group |
Specifies the name of the VNF group of a service. |
Optional |
vnc_password vnc_password |
Specifies the VNC password that is being encrypted for the service. Ensure that the VNC password meets the following criteria: · a string between 8 to 64 characters. · at least one digit · at least one special character such as, _, -, ~, #, @, =, +, ^, ] · at least one upper case character · at least one lower case character · no two or more same characters can be provided consecutively · should not match exactly with any dictonary word. |
Optional |
key key_value |
Allows you to configure vnc password with the key field. Default value is zero. Note: VNC password is encrypted and saved with the key value set as seven after encryption. Note: The save and load feature, where the VNC password with key 0 and weak strength has been configured before 2.2.5 does not work. However, the save and load feature with key 7 always work. |
Required if vnc_password is set. |
macid |
Specifies the MAC ID. The MAC ID is automatically generated. You cannot set this parameter. |
Optional |
monitor action |
If monitoring is enabled for a VM and the VM is powered on, you can pause or resume the monitoring of the VM. Valid values are pause or resume. |
Optional |
memory memory |
Specifies the memory allocated for the service. Default is 2048. |
Optional |
novnc-port port_num |
Specifies the port number for the service console. Each service must use a unique port number. Valid range is from 8721 to 8784. Note: Before changing the port of a service, you must set the power mode of the service to off. |
Optional |
numcpu numcpu |
Specifies the number of virtual CPUs for this service. |
Optional |
power mode |
Specifies the power state upon activation. Valid values are off, on, reboot, and reset. Default is off. |
Optional |
description new description |
Specifies a description about the service. Valid values are a string up to 256 characters, underscores, dashes, periods, and commas. |
Optional |
monitoring |
Enables or disables configuring monitoring. For more information about VM monitoring, see the Add VM Monitoring to a Service section. |
Required |
properties properties |
Specifies the properties of the service to be passed to the boot script of the image. You can specify information such as domain ID, svs mode, password, HA role, and VNC_password as shown in the Example section. |
Optional |
secure-boot |
Enables or disables the secure boot for VNF when the firmware type is set to uefi. Valid values are true and false. The default value is false. |
Optional |
serial_ports |
Specifies information about the serial ports. For information about the serial ports parameters, see the Assign Serial Interfaces to a Service section. |
Optional |
storage_disks |
Specifies information about the storage disks. For information about the storage disks parameters, see the Add Storage Disks to a Service section. |
Optional |
uuid |
Specifies the unique string to identify the service. The uuid value is automatically generated. You cannot set this parameter. |
– |
vm_type vm_type |
Specifies the type of the virtual machine for the service. Valid value is generic. |
Optional |
vnc_password vnc_password |
Specifies the VNC password for the service. |
Optional |
vnics |
Specifies the vNICs associated with this service. You can add multiple vNICs at a time by specifying the information in the vnic parameter separated by commas. For information about the vNIC parameters, see the Assign vNICs to a Service section. |
Optional |
Examples
1. Verify that the mount (nfs0) has been created.
2. Use the nfs0 mount to create a new service.
Release |
Modification
|
2.9.0 |
· The link-state-monitoring feature is added. Recovery-policy now has two leaf nodes: ip-monitoring and link-state-monitoring.
· The monitor-vnic keyword is added to vNIC. This can be set to “true” to enable link-state-monitoring for the VNF.
|
2.8.0 |
The firmware and secure-boot parameters are added. |
2.7.0 |
The services are exported in zip format and not tar.gz files. |
2.5.0 |
New command, dns has been introduced. |
2.3.1 |
· vnc_password strong strength validation and strong encryption scheme has been introduced. · The VNIC span-port, spoofchk parameters are added. |
2.3.0 |
· The description parameter is added. · The day0 file name and day0 destination file name supports multiple files. · vnc_password encryption and key field is added. · VM monitoring parameters are added. · The vnf-group parameter has been added. |
2.2.5 |
The day0-volume-id parameter is added. |
2.2.4 |
The disk-resize and storage-disk-image-file parameters are added. |
2.2.2 |
The day0-dest-filename parameter is added. |
2.2.0 |
The novnc-port and ip parameters are added. |
2.0.0 |
The day0_filename, disk_storage_name, image_storage_name, serial_ports, and storage_disks parameters added to this API. |
1.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/services -H "Content-type: application/vnd.yang.data+json" –d '{"service":{"name":"name", "iso_name":"iso_name", "memory":"memory", “numcpu":"numcpu", "power":"mode", "description":"new description", "uuid":"uuid", "vnics": {"vnic": [{"nic":"nic_num", "mgmt-vnic":"mgmt-vnic ", "span-port":"span-port ", "model":"model", "native":"vlan_num", "network_name":"network_name",}]}}}'
Description
Retain a UUID of an exported service when importing the service.
Parameters
Name |
Description |
Importance |
name |
Specifies the name of the service to be exported. |
Required |
iso_name iso_name |
Specifies the ISO, OVA, or QCOW software image file, and zip file to be used to create the service. Note: With Cisco VSM and Cisco VSG services, only ISO image files are supported. |
Required |
memory memory |
Specifies the memory allocated for the service. The default value is 2048 (MB). |
Optional |
numcpu numcpu |
Specifies the number of virtual CPUs for this service. |
Required |
uuid uuid |
Specifies a unique string to identify the service. The uuid value is automatically generated when exporting the service. |
Required |
vnic |
Specifies the number for the vNIC. Valid range is from 0 to 23. In Release 2.2.3 and earlier releases, valid supported range is from 0 to 9. |
Optional |
network_name network_name |
Specifies the name of the network. A network name is required for creating a vNIC. You can specify a pNIC name or a non-pNIC name as the network name. If the name of the network is not a pNIC name, then the network is virtual, and it is accessible only within services on the same Cisco CSP 2100. |
Required |
Usage Guidelines
Before exporting the service, you must note down the UUID of the service and during import you can configure the UUID on the service that you have created.
API History
Release |
Modification |
2.7.0 |
The option to retain a UUID of an exported service is introduced. The services are exported in zip format and not tar.gz files. |
Method
GET
Module
https://ip-address:port-number/api/running/ services/service/name/description
Description
Retrieves description about a specific service.
Parameters
Name |
Description |
Importance |
name |
Specifies the name of the service. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
PUT
Module
https://ip-address:port-number/api/running/services/service/name/description -H "Content-type: application/vnd.yang.data+json" -d '{"description":"new description"}'
Description
Allows you to edit and modify the description of a specific service.
Note: Only users who belong to the service-group can modify the service descriptions.
Parameters
Name |
Description |
Importance |
name |
Name of the service |
Required |
description new description |
Specifies a new description of the specific service that is being changed. Valid values are a string up to 256 characters, underscores, dashes, periods, and commas. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
DELETE
Module
https://ip-address:port-number/api/running/services/service/name/description
Description
Deletes the description of a service.
Note: Only users who belong to the service-group can delete description of a service
Parameters
Name |
Description |
Importance |
name |
Name of the service |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
PUT
Module
https://ip-address:port-number/api/running/services/service/name/emulator-pin -H "Content-type: application/vnd.yang.data+json" -d '{"emulator-pin":"emulator pin"}'
Description
Allows you to edit and modify the emulator thread pinning of a specific service.
Parameters
Name |
Description |
Importance |
name |
Name of the service |
Required |
emulator-pin emulator pin |
Configures the emulator thread pinning on a CPU or range of CPUs. You can configure for emulator thread pinning when powering on a VM. |
Required |
Example
API History
Release |
Modification |
2.4.1 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/operations/ services/?deep
Description
Retrieves mapping information between physical CPUs and virtual CPUs per service. You can view the emulator pinning and vhost-threads mapping. This information is consumed by the resource utilization graph on the GUI.
You can filter the service name, and view the CPU graph per service.
Parameters
Name |
Description |
Importance |
services |
Name of the service |
Required |
API History
Release |
Modification |
2.6.0 |
This API is introduced. |
https://ip-address:port-number/api/running/services/service/name/_operations/export -H "Content-Type: application/vnd.yang.data+json" -d '{"input": {"exported_service_name": "exported_name", "exported_location ": "nfs | local", "exported_nfs_location ": " exported_nfs_location ", "export_live ": "true|false"}}'
Exports a service.
When you export a service, a file named exported_service_name.tar.gz or service_name-clone.tar.gz file is created in the Cisco CSP 2100 repository. It takes few minutes to create this file.
Name |
Description |
Importance |
name |
Specifies the name of the service to be exported. |
Required |
exported_service_name
exported_location
exported_nfs_location
export_live |
Specifies a name for the exported service. If you do not specify a name, the following name is used by default: service_name-clone. Valid values are local or nfs. When you export a service, and exported_location is not set or set to "local", a file named exported_service_name.tar.gz or service_name-clone.tar.gz file is created in the Cisco CSP 2100 repository. It takes few minutes to create this file. When the exported_location parameter is set to "nfs", the exported_nfs_location parameter is a mandatory configuration and it should be a valid configured nfs mount. The exported file is then created in the repository of nfs mount. Valid values are true or false. When export_live is not set or set to false, the VM is paused in the background by CSP when the export is in progress, which causes traffic loss. The VM resumes when export is complete. If export_live is set to true, the VM is exported live and there is no traffic loss. |
Optional |
Example
Release |
Modification |
2.3.1 |
The exported_location, exported_nfs_location, and export_live parameters has been added. |
2.0.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/services/service/name/_operations/export -H "Content-Type: application/vnd.yang.data+json" -d '{"input": {"cancel": ""}}'
Description
Cancels an ongoing export of a service.
Example
API History
Release |
Modification |
2.6.0 |
This API is introduced. |
https://ip-address:port-number/api/running/services/service/name/vnics -H "Content-type: application/vnd.yang.data+json" d '{"vnics": {"vnic": [{"nic":"nic_num", "mgmt-vnic":"mgmt-vnic ", "model":"model", "native":"vlan_num", "network_name":"network_name", "tagged":"tagged", "type":"type", "passthrough_mode":"pt_mode", "vlan":"vlan_num"}]}}'
Assigns vNICs to a service. You can add multiple vNICs at a time by specifying the information in the vnic parameter separated by commas.
Note:
· When a service has passthrough as well as non-passthrough vNICs, we recommend that you first define the non-passthrough vNICs and then define the passthrough vNICs.
· A network name is required for creating a vNIC. Therefore, you must either specify the network name in the network_name parameter or set the mgmt-vnic parameter to true. For more information, see the description of these parameters.
Name |
Description |
Importance |
name |
Name of the service. |
Required |
nic nic_num |
Specifies a number for the vNIC. Valid range is from 0 to 23. In Release 2.2.3 and earlier releases, valid supported range is from 0 to 9. |
Required |
mgmt-vnic mgmt-vnic |
Configures the vNIC to use the dedicated service management interface. Valid values are true and false. When the value of this parameter is true, the configured dedicated service management interface (service-mgmt-pnic) is automatically specified as the value of the network_name parameter. No other value is supported in the network_name parameter. To remove the dedicated service management interface, specify false as the value of this parameter and specify a value in the network_name parameter (as shown in the Examples section). |
Optional |
span-port span-port |
Configures the vNIC to be spanned or not when you issue the span-ports tcpdump action start command from the CLI, REST, or web interface. This flag is always editable. Default is false. Note: Cannot be enabled on vNICs if the type parameter is configured as passthrough. |
Optional |
model model |
Specifies the model of the vNIC. Valid values are e1000 or virtio. Default is virtio. Note: For Cisco VSM and Cisco VSG services, you must specify the model as e1000. |
Optional |
native vlan_num |
Specifies the native VLAN number. Sets the native characteristics when the interface is in trunk mode. If you do not configure a native VLAN, the default VLAN 1 is used as the native VLAN. |
Optional |
network_name network_name |
Specifies the name of the network. A network name is required for creating a vNIC. You can specify a pNIC name or a non-pNIC name as the network name. If the name of the network is not a pNIC name, the network is virtual, and it is accessible only within services on the same Cisco CSP 2100. If the mgmt-vnic parameter is set to true, the configured dedicated management port for services (service-mgmt-pnic) is automatically specified as the value of the network_name parameter. No other value is supported in the network_name parameter. |
Optional |
tagged tagged |
Specifies the tag setting for the port. Valid values are true and false. |
Optional |
type type |
Specifies the type of the port. Valid values are access, passthrough, and trunk. Default is access. |
Optional |
passthrough_mode pt_mode |
Configures the passthrough mode for a service. In the passthrough mode, a pNIC is not connected to a vSwitch and the data of the pNIC is directly passed to the configured service. Valid values are macvtap, pcie, sriov, and none. Default is none. If the type parameter is configured as passthrough, the passthrough_mode parameter must be configured as macvtap or pcie. |
Optional |
vlan vlan_num |
Specifies the VLAN number. If the type parameter is configured as trunk, this parameter specifies a set of VLAN numbers and ranges. Note: You can configure a single VLAN on an SR-IOV VF interface. A VLAN tag is put on the VF interface when the vNIC using a SR-IOV VF is specified. |
Optional |
spoofchk spoofchk |
Specifies the spoofchk knob state on SR-IOV VF. Valid values are off, on. Note: This parameter can be only configured on SR-IOV VF. |
Optional |
monitor-vnic
|
Specifies when the vNIC should be monitored as part of link-state-monitoring feature. If set to “true”, monitoring status needs to be enabled.
|
Optional |
Examples
Release |
Modification |
2.3.1 |
The span-port, spoof-chk parameters are added. |
2.2.0 |
The mgmt-vNIC parameter is added. |
2.0.0 |
The passthrough_mode parameter added to this API. |
1.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/span-ports/_operations/tcpdump -H "Content-type: application/vnd.yang.data+json" –d '{" input ": {" action ": " action"}}'
Description
Globally performs the port spanning and tcpdump on every vNIC that was marked as span-port true through the REST API or the web interface. The start action initiates the spanning and tcpdump, which generates pcap files for each spanned vNIC. The pcap files can be downloaded through the web interface at, Debug>TCP Dump>TCP Dump Files.
After running the spanning and tcpdump, the spanning and tcpdump should be stopped with the stop action form of this API. The subsequent start or stop action overwrites pcap files, if start or stop is run for the same vNICs. The pcap files have a maximum limit of 400K packets. There are no restrictions on a user to run this command.
If there are no VNICs enabled for spanning on VNF vNICs, you should not use these commands. You can check the vNICs that are enabled for spanning with the action show commands.
Parameters
Name |
Description |
Importance |
action action |
Valid values are start, stop, and show. The show action gives you a list of each service coupled with its vNICs, their network_names and nic numbers that are span-port enabled. The start action spans and then runs tcpdump to a pcap file for each vNIC shown by the show action. The stop action cleanly removes all the spanned ports, and finishes the tcpdump to pcap files. |
Required |
Example
API History
Release |
Modification |
2.3.1 |
This API is introduced. |
https://ip-address:port-number/api/operational/services
https://ip-address:port-number/api/operational/services/service/name/vnics/vnic/nic_num/mac-address
https://ip-address:port-number/api/operational/services/deep?
Retrieves information about the MAC addresses of vNIC and VF associated with a service.
To get detailed information about statistics of all NIC interfaces per service, use the ?deep parameter.
Name |
Description |
Importance |
name |
Name of the service |
Required |
nic_num |
vNIC number |
Required |
Example
Release |
Modification |
2.6.0 |
Displays statistics of all NIC interfaces per service. |
2.2.4 |
This API is introduced. |
https://ip-address:port-number/api/running/services -H "Content-type: application/vnd.yang.data+json" –d '{"service": {"name": "name", "serial_ports": {"serial_port": [{"serial":"serial_number", "serial_type":"serial_type", "service_port":"service_port"}]}}}'
Assigns serial port to a service. You can assign up to four serial ports to a service. You can add multiple serial ports at a time by specifying the information in the serial_port parameter separated by commas.
Name |
Description |
Importance |
name name |
Specifies the name of the service. |
Required |
serial serial_number |
Specifies a number for the serial port. Valid range is from 0 to 3. |
Required |
serial_type serial_type |
Specifies the type of the serial port. Valid values are console and telnet. The console value is valid only on serial number 0. |
Required |
service_port service_port |
Specifies the telnet port number for the telnet serial type. Valid range is from 1024 to 65,535. |
Required |
Example
Release |
Modification |
2.0.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/services/ -H "Content-type: application/vnd.yang.data+json" –d '{"service": {"name": "name", "monitoring": {"monitoring": [{"status":"monitoring-status", " boot-time ":" boot-time ", "poll-interval ":"poll-interval ", "failure-retry-cnt ":"failure-retry-cnt", "recovery-policy": {“ip-monitoring” : “recovery-policy”, “link-state-monitoring” : ”recovery-policy”}, "max-recovery-retries":"max-recovery-retries"}]}}}'
Description
Adds VM monitoring to a service.
Parameters
Name |
Description |
Importance |
name name |
Specifies the name of the service. |
Required |
monitoring status |
Enables or disables configuring monitoring. Valid values are Enabled and Disabled. |
Required |
boot-time boot-time |
Specifies the time in seconds to be waited after deployment, until monitoring starts. Configure according to the VM boot time. |
Required |
poll-interval poll-interval |
Specifies the time interval in seconds at which the polling should be performed. |
Required |
failure-retry-cnt failure-retry-cnt |
Specifies the number of ping failures before recovery attempt. Valid range is from 0 to 999. |
Required |
recovery-policy ip-monitoring
|
Specifies the recovery action to be taken when IP monitoring failure is detected. Valid values are reboot, shutdown, or none.
|
Required |
recovery-policy link-state-monitoring
|
Specifies the recovery action to be taken when link state failure is detected for the vNICs that have monitor-vNIC set to true. Valid values are shutdown or none.
|
Required |
max-recover-retries max-recover-retries |
Specifies the number of times recovery policy should be attempted. Valid range is from 0 to 16. |
Required |
Example
curl -ku admin:admin -X POST https://192.0.2.1/api/running/services/ -H "Content-Type:application/vnd.yang.data+json" -d '{"service": { "name": "csr", "iso_name": "csr1000v-universalk9.16.04.01.iso", "power": "on", "ip": "10.193.75.160", "vnics": { "vnic": [ {"nic": 0, "mgmt-vnic": "false", "network_name": "Eth1-0", “monitor-vnic”:”true”} ] }, "monitoring": { "status": "enabled", "boot-time": 600, "poll-interval": 30, "failure-retry-cnt": 2, "recovery-policy": {“ip-monitoring” : “none”, “link-state-monitoring” : ”none”}, "max-recovery-retries": 2 } } }'
API History
Release |
Modification |
2.9.0 |
Added support for link-state-monitoring. |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/ services/service/name/monitoring
Description
Retrieves VM monitoring information about a specific service.
Parameters
Name |
Description |
Importance |
name |
Specifies the name of the VM. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/csp_users/groups -H "Content-Type:application/vnd.yang.data+json" -d '{"group": {"name": "group_name", "type": "group_type "}}'
Description
Creates a new VNF user group.
Parameters
Name |
Description |
Importance |
name VNF user group |
Specifies the VNF group name of a service. Valid values are an alphanumeric string except admin-group, operator-group, service-group, and vnf-operator-group. |
Required |
type group_type |
Specifies the group type that can be either, none, service, operator, or vnf-operator. The type none gives permissions that is equivalent to type service. Each of these group types mimic the permissions of the base groups of the same prefix. This behavior means that the operator type vnf-groups has read-only permissions on VNFs that have this group as their vnf-group. It is similar to a base operator-group. Default is of type service. |
Optional |
Examples
API History
Release |
Modification |
2.3.1 |
This API is extended for group type, operator and vnf-operator. |
2.3.0 |
This API is introduced. |
Method
DELETE
Module
https://ip-address:port-number/api/running/csp_users/groups/group/group-name
Description
Deletes a configured VNF user group.
Parameters
Name |
Description |
Importance |
group-name |
VNF group name of a service |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
PATCH
Module
https://ip-address:port-number/api/running/services /service/VM-name -H "Content-Type:application/vnd.yang.data+json" -d '{"service": {" vnf-group": " new-vnf-group"}}'
Description
Modifies an existing VNF user group associated with a service.
Parameters
Name |
Description |
Importance |
vnf-group new-vnf- group |
Specifies the name of the new VNF group of a service. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
https://ip-address:port-number/api/running/services -H "Content-type: application/vnd.yang.data+json" –d '{"service": {"name": "name", {"storage_disk": [{"storage_disk_id":"id", "storage_disk_location":"disk_location", "storage-disk-image-file ":"image_file_name ","storage_disk_format":"disk_format", "storage_disk_device":"disk_device", "storage_disk_space_used_gb":"disk_space_used", "storage_disk_space_total_gb":"disk_space_total", "storage_disk_type":"disk_type"}]}}}'
Adds storage disks to a service. You can add up to two storage disks to a service.
Note: Before adding a storage disk to a service, you must set the power mode of the service to off.
Name |
Description |
Importance |
name name |
Specifies the name of the service. |
Required |
storage_disk_id id |
Specifies the ID of the storage disk. For releases earlier to 2.8.0, valid range is from 1 to 2. Starting from 2.8.0, valid values are 1 to 5. |
Required |
storage_disk_location disk_location |
Specifies the location of the storage disk. It can be a local location or an NFS-mounted location. |
Optional |
storage-disk-image-file image_file_name |
Specifies the local or NFS-mounted ISO, RAW, or QCOW2 image file to be used as the additional storage disk for a service. A QCOW2 or RAW image is mounted as disk and an ISO image is mounted as CDROM. You can add up to two additional storage disks. |
Optional |
storage_disk_format disk_format |
Specifies the format of the storage disk. Valid values are raw and qcow2. Default is raw. |
Optional |
storage_disk_device disk_device |
Specifies the storage device. Valid values are disk or cdrom. Default is disk. |
Optional |
storage_disk_space_used_gb disk_space_used |
Specifies the total amount of used disk space (in GB). You cannot set this parameter. |
– |
storage_disk_space_total_gb disk_space_total |
Specifies the total amount of available disk space (in GB). |
Optional |
storage_disk_type disk_type
|
Specifies the storage disk type. Valid choices are ide and virtio. Default is ide. |
Optional |
Examples
Release |
Modification |
2.2.4 |
The storage-disk-image-file parameter is added. |
2.2.0 |
The storage-disk-type parameter is added. |
2.0.0 |
This API is introduced. |
https://ip-address:port-number/api/running/services/service/name/storage_disks
https://ip-address:port-number/api/running/services/service/name/storage_disks/storage_disk/id
Deletes all storage disks or a specific storage disk.
Note: Before deleting a storage disk, you must set the power mode of the service to off.
Name |
Description |
Importance |
name |
Name of the service |
Required |
id |
ID of the storage disk |
Optional |
Examples
Release |
Modification |
1.0 |
This API is introduced. |
Method
PUT
Module
https://ip-address:port-number/api/running/services
https://ip-address:port-number/api/running/services/service/name/
Description
Deploys a service by using the .img file format and also saves the .img file of the service, before deleting it.
Note: You cannot save the .img file of a service in a powered on state and hence ensure that you power off the service to save it before deploying the service.
Parameters
Name |
Description |
Importance |
name |
Name of the service |
Required |
retain-vm-disk true_false |
Enables or disables the saving of the .img file of a service. Valid values are true and false. Default value is false. |
Optional |
Examples
API History
Release |
Modification |
2.5.0 |
This API is introduced. |
https://ip-address:port-number/api/running/services
https://ip-address:port-number/api/running/services/service/name
Deletes all services or a specific service.
Note: Before deleting a service, you must set its power mode to off.
Name |
Description |
Importance |
name |
Name of the service |
Optional |
Examples
Release |
Modification |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/session
Retrieves information about the configured idle timeout for sessions.
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/session -H "Content-type: application/vnd.yang.data+json" -d '{"session": {"idle-timeout": seconds}}'
Configures the idle timeout for sessions.
Name |
Description |
Importance |
seconds |
Number of seconds. The range is from 0 to 8182 seconds. Use 0 to disable the session idle timeout. |
Required |
Usage Guidelines
Only the members of admin-group group can configure the idle timeout for a session. The configured idle timeout is applicable to all users.
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/agent
Retrieves information about the SNMP agents.
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/agent -H "Content-type: application/vnd.yang.data+json" -d '{"engineID" : "engine_id"}'
Specifies the engine ID for an SNMP agent.
Note: Once configured, the engine ID for an SNMP agent cannot be deleted. You must configure an SNMP agent before configuring a SNMP community, group, user, host, or trap.
Name |
Description |
Importance |
engineID engine_id |
Specifies the ID of the local or remote SNMP engine in hexadecimal format. Engine ID must be of minimum 5 octets. |
Required |
Example
API History
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/communities
https://ip-address:port-number/api/running/snmp/communities/community/name
Retrieves information about all SNMP communities or a specific SNMP community.
Name |
Description |
Importance |
name |
Name of the SNMP community |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/communities/community -H "Content-type: application/vnd.yang.data+json" -d '{"community" : {"community-name" : "name", "community-access" : "access"}}'
Creates or modifies an SNMP community.
Note: You must configure an SNMP agent before configuring an SNMP community.
Name |
Description |
Importance |
community-name name |
Specifies the name of the SNMP community. |
Required |
community-access access |
Specifies the access for this community. Only readOnly access is supported. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/communities/community/name
Deletes an SNMP community.
Name |
Description |
Importance |
name |
Name of the SNMP community |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/groups
https://ip-address:port-number/api/running/snmp/groups/group/name
Retrieves information about all SNMP groups or a specific SNMP group.
Name |
Description |
Importance |
name |
Name of the SNMP group |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/groups -H "Content-type: application/vnd.yang.data+json" -d ' {"group" : {"group-name" : "name", "group-context-prefix" : "group-context-prefix", "group-version" : version, "security-level" : "security-level "","read" : "readview ", "write" : "writeview", "notify" : "notifyview"}}'
Creates or modifies an SNMP group.
Note: You must configure an SNMP agent before configuring an SNMP group.
Name |
Description |
Importance |
group-name name |
Specifies the name of the SNMP community. |
Required |
group-context-prefix group-context-prefix |
Specifies the context prefix. For SNMPv1 and SNMPv2c, only snmp context prefix is supported. For SNMPv3, starting with Release 2.2.2, you can specify any context prefix. You can also configure null context to run an SNMPv3 query without specifying the context name. To configure null context, use the \”\” character sequence as shown in the Examples section. In Release 2.2.1 and earlier releases, only snmp context prefix is supported with SNMPv3. |
Required |
group-version version |
Specifies the SNMP version and the security level. Supported SNMP versions are as follows: · 1: SNMPv1 · 2: SNMPv2c · 3: SNMPv3 |
Required |
security-level security-level |
Specifies the security level for authentication and privacy. Supported security levels are as follows: · noAuthNoPriv: Security level that provides only user validation. · authNoPriv: Security level that provides authentication (MD5 or SHA). · authPriv: Security level that provides both authentication (MD5 or SHA) and encryption (AES or DES). |
Required |
read readview |
Specifies the name of the view for read access. |
Required |
write writeview |
Specifies the name of the view for write access. |
Required |
notify notifyview |
Specifies the name of the view for notify access. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/groups/group/name
https://ip-address:port-number/api/running/snmp/groups
Deletes an SNMP group or all SNMP groups.
Name |
Description |
Importance |
name |
Name of the SNMP group |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/users
https://ip-address:port-number/api/running/snmp/users/user/name
Retrieves information about all SNMP users or a specific SNMP user.
Name |
Description |
Importance |
name |
Name of the SNMP user |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/users -H "Content-Type: application/vnd.yang.data+json" -d '{"user" : {"user-name" : "username", "auth-protocol" : "authprotocol ", "priv-protocol" : "privprotocol ", "passphrase" : "passphrase", "user-group" : "groupname", "user-version" : version}}'
Creates or modifies an SNMP user.
Note: You must configure an SNMP agent before configuring an SNMP user.
Name |
Description |
Importance |
user-name username |
Specifies the name of the SNMP user. |
Required |
auth-protocol authprotocol |
Specifies the authentication protocol. Valid values are: · MD5: Message Digest algorithm · SHA: Secure Hash algorithm |
Required |
priv-protocol privprotocol |
Specifies the User-based Security Model (USM). Valid values are: · des: Data Encryption Standard algorithm · aes: Advanced Encryption Standard algorithm |
Required |
passphrase passphrase |
Specifies the passphrase. The minimum length required for a passphrase is 8 characters. |
Optional |
user-group groupname |
Specifies the name of the SNMP group. |
Required |
user-version version |
Specifies the SNMP version. Valid values are: · 1: SNMPv1 · 2: SNMPv2c · 3: SNMPv3 |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/users/user/name
Deletes an SNMP user.
Name |
Description |
Importance |
name |
Name of the SNMP user |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/hosts
https://ip-address:port-number/api/running/snmp/hosts/host/name
Retrieves information about all SNMP hosts or a specific SNMP host.
Name |
Description |
Importance |
name |
Name of the SNMP host |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/hosts -H "Content-Type: application/vnd.yang.data+json" -d ' {"host": {"host-name": "hostname", "host-ip-address": "ip-address", "host-version": "version, "host-security-level": "securitylevel", "host-user-name": "username", "host-port": "port"}}'
Creates or modifies an SNMP host.
Note: You must configure an SNMP agent before configuring an SNMP host.
Name |
Description |
Importance |
host-name hostname |
Specifies the name of the SNMP host. |
Required |
host-ip-address ip-address |
Specifies the IP address of the SNMP host. |
Required |
host-version version |
Specifies the version of the SNMP host. Supported SNMP versions are as follows: · 1: SNMPv1 · 2: SNMPv2c · 3: SNMPv3 |
Required |
host-security-level securitylevel |
Specifies the security level for authentication and privacy. Supported security levels are as follows: · noAuthNoPriv: Security level that provides only user validation. · authNoPriv: Security level that provides authentication (MD5 or SHA). · authPriv: Security level that provides both authentication (MD5 or SHA) and encryption (AES or DES). |
Required |
host-user-name username |
Specifies the user name for the SNMP host. |
Required |
host-port port |
Specifies the port of the SNMP host. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/hosts/host/name
https://ip-address:port-number/api/running/snmp/hosts
Deletes an SNMP host or all SNMP hosts.
Name |
Description |
Importance |
name |
Name of the SNMP host |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/enable/traps -H "Content-Type: application/vnd.yang.data+json" -d '{"trap-type": "name"}'
Configures an SNMP trap.
Note: You must configure an SNMP agent before configuring an SNMP trap.
Name |
Description |
Importance |
trap-type name |
Specifies the name of the SNMP trap. Valid SNMP traps are linkDown and linkUp. |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server
https://ip-address:port-number/api/running/snmp-server?deep
Description
Retrieves information about SNMP server agents.
To get detailed information about the SNMP server agent use the ?deep parameter.
Parameters
None
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp-server/view/view-name
Retrieves information about SNMP server view entry.
Description |
Importance |
|
view-name |
Label for the view record that you are retrieving. The name is used to reference the record. |
Required |
Example
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' {"view": {"name": "view-name", "rule": [{"mibs": "oid-enum-string", "included-opt": "included | excluded"}]}}'
Description
Creates or modifies an SNMP server view entry.
Parameters
Name |
Description |
Importance |
name view-name |
Label for the view record that you are updating or creating. The name is used to reference the record. Valid values are a string up to 32 characters. |
Required |
rule |
Specifies a list of configuration of mibs and included-opt. |
Required |
mibs oid-enum-string |
Object identifier enum can be 13 predefined enum text strings. These predefined text strings are ALL, CISCO-ENTITY-EXT-MIB, CISCO-PROCESS-MIB, DISMAN-EVENT-MIB, ENTITY-MIB, HOST-RESOURCE-MIB, IF-MIB, IP-MIB, LIBVIRT-MIB, LM-SENSORS-MIB, SNMP-FRAMEWORK-MIB, SNMPv2-MIB, TCP-MIB, UDP-MIB. Only these 14 predefined MIBs can be defined in the view configuration. You can use "tab" key to view the list of predefined MIBs. |
Required |
Included-opt included|excluded |
Type of view. You must specify either included or excluded. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/community/community-name
Description
Retrieves information about SNMP community access string.
Parameters
Name |
Description |
Importance |
community-name |
Community name that acts like a password and permits access to the SNMP protocol. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' {"community": {"name": "community-name", "view": "view-name", "access": "access-type "}}'
Description
Sets up the community access string to permit access to the Simple Network Management Protocol (SNMP).
Parameters
Name |
Description |
Importance |
name community-name |
Community name that acts like a password and permits access to the SNMP protocol. Valid values are a string up to 32 characters. |
Required |
view view-name |
Name of a previously defined view. The view defines the objects available to the community. |
Optional |
access access-type |
Specifies either read-write (rw) or read-only (ro) access. |
Optional |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/group/group-name
Description
Retrieves information about SNMP server group.
Parameters
Name |
Description |
Importance |
group-name |
The name of the group. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' {"group": {"name": "group-name", "security-model": "security-model", "security-level": "security-level", "read": "readview", "write": "writeview", "notify": "notifyview"}}'
Description
Configures a new Simple Network Management Protocol (SNMP) group, or a table that maps SNMP users to SNMP views.
Parameters
Name |
Description |
Importance |
name group-name |
The name of the group. Valid values are a string up to 32 characters. |
Required |
security-model security-model |
Specifies either of the following security models: · v1: The least secure of the possible security models. · v2c: The second least secure of the possible security models. · v3: The most secure of the possible security models. If v3 has been configured, at least one of the security levels must be specified. |
Required |
security-level security-level |
Specifies either of the following security levels: · auth: Specifies authentication of a packet without encrypting. · noauth: Specifies no authentication of a packet · priv: Specifies authentication of a packet with encryption. |
Required if security-model is v3 |
read readview |
A string (not to exceed 32 characters) that is the name of the view that enables you only to view the contents of the agent. Note: By default, it is assumed to be ALL MIBs, unless you use the read option to override this state. |
Optional |
write writeview |
A string (not to exceed 32 characters) that is the name of the view that enables you to enter data and configure the contents of the agent. |
Optional |
notify notifyview |
A string (not to exceed 32 characters) that is the name of the view that enables you to specify a notify, inform, or trap. |
Optional |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/user/name,group-name
Description
Retrieves information about SNMP server user.
Parameters
Name |
Description |
Importance |
name |
The name of the user for v3 or community name for v1 and v2c. |
Required |
group-name |
The name of the group for local or host name when remote host is configured. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' {"user": {"name": "user-name", "group-name": "group-name", "remote": "remote-host", "encrypted": "null string", "security-model": "security-model", "auth": "auth-protocol", "auth-password": "auth-password", "priv": "privacy-protocol", "priv-password": "priv-password", "engineID": "engineID-string"}}'
Description
Configures a new user to a Simple Network Management Protocol (SNMP) group.
Parameters
Name |
Description |
Importance |
name user-name |
The name of the user for v3 or community name for v1 and v2c. Valid values are a string up to 32 characters. |
Required |
group-name group-name |
The name of the group for local or host name when remote host is configured. Valid values are a string up to 32 characters. |
Required |
remote remote-host |
Specifies a remote host name, or the IPv4 address of trap server. |
Optional |
encrypted null string |
Specifies whether the auth-password or priv-password appears in encrypted format (a series of digits, masking the true characters of the string usually in hex key format). |
Optional |
security-model security-model |
Specifies either of the following security models: · v1: Specifies that SNMPv1 should be used. · v2c: Specifies that SNMPv2c should be used. · v3: Specifies that the SNMPv3 security model should be used. Allows the use of the encrypted and/or auth keywords. |
Required |
auth auth-protocoll |
Specifies which of the following authentication level should be used: · The HMAC-MD5-96 authentication level. · The HMAC-SHA-96 authentication level. |
Optional |
auth-password auth-password |
A string (between 8 to 64 characters) that enables the agent to receive packets from the host. |
Required when auth is configured |
priv priv-protocol |
Specifies either of the following algorithms to be used: · des: Specifies the use of the 56-bit DES algorithm. · aes: Specifies the use of AES algorithm. |
Optional |
priv-password priv-password |
Specifies the User-based Security Model (USM). Valid values are a string between 8 to 64 characters. |
Required when priv is configured |
engineID engineID-string |
Specifies the ID of the local or remote SNMP engine in hexadecimal format. The length of the engine ID can be between 5 to 32 octets. Default value is local CSP engine ID for remote user key generation. |
Optional |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/host/name
Description
Retrieves information about SNMP server host.
Parameters
Name |
Description |
Importance |
name |
Name or IPv4 of the host (the targeted recipient). |
Required |
Examples
The following example retrieves host information for version v3.
The following example retrieves host information for version v1 or v2c.
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' '{"name": "name", "inform-type": "inform-type", "version": "version", "security-level": "security-level", "username": "username", "remote-community": "remote-community", "udp-port": "udp-port"}'
Description
Specifies the recipient of a Simple Network Management Protocol (SNMP) notification operation.
Parameters
Name |
Description |
Importance |
name name |
Name or IPv4 of the host (the targeted recipient). Valid values are a string up to 32 characters. |
Required |
inform-type inform-type |
Specifies either of the following inform types: · traps: Sends SNMP traps to this host. This is the default. · informs: Sends SNMP informs to this host. |
Optional |
version version |
Version of the SNMP used to send the traps. Version 3 is the most secure model, because it allows packet encryption with the priv keyword. When you use the version keyword, one of the following must be specified: · 1—SNMPv1. This option is not available with informs. · 2c—SNMPv2C. · 3—SNMPv3. The three optional security-level keywords can follow the version 3 keyword. |
Required |
security-level security-level |
If version 3 has been configured, at least one of the following security level fields must be specified. · auth—Enables Message Digest 5 (MD5) and Secure Hash Algorithm (SHA) packet authentication. · noauth—(Default) The noAuthNoPriv security level. This is the default if the [auth | noauth | priv] keyword choice is not specified. · priv— Enables Data Encryption Standard (DES) packet encryption (also called "privacy"). |
Required for version 3 |
username username |
When v1 or v2c are specified, enter the password-like remote community string sent with the notification operation. When version 3 is specified, enter the SNMPv3 username. |
Required |
remote-community remote-community |
When v1 or v2c are specified in version, remote-community is mandatory and username is not required. If v3 is specified, username is mandatory and remote-community is not required. |
Required |
udp-port udp-port |
UDP port of the host to use. The default value is 162. |
Optional |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/contact
Description
Retrieves information about SNMP server contact information.
Parameters
Name |
Description |
Importance |
contact |
String that describes the SNMP system contact information. The maximum length of the contact string can be 255 characters. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' '{"contact": "contact"}'
Description
Sets the system contact (sysContact) string.
Parameters
Name |
Description |
Importance |
contact contact |
String that describes the system contact information. The maximum length of the contact string can be 255 characters. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/location
Description
Retrieves the system location string.
Parameters
Name |
Description |
Importance |
location |
String that describes the system location information. The maximum length of the location string can be 255 characters. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' '{"location": "location"}'
Description
Sets the system location string.
Parameters
Name |
Description |
Importance |
location location |
String that describes the system location information. The maximum length of the location string can be 255 characters. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/engineID/local
Description
Retrieves a name for local Simple Network Management Protocol (SNMP) engine on CSP 2100.
Parameters
Name |
Description |
Importance |
local |
Specifies the local copy of SNMP on CSP 2100. |
Optional |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server -H "Content-Type: application/vnd.yang.data+json" -d ' '{"engineID": {"local": "engineID"}}'
Description
Configures a name for local Simple Network Management Protocol (SNMP) engine on CSP 2100.
Parameters
Name |
Description |
Importance |
engineID local engineID |
The name of a copy of SNMP. The length of the engineID string can be 12 octets. |
Required |
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp-server/enable
Description
Retrieves information about enabled SNMP traps.
Parameters
None
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
Method
POST
Module
https://ip-address:port-number/api/running/snmp-server/enable -H "Content-Type: application/vnd.yang.data+json" -d '{"traps": {}}'
Description
Enables the trap functionality to send the notification to remote trap server.
Parameters
None
Example
API History
Release |
Modification |
2.3.0 |
This API is introduced. |
https://ip-address:port-number/api/running/snmp/enable/traps
Deletes SNMP traps.
Release |
Modification |
2.1.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/snmp/traps
Description
Retrieves information about enabled SNMP traps.
Parameters
None
Example
API History
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/operational/system-settings/cpupin-state
Retrieves the current state of the cpupin configuration. If cpupin configuration has been modified, the status is updated after rebooting the Cisco CSP 2100 host.
None
Example
"system_setting:cpupin-state": 0
Release |
Modification |
2.3.1 |
The path of getting CPU pin has been updated. |
2.2.5 |
This API is introduced. |
https://ip-address:port-number/api/running/cpupin -H "Content-Type: application/vnd.yang.data+json" -d '{"system-setting":"cpupin"}'
Enable or disable pinning each VNF CPU to a particular system CPU. If CPU pinning mode is updated, ensure that you reboot the Cisco CSP 2100 host for the updated mode to be applied.
Name |
Description |
Importance |
system-setting cpupin |
Sets the CPU pinning mode. Valid values are enable and disable. Default is enable. |
Required |
Examples
Release |
Modification |
2.3.1 |
The path for CPU pinning has been updated. |
2.2.5 |
This API is introduced. |
https://ip-address:port-number/api/running/show/system/_operations/iostat
https://ip-address:port-number/api/running/show/system/_operations/iostat -H "Content-Type:application/vnd.yang.data+json" -d '{"input": {"disk":"name", "extend": ""}}'
Retrieves the disk I/O statistics for all disks or specified disks or extended disk I/O statistics for all disks.
Name |
Description |
Importance |
disk name |
Displays the statistics for the specified disk. You can specify multiple disks in the following format: "name1 name2". |
Optional |
extend |
Displays the extended statistics for all disks. |
Optional |
Examples
{
"output": {
"result": "\nLinux 3.10.0-693.5.2.el7.x86_64 (csp) \t12/07/2017 \t_x86_64_\t(32 CPU)\navg-cpu:
%user %nice %system %iowait %steal %idle\n 0.03 0.00 0.03 0.00 0.00 99.94\n
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn\n
sda 1.97 11.56 16.60 730597 1049668\n
sda1 0.00 0.00 0.00 88 0\nsda2 1.55 6.21 11.28 392645 713120\nsda3 0.00 0.02 0.00 1340 0\nsda4 0.00 0.00 0.00 14 0\nsda5 0.35 5.23 0.00 330765 164\nsda6 0.07 0.08 5.32 4929 336384\ndm-0 0.02 0.12 0.01 7496 788\n"
}
}
{
"output": {
"result": "\nLinux 3.10.0-693.5.2.el7.x86_64 (csp) \t12/07/2017 \t_x86_64_\t(32 CPU)\navg-cpu:
%user %nice %system %iowait %steal %idle\n
0.03 0.00 0.03 0.00 0.00 99.94\n
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn\n
sda1 0.00 0.00 0.00 88 0\n
sda2 1.55 6.21 11.28 392653 713384\n"
}
}
{
"output": {
"result": "\nLinux 3.10.0-693.5.2.el7.x86_64 (csp) \t12/07/2017 \t_x86_64_\t(32 CPU)\navg-cpu:
%user %nice %system %iowait %steal %idle\n
0.03 0.00 0.03 0.00 0.00 99.94\n
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util\n
sda 0.01 0.59 1.23 0.74 11.55 16.60 28.56 0.01 4.49 1.31 9.75 0.38 0.07\n
sda1 0.00 0.00 0.00 0.00 0.00 0.00 8.00 0.00 2.55 2.55 0.00 2.55 0.00\n
sda2 0.01 0.57 0.86 0.69 6.21 11.28 22.60 0.00 2.98 1.65 4.64 0.45 0.07\n
sda3 0.00 0.00 0.00 0.00 0.02 0.00 14.18 0.00 2.08 2.08 0.00 1.93 0.00\n
sda4 0.00 0.00 0.00 0.00 0.00 0.00 5.60 0.00 4.00 4.00 0.00 4.00 0.00\n
sda5 0.00 0.00 0.35 0.00 5.23 0.00 29.76 0.00 0.36 0.34 18.78 0.21 0.01\n
sda6 0.00 0.02 0.01 0.05 0.08 5.32 162.11 0.00 61.43 4.33 76.60 1.26 0.01\ndm-0 0.00 0.00 0.01 0.01 0.12 0.01 15.99 0.00 1.52 0.09 3.89 1.48 0.00\n"
}
}
Release |
Modification |
2.2.4 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/tacacs-server
https://ip-address:port-number/api/running/security_servers/tacacs-server/host/hostname
https://ip-address:port-number/api/running/security_servers/tacacs-server?deep
Retrieves information about a specific TACACS+ server or all TACACS+ servers.
To get detailed information about the TACACS+ servers, use the ?deep parameter.
Note: If you have not yet configured a TACACS+ server or deleted all configured TACACS+ servers, use your Cisco CSP 2100 user account credentials with the REST APIs. After configuring a TACACS+ server, use your configured TACACS+ host’s user account credentials with the REST APIs.
Name |
Description |
Importance |
hostname |
Name of the TACACS+ server |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/tacacs-server -H "Content-Type:application/vnd.yang.data+json" -d '{"host": {"server":"hostname", "secret": {"key": "key_value", "shared-secret":"shared-secret"}}}'
Adds or modifies a TACACS+ server.
Name |
Description |
Importance |
server hostname |
Specifies the hostname or IPv4 or IPV6 address of the TACACS+ server. Note: You cannot modify the hostname. |
Required |
key key_value |
Defines the type of the shared-secret key. Valid values are the following: · 0: The shared-secret key is specified in clear text. This is the default. · 7: The shared-secret key is specified in encrypted text. |
Optional |
shared-secret shared-secret |
Specifies the preshared secret to authenticate communication between the TACACS+ server and Cisco CSP 2100. The preshared secret is alphanumeric, case sensitive, and has a maximum of 63 characters. If the specified shared-secret is in clear text, Cisco CSP 2100 encrypts the shared-secret and changes the key parameter to 7. If the specified shared-secret is already encrypted, Cisco CSP 2100 does not make any change. |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/security_servers/tacacs-server/host/hostname
Deletes a configured TACACS+ server.
Note: After deleting the last reachable TACACS+ server, use your Cisco CSP 2100 user account credentials with the REST APIs.
Name |
Description |
Importance |
hostname |
Hostname or IP address of the TACACS+ server |
Required |
Example
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/running/clock/timezone
https://ip-address:port-number/api/running/running/clock
Retrieves information about the configured time zone of Cisco CSP 2100.
If a time zone is not configured, you can retrieve information about the default time zone with the ?with-defaults=report-all parameter.
https://ip-address:port-number/api/running/running/clock/timezone?with-defaults=report-all
Release |
Modification |
2.2.2 |
This API is introduced. |
https://ip-address:port-number/api/running/clock -H "Content-Type:application/vnd.yang.data+json" -d '{"clock:timezone": "Continent/City"}'
Configures the time zone for Cisco CSP 2100.
Name |
Description |
Importance |
continent/city |
Name of the continent and city separated by a forward slash (/). |
Required |
Usage Guidelines
To view all continent/city values supported in Cisco CSP 2100, you can use the clock timezone ? CLI command.
Release |
Modification |
2.2.2 |
This API is introduced. |
https://ip-address:port-number/api/running/clock/timezone -H "Content-Type:application/vnd.yang.data+json" -d '{"timezone": "Continent/City"}'
Changes the time zone for Cisco CSP 2100.
Name |
Description |
Importance |
continent/city |
Name of the continent and city separated by a forward slash (/). |
Required |
Usage Guidelines
To view all continent/city values supported in Cisco CSP 2100, you can use the clock timezone ? CLI command.
Release |
Modification |
2.2.2 |
This API is introduced. |
https://ip-address:port-number/api/running/clock/timezone
Deletes the configured time zone. The Cisco CSP 2100 time zone is set to the default: America/New_York.
Release |
Modification |
2.2.2 |
This API is introduced. |
https://ip-address:port-number/api/running/support/_operations/show-tech –H "Content-Type: application/vnd.yang.data+json" -d '{"input": {"operation": "generate-report"}}'
Generates technical support information to diagnose an issue or to attach to a Cisco TAC case.
This REST API creates a csp_show_tech.tar.gz file in the log directory. The csp_show_tech.tar.gz file contains relevant log files and configuration files and it can take up to 15 minutes to create this file. If a csp_show_tech.tar.gz file already exists in the log directory, the existing file is overwritten.
Release |
Modification |
1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/csp_users
https://ip-address:port-number/api/running/csp_users?deep
https://ip-address:port-number/api/running/csp_users/users/user/username
Retrieves information about a specific Cisco CSP 2100 user or all users.
To get detailed information about all users, use the ?deep parameter.
Name |
Description |
Importance |
username |
Name of the user |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/csp_users/users/user -H "Content-Type:application/vnd.yang.data+json" -d '{"user": {"name": "username", "password": "password", "group": "group"}}'
Creates a new user.
Note: Only the members of the admin-group group can use this API to create a new user.
Name |
Description |
Importance |
name username |
Specifies the username. |
Required |
password password |
Specifies the password in clear text. In running configuration, the password is displayed as a hashed entry. The password is mandatory, the user is considered as a local user and is authenticated locally by the Cisco CSP 2100. A user can also be defined remotely. In such cases, remote authentication is used to authenticate the user. Local authentication is used only if the remote authentication is not available. Local authentication is not used as the secondary authentication method if the remote authentication is rejected. |
Required |
group group |
Specifies the group for the user. Valid values are admin-group, operator-group, service-group, and vnf-operator-group. |
Required |
Release |
Modification |
2.3.0 |
Introduced a new VNF group, vnf-operator-group |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/change-password/_operations/users -H "Content-Type:application/vnd.yang.data+json" -d '{"user": {"username":"username", "old-password": "old-password", "new-password": "new-password"}}'
Changes a user’s password.
Note: Only the members of the admin-group group can use this API to change the password of other users. Members of other groups can only change their own password.
Name |
Description |
Importance |
username username |
Specifies the username. |
Required |
old-password old-password |
Specifies the old password. |
Required |
new-password new-password |
Specifies the new password. |
Required |
Examples
Release |
Modification |
2.2.2 |
This API is introduced. |
https://ip-address:port-number/api/running/csp_users/users/user -H "Content-Type:application/vnd.yang.data+json" -d '{"user": {"name":"username", "password": "new_password"}}'
Changes a user’s password.
Note: Only the members of the admin-group group can use this API to change the password of other users. Members of other groups can only change their own password.
Name |
Description |
Importance |
name username |
Specifies the username. |
Required |
password new_password |
Specifies the new password. |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/csp_users/users/user -H "Content-Type:application/vnd.yang.data+json" -d '{"user": {"name":"username", "group": "new_group"}}'
Changes a user’s group.
Note: Only the members of the admin-group group can use this API to change a user’s group.
Name |
Description |
Importance |
name username |
Specifies the username. |
Required |
group new_group |
Specifies the new group. |
Required |
Release |
Modification |
2.1.0 |
This API is introduced. |
https://ip-address:port-number/api/running/csp_users/users/user/username
Deletes a user.
Note: Only the members of the admin-group group can use this API to delete a user.
Name |
Description |
Importance |
username |
Specifies the username to be deleted. |
Required |
Examples
Release |
Modification |
2.1.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/operational/system-settings/password/expiry
Description
Retrieves the status of password expiry for CSP.
Parameters
None
Example
API History
Release |
Modification |
2.4.0 |
This API is introduced. |
Method
POST
Module
https://ip-address/api/running/system-settings/operations/password-expiry -H "Content-type: application/vnd.yang.data+json" -d '{"input": {"action": "enable|disable"}}’
Description
Enables or disables password expiry for CSP host.
Parameters
Name |
Description |
Importance |
action enable|disable |
Specifies the password states on CSP. Valid values are: disable: Prevents expiry of password for CSP host. Therefore, you are not prompted to change password. enable: Enables expiry of password for CSP host. By default, password state is enable. |
Optional |
Example
API History
Release |
Modification |
2.4.0 |
This API is introduced. |
Method
POST
Module
https://ip-address/api/running/system-settings/tpm -H "Content-type: application/vnd.yang.data+json" -d '{"system-settings:tpm": {"encryption": "enable|disable"}}’
Description
Enables or disables TPM based disk encryption.
Parameters
Name |
Description |
Importance |
disable |
Disables TPM based disk encryption. By default, encryption state is disable. |
Optional |
enable |
Enables TPM based disk encryption of private certificates and ssh keys folder. |
Required |
Example
API History
Release |
Modification |
2.6.0 |
This API is introduced. |
https://ip-address:port-number/api/operational/vnic_stats/vnic_stat -H "Accept:application/vnd.yang.collection+json"
https://ip-address:port-number/api/operational/vnic_stats/vnic_stat/name
Retrieves statistics for all vNICs or a specific vNIC. The vNIC statistics are updated every 10 seconds.
In the output of this REST API, the vNIC name is shown in the vnetnum format. For each running service, the num value is increased (vnet0, vnet1, and so on) corresponding to the (first, second, and so on) vNIC for each service.
Starting with release 2.3.0, the MAC address field is not displayed. Use the Get method of Service APIs to know about the vNIC and VF MAC addresses.
Starting with release 2.6.0, use the Get method of Service APIs to view statistics of all NIC interfaces.
Name |
Description |
Importance |
name |
Name of the vNIC |
Optional |
Example
Release |
Modification |
2.6.0 |
This command has been deprecated. |
2.3.0 |
Removed MAC address field to be displayed. |
1.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/services/service/a/vnics/vnic/0 -H "Content-Type:application/vnd.yang.data+json" -d '{"vnic": [{"nic":"nic_num", "bandwidth": "bandwidth"}]}'
Description
Retrieves bandwidth of all vNICs or a specific vNIC.
Parameters
Name |
Description |
Importance |
nic nic_num |
A number for the vNIC. Valid range is from 0 to 23. In Release 2.2.3 and earlier releases, valid supported range is from 0 to 9. |
Required |
bandwidth bandwidth |
Bandwidth in megabits per second and should be a positive integer. |
Optional |
Example
API History
Release |
Modification |
2.6.0 |
This API is introduced. |
Method
PATCH
Module
https://ip-address:port-number/api/running/services/service/a/vnics/vnic/0 -H "Content-Type:application/vnd.yang.data+json" -d '{"vnic": [{"nic":"nic_num", "bandwidth": "bandwidth"}]}'
Description
Enables you to configure vNIC bandwidth. By default, the configured bandwidth is 0.
Parameters
Name |
Description |
Importance |
nic nic_num |
A number for the vNIC. Valid range is from 0 to 23. In Release 2.2.3 and earlier releases, valid supported range is from 0 to 9. |
Required |
bandwidth bandwidth |
Bandwidth in megabits per second and should be a positive integer. The maximum bandwidth for an interface based on the configured value is controlled. For SRIOV, the actual bandwidth is closer to the configured value, and for OVS and DPDK it varies but maximum is the configured value. |
Optional |
Example
API History
Release |
Modification |
2.6.0 |
This API is introduced. |
Method
GET
Module
https://ip-address:port-number/api/running/services/service/a/vnics/vnic/1 -H "Content-Type:application/vnd.yang.data+json" -d '{"vnic&quo