Getting started
CNaaS NMS exposes a standard REST-like JSON API. In these examples we will use curl to do some basic management operations.
List devices
curl http://10.0.1.5:5000/api/v1.0/device
curl http://10.0.1.5:5000/api/v1.0/device?filter=hostname,ex2300-top
curl http://10.0.1.5:5000/api/v1.0/device?filter=device_type,ACCESS
Update settings for devices
Clone your settings repository in to a local directory. In this example we will use the CNaaS provided example setting repository from github:
...
...
...
Tell the NMS API to fetch latest updates from the settings repo and try a sync to devices with dry_run to preview changes:
curl https://localhost/api/v1.0/repository/settings -d '{"action": "refresh"}' -X PUT -H "Content-Type: application/json"
curl https://localhost/api/v1.0/device_syncto -d '{"hostname": "ex2300-top", "dry_run": true}' -X POST -H "Content-Type: application/json"
curl https://localhost/api/v1.0/job?limit=1
The API call to device_syncto will start a job running in the background on the API server. To show the progress/output of the job run the last command (/job) until you get a finished result..readthedocs.io/en/latest/howto/index.html