Next Topic

Previous Topic

Book Contents

Output Format

By default bveCLI uses a tabular output format that is suitable for operational use. The tool supports additional output formats—XML, JSON, CSV—that can be used for integration with in-house and third-party tools. The output format can be selected using the --format parameter.

Sample Session

% bveCLI.pl --host 192.168.10.21 --exec 'device.list "devicename=Cisco*"' --fields devicename,address,configbackupenabled,devicetype,invalidfield,serialnumber --format json

{
   "api-response" : {
      "data" : {
         "object" : [
            {
               "address" : "67.21.1.74",
               "configbackupenabled" : "true",
               "devicename" : "Cisco Router",
               "devicetype" : "IP Router",
               "serialnumber" : "220070"
            },
            {
               "address" : "192.168.14.1",
               "configbackupenabled" : "false",
               "devicename" : "Cisco UCS Platform",
               "devicetype" : "Other/Generic Device",
               "serialnumber" : "2400080"
            },
            {
               "address" : "192.168.14.2",
               "configbackupenabled" : "false",
               "devicename" : "Cisco Unified Communications",
               "devicetype" : "Linux/Other Unix",
               "serialnumber" : "2400399"
            }
         ]
      },
      "status" : {
         "code" : "203",
         "error" : "false",
         "message" : "request accepted, records returned: 3"
      }
   }
}

% bveCLI.pl --host 192.168.10.21 --exec 'device.list "devicename=Cisco*"' --fields devicename,address,configbackupenabled,devicetype,invalidfield,serialnumber --format xml

<?xml version='1.0' standalone='yes'?>
<api-response>
  <data>
    <object>
      <serialnumber>220070</serialnumber>
      <address>67.21.1.74</address>
      <configbackupenabled>true</configbackupenabled>
      <devicename>Cisco Router</devicename>
      <devicetype>IP Router</devicetype>
    </object>
    <object>
      <serialnumber>2400080</serialnumber>
      <address>192.168.14.1</address>
      <configbackupenabled>false</configbackupenabled>
      <devicename>Cisco UCS Platform</devicename>
      <devicetype>Other/Generic Device</devicetype>
    </object>
    <object>
      <serialnumber>2400399</serialnumber>
      <address>192.168.14.2</address>
      <configbackupenabled>false</configbackupenabled>
      <devicename>Cisco Unified Communications</devicename>
      <devicetype>Linux/Other Unix</devicetype>
    </object>
  </data>
  <status>
    <code>203</code>
    <error>false</error>
    <message>request accepted, records returned: 3</message>
  </status>
</api-response>

% bveCLI.pl --host 192.168.10.21 --exec 'device.list "devicename=Cisco*"' --fields devicename,address,configbackupenabled,devicetype,invalidfield,serialnumber --format csv

# serialnumber, address, configbackupenabled, devicename, devicetype
"220070", "67.21.1.74", "true", "Cisco Router", "IP Router"
"2400080", "192.168.14.1", "false", "Cisco UCS Platform", "Other/Generic Device"
"2400399", "192.168.14.2", "false", "Cisco Unified Communications", "Linux/Other Unix"

For JSON/XML formats, the objects are returned as an array with separate elements indicating their success/failure status. For CSV format, the first row is prefixed with # symbol and indicates the contents of each column.