Reports APIs

  • Description – get the recent cable validation report

  • Request URL – GET /cablevalidation/report/validation

  • Request Content Type – application/json

  • Status Codes

    • 200 – OK

    • 404 – NOT FOUND

  • Response Example

    Copy
    Copied!
                

    \{ "report": "ValidationReport", "stats": \{ "in_progress": 14, "no_issues": 8, "not_started": 5 \}, "issues": \[ \{ "timestamp": 1722290755.0392804, "node_desc": "dell001.cm.cluster", "rack": "D01", "unit": 2, "issues": \[ \[ "Unreachable-device"\] \] \} \], "metadata": \{ "file_name": "v22_testing_extracable.xlsx", "file_hash": "d2a8ce40b613a17245acb3310fa0b810238dc61613e8f683b95139d19567aa5a", "load_time": 1722290305.0386324 \} \}

  • Description – get validation status.

  • Request URL – GET /cablevalidation/validation/status

  • Request Content Type – application/json

  • Status Codes

    • 200 – OK

    • 500 – INTERNAL SERVER ERROR

  • Response Data Example:

    Copy
    Copied!
                

    {"status": "not started"}

  • Description – get topology metadata.

  • Request URL – GET /cablevalidation/topology/metadata

  • Request Content Type – application/json

  • Status Codes

    • 200 – OK

    • 400 – BAD REQUEST

  • Response Data Example

    Copy
    Copied!
                

    { "file_name": "proton-ptp.xlsx", "file_path": "/cable_bringup_root/data/uploads/topology/ptp/proton-ptp.xlsx", "dc_layout_file_path": null, "file_hash": "c13187caece919c9aa88d2c1e26404fe5e3d0cd56ea801c4c46a7236e42549fb", "load_time": 1732376613.3298793 }

  • Description – get cluster summary by name

  • Request URL – GET /cablevalidation/report/summary?cluster=<cluster name>

  • Request Content Type – application/json

  • Status Codes

    • 200 – OK

    • 400 – BAD REQUEST

    • 404 – NOT FOUND

  • Response Example

    Copy
    Copied!
                

    \[\{"syndrome": "No Transceiver","number_of_occurrences": 0,"switches_affected": 0\},\{"syndrome": "Link Down, No signal","number_of_occurrences": 0,"switches_affected": 0\},\{"syndrome": "Wrong-neighbor","number_of_occurrences": 0,"switches_affected": 0\}, ……etc \]

  • Description – get circuits information

  • Request URL – GET /cablevalidation/report/ circuits?cluster=<cluster name>& node=<node>&port=<port>&page=circuit&healthy=<true|false&circuit_id=<circuit_id>

  • Arguments

    • cluster (string): The name of the cluster. If the URL does not include the cluster name, the default value will be 'default'.

    • node (string): The name of the node.

    • port (string): The name of the port.

    • page (string): The name of the page. It can be one of the following values: circuit, flap, or flap_hist. Currently, only circuit is supported for XDR.

    • health (bool): If true, only healthy circuits will be returned.

  • Request Content Type – application/json

  • Status Codes

    • 200 – OK

    • 400 – BAD REQUEST

    • 404 – NOT FOUND

  • Response Example

    Copy
    Copied!
                

    \[ \{ "circuit_id": "c83df4d68b40", "a_endpoint": \{ "node_type": "Switch", "data_hall": "DH0", "su_number": "SU01", "node": "sw-hdr-proton01", "port": "P4", "rack": null, "unit": null, "actual_node": null, "actual_port": null, "port_status": "up", "plugged": true, "advanced_stats": \{…\} "remediation_action": "Check LLDP is enabled on peer; Verify the peer is fully provisioned and reachable", "report": "Unknown-neighbor" \}, "z_endpoint": \{….\}, "healthy": false, "status": "Fail" \}, \] \\

© Copyright 2025, NVIDIA. Last updated on Feb 10, 2025.