NVIDIA UFM Enterprise REST API Guide

Reports REST API

  • Description – manages UFM reports by starting, stopping, and retrieving them

  • Request URL – /ufmRest/reports

  • Main operationsStart a reportStop a reportGet a reportGet the last report

Start Report

  • Description – start a new report

  • Request URL – POST /ufmRest/reports/<report_type>

  • Request Content Type – Application/json

  • Notereport_type should be one of the following: Fabric_Health, UFM_Health, or Topology_Compare

  • Request DataTopology_Compare reports – request data should be the topology file to which UFM will compare the current topologyUFM_Health reports – N/AFabric_Health reports:  { "duplicate_nodes": true, "map_guids_desc": true, "firmware": true } At least 1 parameter should be passed to the API.NameValuesDefaultDependent On*Descriptionduplicate_nodesBooleanFalseLists all nodes with same node description. Does not include switches with the same description.map_guids_descBooleanFalseduplicate_nodesEnables the usage of a mapping file (between node GUID and node description) when running duplicate node description analysis of the fabricufm_alarmsBooleanFalseLists all open alarms in UFMsm_stateBooleanFalseVerifies that:There is only one active (master) Subnet Manager in the fabric;The master is selected according to highest priority and lowest port GUID;The report lists all SMs in the fabric with their attributesfirmwareBooleanFalseChecks for firmware inconsistencies. For each device model in the fabric, the test finds the latest installed version of the firmware and reports devices with older versions.cablesBooleanFalseReports cable information as stored in EEPROM on each port: cable vendor, type, length and serial numbercables_errors_onlyBooleanFalseCableserrors_only flag for cablesnon_opt_linksBooleanFalsePerforms a full-fabric discovery and reports 'non-responsive' ports with their pathnon_opt_speed_widthBooleanFalseEnables link speed and link width checkslink_speed["ALL", "SDR", "DDR", "QDR","FDR_10", "FDR", "EDR"]"ALL"non_opt_speed_widthChecks if link speed is optimally usedLink_width["ALL", "SDR", "DDR", "QDR","FDR_10", "FDR", "EDR"]"ALL"non_opt_speed_widthChecks if link width is optimally usedeye_openBooleanFalseLists Eye-Opener information for each linkmin_boundInteger22eye_openMinimum bound for eye_open checkmax_boundInteger65eye_openMaximum bound for eye_open checkeye_open_errors_onlyBooleanFalseeye_openerrors_only flag for eye_openduplicate_zero_and_lidsBooleanFalseLists all ports with same LID or zero LID valueeffective_ber_checkBooleanTrueLists errors and warnings for Effective Berphy_port_gradeBooleanFalsePhysical port grade informationFor example: “map_guids_desc” is dependent on “duplicate_nodes” in the sense that to set “map_guids_desc”, “duplicate_nodes” has to be set to True.Response  { "report_id": 4 } Status Codes200 – OK400 – BAD REQUEST

Stop Report

  • Description – stops a report using its ID

  • Request URL – DELETE /ufmRest/reports/<report_id>

  • Request Content Type – Application/json

  • Response – N/A

  • Status Codes200 – OK400 – BAD REQUEST

Get Report

  • Description – retrieve report's result using its ID

  • Request URL – GET /ufmRest/reports/<report_id>

  • Request Content Type – Application/json

  • Response

    {
        "date": "2018-04-07 05:38:13", 
        "sections": [
            {
                "status": {
                    "severity": "Info", 
                    "value": ""
                }, 
                "elements": [
                    {
                        "Warnings": "0", 
                        "Errors": "0", 
                        "Fabric Test": "Non-unique Node Descriptions", 
                        "Total": "0"
                    }, 
                    {
                        "Warnings": "0", 
                        "Errors": "0", 
                        "Fabric Test": "Firmware Versions", 
                        "Total": "0"
                    }, 
                    {
                        "Warnings": "0", 
                        "Errors": "0", 
                        "Fabric Test": "Total:", 
                        "Total": "0"
                    }
                ], 
                "description": "", 
                "title": "Report Summary"
            }, 
            {
                "status": {
                    "severity": "Info", 
                    "value": ""
                }, 
                "elements": [
                    {
                        "Count": "1", 
                        "Device Type": "EDR", 
                        "Non Active Ports": "32", 
                        "Active Ports": "4", 
                        "Total Ports": "36"
                    }, 
                    {
                        "Count": "1", 
                        "Device Type": "SX6036", 
                        "Non Active Ports": "25", 
                        "Active Ports": "11", 
                        "Total Ports": "36"
                    }, 
                    {
                        "Count": "16", 
                        "Device Type": "Computer", 
                        "Non Active Ports": "0", 
                        "Active Ports": "21", 
                        "Total Ports": "21"
                    }, 
                    {
                        "Count": "5", 
                        "Device Type": "MSB7700", 
                        "Non Active Ports": "156", 
                        "Active Ports": "24", 
                        "Total Ports": "180"
                    }, 
                    {
                        "Count": "23", 
                        "Device Type": "Total:", 
                        "Non Active Ports": "213", 
                        "Active Ports": "60", 
                        "Total Ports": "273"
                    }
                ], 
                "description": "", 
                "title": "Fabric Summary"
            }, 
            {
                "status": {
                    "severity": "Info", 
                    "value": "Completed Successfully."
                }, 
                "description": "Lists all nodes with same node description. Does not include switches with the same description. ", 
                "title": "Non-unique Node Descriptions"
            }, 
            {
                "status": {
                    "severity": "Info", 
                    "value": "Completed Successfully."
                }, 
                "description": "Checks for firmware inconsistencies. For each device model in the fabric, the test finds the latest installed version of the firmware and reports devices with older versions. ", 
                "title": "Firmware Versions"
            }
        ], 
        "Created by": "admin", 
        "title": "Fabric Health Report"
    }
    


  • Status Codes

    • 200 – OK

    • 202 – ACCEPTED (processing report)

    • 400 – BAD REQUEST

Get Last Report

  • Description – get the results of the last generated report using its type

  • Request URL – GET /ufmRest/reports/last_report/<report_type>

  • Notereport_type should be one of the following: Fabric_Health, UFM_Health, or Topology_Compare

  • Request Content Type – Application/json

  • Response – See response in the previous chapter

  • Status Codes

    • 200 – OK

    • 400 – BAD REQUEST

Last updated: