{
  "openapi": "3.0.0",
  "info": {
    "title": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB MIB API",
    "version": "1.0.0",
    "description": "Cisco NBAR Protocol Discovery MIB \n    \n    NBAR - Network Based Application Recognition is\n    an intelligent classification engine that recognizes \n    applications that are static (which use fixed TCP or\n    UDP port numbers), and stateful (which dynamically \n    assign TCP or UDP port numbers). \n    \n    Protocol Discovery - uses NBAR to show you the mix \n    of applications currently running on the network. \n    Key statistics are associated with each protocol. \n    These statistics can be used to define traffic \n    classes and QoS policies.\n    \n    Functionality:\n    1. To enable/disable Protocol Discovery per interface.\n    2. Display the protocols/applications which NBAR\n       currently recognizes.\n    3. To display various Protocol Discovery statistics.\n    4. A configurable top N table which lists\n       protocols using user defined criteria.\n    5. To configure notifications (traps) based \n       on configurable statistic thresholds.\n    6. To maintain a history table of all notification \n       events.\n\n⚠️ **IMPORTANT - MIB DATA ACCESS**:\nThis YANG model exists for SMIv2-to-YANG translation purposes, but MIB data on IOS-XE devices is primarily accessed via **SNMP protocol**, not RESTCONF.\n\n**RESTCONF Limitation**: Many MIB paths may return 404 errors via RESTCONF `/data` endpoints because the device exposes MIB data through SNMP, not the YANG datastore.\n\n**Recommended Access Methods**:\n- Use SNMP (v2c/v3) to query MIB data directly\n- Use NETCONF `<get>` operations for devices supporting YANG-modeled MIB access\n- Check device capabilities: some newer IOS-XE versions may support limited RESTCONF access to specific MIBs\n\n**YANG Model Purpose**: These YANG models define the structure of SNMP MIBs in YANG format for tooling compatibility, but do not guarantee RESTCONF data availability.\n\n\n**📊 YANG Tree:** [View CISCO-NBAR-PROTOCOL-DISCOVERY-MIB structure](https://jeremycohoe.github.io/cisco-ios-xe-openapi-swagger/yang-trees/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB.html)",
    "contact": {
      "name": "Cisco DevNet",
      "url": "https://developer.cisco.com"
    },
    "x-yang-module": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB",
    "x-model-type": "mib"
  },
  "servers": [
    {
      "url": "https://{device}/restconf",
      "description": "RESTCONF server",
      "variables": {
        "device": {
          "default": "10.1.1.1",
          "description": "Device hostname or IP address"
        }
      }
    }
  ],
  "paths": {
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdNotificationsConfig": {
      "get": {
        "summary": "Get cnpdNotificationsConfig data",
        "description": "Retrieve cnpdNotificationsConfig operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "This object is used to enable or disable \n          Notifications on a global basis. \n          \n          If set to 'true' - Notifications are\n          enabled.\n          If set to 'false' - Notifications are\n          disabled.",
                  "properties": {
                    "cnpdNotificationsEnable": {
                      "type": "boolean",
                      "description": "This object is used to enable or disable \n          Notifications on a global basis. \n          \n          If set to 'true' - Notifications are\n          enabled.\n          If set to 'false' - Notifications are\n          disabled."
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdNotificationsConfig": {
                    "cnpdNotificationsEnable": true
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdNotificationsConfig",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdNotificationsConfig",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusTable": {
      "get": {
        "summary": "Get cnpdStatusTable data",
        "description": "Retrieve cnpdStatusTable operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "The cnpdStatusTable is used to enable and\n        disable Protocol Discovery on an interface.",
                  "properties": {
                    "cnpdStatusEntry": {
                      "type": "array",
                      "description": "An entry in the cnpdStatusTable contains objects\n          for enabling or disabling Protocol Discovery on a\n          per interface basis.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "ifIndex": {
                            "type": "string",
                            "description": "ifIndex",
                            "x-yang-type": "leafref"
                          },
                          "cnpdStatusPdEnable": {
                            "type": "boolean",
                            "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface."
                          },
                          "cnpdStatusLastUpdateTime": {
                            "type": "string",
                            "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
                            "x-yang-type": "yang:timeticks"
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusTable": {
                    "cnpdStatusEntry": [
                      {
                        "ifIndex": "1",
                        "cnpdStatusPdEnable": true,
                        "cnpdStatusLastUpdateTime": "up(1)"
                      },
                      {
                        "ifIndex": "2",
                        "cnpdStatusPdEnable": true,
                        "cnpdStatusLastUpdateTime": "up(1)"
                      },
                      {
                        "ifIndex": "3",
                        "cnpdStatusPdEnable": true,
                        "cnpdStatusLastUpdateTime": "up(1)"
                      }
                    ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdStatusTable",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdStatusTable",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusTable/cnpdStatusEntry": {
      "get": {
        "summary": "Get cnpdStatusEntry list",
        "description": "Retrieve list of cnpdStatusEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "An entry in the cnpdStatusTable contains objects\n          for enabling or disabling Protocol Discovery on a\n          per interface basis.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "ifIndex": {
                        "type": "string",
                        "description": "ifIndex",
                        "x-yang-type": "leafref"
                      },
                      "cnpdStatusPdEnable": {
                        "type": "boolean",
                        "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface."
                      },
                      "cnpdStatusLastUpdateTime": {
                        "type": "string",
                        "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
                        "x-yang-type": "yang:timeticks"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusEntry": [
                    {
                      "ifIndex": "example-string",
                      "cnpdStatusPdEnable": true,
                      "cnpdStatusLastUpdateTime": "up(1)"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdStatusEntry",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdStatusTable/cnpdStatusEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusTable/cnpdStatusEntry={ifIndex}": {
      "get": {
        "summary": "Get cnpdStatusEntry entry",
        "description": "Retrieve specific cnpdStatusEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "ifIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ifIndex": {
                      "type": "string",
                      "description": "ifIndex",
                      "x-yang-type": "leafref"
                    },
                    "cnpdStatusPdEnable": {
                      "type": "boolean",
                      "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface."
                    },
                    "cnpdStatusLastUpdateTime": {
                      "type": "string",
                      "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
                      "x-yang-type": "yang:timeticks"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusEntry": {
                    "ifIndex": "example-string",
                    "cnpdStatusPdEnable": true,
                    "cnpdStatusLastUpdateTime": "up(1)"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdStatusEntry-2"
      },
      "x-yang-path": "/cnpdStatusTable/cnpdStatusEntry={ifIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "ifIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsTable": {
      "get": {
        "summary": "Get cnpdAllStatsTable data",
        "description": "Retrieve cnpdAllStatsTable operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "The cnpdAllStatsTable contains all the statistics\n        available for all the protocols/applications currently\n        recognized by NBAR Protocol Discovery for a particular \n        interface.\n        \n        In the event of an overflow, the 32 bit counters are not \n        valid. There is no overflow support.",
                  "properties": {
                    "cnpdAllStatsEntry": {
                      "type": "array",
                      "description": "An entry in the cnpdAllStatsTable table. This entry \n          contains the statistics collected on all the protocols \n          which NBAR classifies for a particular interface.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "ifIndex": {
                            "type": "string",
                            "description": "ifIndex",
                            "x-yang-type": "leafref"
                          },
                          "cnpdAllStatsProtocolsIndex": {
                            "type": "string",
                            "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                          },
                          "cnpdAllStatsProtocolName": {
                            "type": "string",
                            "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                          },
                          "cnpdAllStatsInPkts": {
                            "type": "integer",
                            "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdAllStatsOutPkts": {
                            "type": "integer",
                            "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdAllStatsInBytes": {
                            "type": "integer",
                            "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdAllStatsOutBytes": {
                            "type": "integer",
                            "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdAllStatsHCInPkts": {
                            "type": "integer",
                            "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
                            "minimum": 0
                          },
                          "cnpdAllStatsHCOutPkts": {
                            "type": "integer",
                            "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
                            "minimum": 0
                          },
                          "cnpdAllStatsHCInBytes": {
                            "type": "integer",
                            "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
                            "minimum": 0
                          },
                          "cnpdAllStatsHCOutBytes": {
                            "type": "integer",
                            "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
                            "minimum": 0
                          },
                          "cnpdAllStatsInBitRate": {
                            "type": "integer",
                            "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdAllStatsOutBitRate": {
                            "type": "integer",
                            "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
                            "minimum": 0,
                            "maximum": 4294967295
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsTable": {
                    "cnpdAllStatsEntry": [
                      {
                        "ifIndex": "1",
                        "cnpdAllStatsProtocolsIndex": "1",
                        "cnpdAllStatsProtocolName": "interface-1",
                        "cnpdAllStatsInPkts": 0,
                        "cnpdAllStatsOutPkts": 0,
                        "cnpdAllStatsInBytes": 0,
                        "cnpdAllStatsOutBytes": 0,
                        "cnpdAllStatsHCInPkts": 0,
                        "cnpdAllStatsHCOutPkts": 0,
                        "cnpdAllStatsHCInBytes": 0,
                        "cnpdAllStatsHCOutBytes": 0,
                        "cnpdAllStatsInBitRate": 0,
                        "cnpdAllStatsOutBitRate": 0
                      },
                      {
                        "ifIndex": "2",
                        "cnpdAllStatsProtocolsIndex": "2",
                        "cnpdAllStatsProtocolName": "interface-1",
                        "cnpdAllStatsInPkts": 0,
                        "cnpdAllStatsOutPkts": 0,
                        "cnpdAllStatsInBytes": 0,
                        "cnpdAllStatsOutBytes": 0,
                        "cnpdAllStatsHCInPkts": 0,
                        "cnpdAllStatsHCOutPkts": 0,
                        "cnpdAllStatsHCInBytes": 0,
                        "cnpdAllStatsHCOutBytes": 0,
                        "cnpdAllStatsInBitRate": 0,
                        "cnpdAllStatsOutBitRate": 0
                      },
                      {
                        "ifIndex": "3",
                        "cnpdAllStatsProtocolsIndex": "3",
                        "cnpdAllStatsProtocolName": "interface-1",
                        "cnpdAllStatsInPkts": 0,
                        "cnpdAllStatsOutPkts": 0,
                        "cnpdAllStatsInBytes": 0,
                        "cnpdAllStatsOutBytes": 0,
                        "cnpdAllStatsHCInPkts": 0,
                        "cnpdAllStatsHCOutPkts": 0,
                        "cnpdAllStatsHCInBytes": 0,
                        "cnpdAllStatsHCOutBytes": 0,
                        "cnpdAllStatsInBitRate": 0,
                        "cnpdAllStatsOutBitRate": 0
                      }
                    ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdAllStatsTable",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdAllStatsTable",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsTable/cnpdAllStatsEntry": {
      "get": {
        "summary": "Get cnpdAllStatsEntry list",
        "description": "Retrieve list of cnpdAllStatsEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "An entry in the cnpdAllStatsTable table. This entry \n          contains the statistics collected on all the protocols \n          which NBAR classifies for a particular interface.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "ifIndex": {
                        "type": "string",
                        "description": "ifIndex",
                        "x-yang-type": "leafref"
                      },
                      "cnpdAllStatsProtocolsIndex": {
                        "type": "string",
                        "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdAllStatsProtocolName": {
                        "type": "string",
                        "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                      },
                      "cnpdAllStatsInPkts": {
                        "type": "integer",
                        "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsOutPkts": {
                        "type": "integer",
                        "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsInBytes": {
                        "type": "integer",
                        "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsOutBytes": {
                        "type": "integer",
                        "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsHCInPkts": {
                        "type": "integer",
                        "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
                        "minimum": 0
                      },
                      "cnpdAllStatsHCOutPkts": {
                        "type": "integer",
                        "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
                        "minimum": 0
                      },
                      "cnpdAllStatsHCInBytes": {
                        "type": "integer",
                        "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
                        "minimum": 0
                      },
                      "cnpdAllStatsHCOutBytes": {
                        "type": "integer",
                        "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
                        "minimum": 0
                      },
                      "cnpdAllStatsInBitRate": {
                        "type": "integer",
                        "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsOutBitRate": {
                        "type": "integer",
                        "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsEntry": [
                    {
                      "ifIndex": "example-string",
                      "cnpdAllStatsProtocolsIndex": "example-string",
                      "cnpdAllStatsProtocolName": "interface-1",
                      "cnpdAllStatsInPkts": 0,
                      "cnpdAllStatsOutPkts": 0,
                      "cnpdAllStatsInBytes": 0,
                      "cnpdAllStatsOutBytes": 0,
                      "cnpdAllStatsHCInPkts": 0,
                      "cnpdAllStatsHCOutPkts": 0,
                      "cnpdAllStatsHCInBytes": 0,
                      "cnpdAllStatsHCOutBytes": 0,
                      "cnpdAllStatsInBitRate": 0,
                      "cnpdAllStatsOutBitRate": 0
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdAllStatsEntry",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdAllStatsTable/cnpdAllStatsEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigTable": {
      "get": {
        "summary": "Get cnpdTopNConfigTable data",
        "description": "Retrieve cnpdTopNConfigTable operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "The cnpdTopNConfigTable is used to configure\n        cnpdTopNStatsTable's.",
                  "properties": {
                    "cnpdTopNConfigEntry": {
                      "type": "array",
                      "description": "This entry provides the objects to configure and thus\n          initiate the generation of a cnpdTopNStatsTable..",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cnpdTopNConfigIndex": {
                            "type": "integer",
                            "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdTopNConfigIfIndex": {
                            "type": "string",
                            "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
                            "x-yang-type": "if-mib:InterfaceIndex"
                          },
                          "cnpdTopNConfigStatsSelect": {
                            "type": "string",
                            "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                          },
                          "cnpdTopNConfigSampleTime": {
                            "type": "integer",
                            "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdTopNConfigRequestedSize": {
                            "type": "integer",
                            "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdTopNConfigGrantedSize": {
                            "type": "integer",
                            "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdTopNConfigTime": {
                            "type": "string",
                            "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
                            "x-yang-type": "yang:timeticks"
                          },
                          "cnpdTopNConfigStatus": {
                            "type": "string",
                            "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
                            "x-yang-type": "snmpv2-tc:RowStatus"
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigTable": {
                    "cnpdTopNConfigEntry": [
                      {
                        "cnpdTopNConfigIndex": 1,
                        "cnpdTopNConfigIfIndex": "1",
                        "cnpdTopNConfigStatsSelect": "example-string",
                        "cnpdTopNConfigSampleTime": 0,
                        "cnpdTopNConfigRequestedSize": 0,
                        "cnpdTopNConfigGrantedSize": 0,
                        "cnpdTopNConfigTime": "example-string",
                        "cnpdTopNConfigStatus": "up(1)"
                      },
                      {
                        "cnpdTopNConfigIndex": 2,
                        "cnpdTopNConfigIfIndex": "2",
                        "cnpdTopNConfigStatsSelect": "example-string",
                        "cnpdTopNConfigSampleTime": 0,
                        "cnpdTopNConfigRequestedSize": 0,
                        "cnpdTopNConfigGrantedSize": 0,
                        "cnpdTopNConfigTime": "example-string",
                        "cnpdTopNConfigStatus": "up(1)"
                      },
                      {
                        "cnpdTopNConfigIndex": 3,
                        "cnpdTopNConfigIfIndex": "3",
                        "cnpdTopNConfigStatsSelect": "example-string",
                        "cnpdTopNConfigSampleTime": 0,
                        "cnpdTopNConfigRequestedSize": 0,
                        "cnpdTopNConfigGrantedSize": 0,
                        "cnpdTopNConfigTime": "example-string",
                        "cnpdTopNConfigStatus": "up(1)"
                      }
                    ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNConfigTable",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdTopNConfigTable",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigTable/cnpdTopNConfigEntry": {
      "get": {
        "summary": "Get cnpdTopNConfigEntry list",
        "description": "Retrieve list of cnpdTopNConfigEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "This entry provides the objects to configure and thus\n          initiate the generation of a cnpdTopNStatsTable..",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdTopNConfigIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigIfIndex": {
                        "type": "string",
                        "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
                        "x-yang-type": "if-mib:InterfaceIndex"
                      },
                      "cnpdTopNConfigStatsSelect": {
                        "type": "string",
                        "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                      },
                      "cnpdTopNConfigSampleTime": {
                        "type": "integer",
                        "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigRequestedSize": {
                        "type": "integer",
                        "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigGrantedSize": {
                        "type": "integer",
                        "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigTime": {
                        "type": "string",
                        "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
                        "x-yang-type": "yang:timeticks"
                      },
                      "cnpdTopNConfigStatus": {
                        "type": "string",
                        "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
                        "x-yang-type": "snmpv2-tc:RowStatus"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigEntry": [
                    {
                      "cnpdTopNConfigIndex": 1,
                      "cnpdTopNConfigIfIndex": "example-string",
                      "cnpdTopNConfigStatsSelect": "example-string",
                      "cnpdTopNConfigSampleTime": 0,
                      "cnpdTopNConfigRequestedSize": 0,
                      "cnpdTopNConfigGrantedSize": 0,
                      "cnpdTopNConfigTime": "example-string",
                      "cnpdTopNConfigStatus": "up(1)"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNConfigEntry",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdTopNConfigTable/cnpdTopNConfigEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigTable/cnpdTopNConfigEntry={cnpdTopNConfigIndex}": {
      "get": {
        "summary": "Get cnpdTopNConfigEntry entry",
        "description": "Retrieve specific cnpdTopNConfigEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdTopNConfigIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdTopNConfigIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigIfIndex": {
                      "type": "string",
                      "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
                      "x-yang-type": "if-mib:InterfaceIndex"
                    },
                    "cnpdTopNConfigStatsSelect": {
                      "type": "string",
                      "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                    },
                    "cnpdTopNConfigSampleTime": {
                      "type": "integer",
                      "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigRequestedSize": {
                      "type": "integer",
                      "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigGrantedSize": {
                      "type": "integer",
                      "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigTime": {
                      "type": "string",
                      "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
                      "x-yang-type": "yang:timeticks"
                    },
                    "cnpdTopNConfigStatus": {
                      "type": "string",
                      "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
                      "x-yang-type": "snmpv2-tc:RowStatus"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigEntry": {
                    "cnpdTopNConfigIndex": 1,
                    "cnpdTopNConfigIfIndex": "example-string",
                    "cnpdTopNConfigStatsSelect": "example-string",
                    "cnpdTopNConfigSampleTime": 0,
                    "cnpdTopNConfigRequestedSize": 0,
                    "cnpdTopNConfigGrantedSize": 0,
                    "cnpdTopNConfigTime": "example-string",
                    "cnpdTopNConfigStatus": "up(1)"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNConfigEntry-2"
      },
      "x-yang-path": "/cnpdTopNConfigTable/cnpdTopNConfigEntry={cnpdTopNConfigIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdTopNConfigIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsTable": {
      "get": {
        "summary": "Get cnpdTopNStatsTable data",
        "description": "Retrieve cnpdTopNStatsTable operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "A cnpdTopNStatsTable describes an ordered\n        list of protocols.",
                  "properties": {
                    "cnpdTopNStatsEntry": {
                      "type": "array",
                      "description": "cnpdTopNStatsEntry",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cnpdTopNConfigIndex": {
                            "type": "string",
                            "description": "cnpdTopNConfigIndex",
                            "x-yang-type": "leafref"
                          },
                          "cnpdTopNStatsIndex": {
                            "type": "integer",
                            "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdTopNStatsProtocolName": {
                            "type": "string",
                            "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                          },
                          "cnpdTopNStatsRate": {
                            "type": "integer",
                            "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdTopNStatsHCRate": {
                            "type": "integer",
                            "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
                            "minimum": 0
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsTable": {
                    "cnpdTopNStatsEntry": [
                      {
                        "cnpdTopNConfigIndex": "1",
                        "cnpdTopNStatsIndex": 1,
                        "cnpdTopNStatsProtocolName": "interface-1",
                        "cnpdTopNStatsRate": 0,
                        "cnpdTopNStatsHCRate": 0
                      },
                      {
                        "cnpdTopNConfigIndex": "2",
                        "cnpdTopNStatsIndex": 2,
                        "cnpdTopNStatsProtocolName": "interface-1",
                        "cnpdTopNStatsRate": 0,
                        "cnpdTopNStatsHCRate": 0
                      },
                      {
                        "cnpdTopNConfigIndex": "3",
                        "cnpdTopNStatsIndex": 3,
                        "cnpdTopNStatsProtocolName": "interface-1",
                        "cnpdTopNStatsRate": 0,
                        "cnpdTopNStatsHCRate": 0
                      }
                    ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNStatsTable",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdTopNStatsTable",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsTable/cnpdTopNStatsEntry": {
      "get": {
        "summary": "Get cnpdTopNStatsEntry list",
        "description": "Retrieve list of cnpdTopNStatsEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "cnpdTopNStatsEntry",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdTopNConfigIndex": {
                        "type": "string",
                        "description": "cnpdTopNConfigIndex",
                        "x-yang-type": "leafref"
                      },
                      "cnpdTopNStatsIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNStatsProtocolName": {
                        "type": "string",
                        "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                      },
                      "cnpdTopNStatsRate": {
                        "type": "integer",
                        "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNStatsHCRate": {
                        "type": "integer",
                        "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
                        "minimum": 0
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsEntry": [
                    {
                      "cnpdTopNConfigIndex": "example-string",
                      "cnpdTopNStatsIndex": 1,
                      "cnpdTopNStatsProtocolName": "interface-1",
                      "cnpdTopNStatsRate": 0,
                      "cnpdTopNStatsHCRate": 0
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNStatsEntry",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdTopNStatsTable/cnpdTopNStatsEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigTable": {
      "get": {
        "summary": "Get cnpdThresholdConfigTable data",
        "description": "Retrieve cnpdThresholdConfigTable operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "The cnpdThresholdConfigTable allows the management\n        station to create thresholds for the purpose of\n        sending notifications if breached, and creating a\n        history of breached thresholds.",
                  "properties": {
                    "cnpdThresholdConfigEntry": {
                      "type": "array",
                      "description": "cnpdThresholdConfigEntry",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cnpdThresholdConfigIndex": {
                            "type": "integer",
                            "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdThresholdConfigIfIndex": {
                            "type": "string",
                            "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
                            "x-yang-type": "if-mib:InterfaceIndex"
                          },
                          "cnpdThresholdConfigInterval": {
                            "type": "integer",
                            "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdThresholdConfigSampleType": {
                            "type": "string",
                            "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value."
                          },
                          "cnpdThresholdConfigProtocol": {
                            "type": "string",
                            "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                          },
                          "cnpdThresholdConfigProtocolAny": {
                            "type": "boolean",
                            "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol."
                          },
                          "cnpdThresholdConfigStatsSelect": {
                            "type": "string",
                            "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                          },
                          "cnpdThresholdConfigStartup": {
                            "type": "string",
                            "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated."
                          },
                          "cnpdThresholdConfigRising": {
                            "type": "integer",
                            "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdThresholdConfigFalling": {
                            "type": "integer",
                            "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdThresholdConfigStatus": {
                            "type": "string",
                            "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
                            "x-yang-type": "snmpv2-tc:RowStatus"
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigTable": {
                    "cnpdThresholdConfigEntry": [
                      {
                        "cnpdThresholdConfigIndex": 1,
                        "cnpdThresholdConfigIfIndex": "1",
                        "cnpdThresholdConfigInterval": 0,
                        "cnpdThresholdConfigSampleType": "ethernetCsmacd(6)",
                        "cnpdThresholdConfigProtocol": "example-string",
                        "cnpdThresholdConfigProtocolAny": true,
                        "cnpdThresholdConfigStatsSelect": "example-string",
                        "cnpdThresholdConfigStartup": "example-string",
                        "cnpdThresholdConfigRising": 0,
                        "cnpdThresholdConfigFalling": 0,
                        "cnpdThresholdConfigStatus": "up(1)"
                      },
                      {
                        "cnpdThresholdConfigIndex": 2,
                        "cnpdThresholdConfigIfIndex": "2",
                        "cnpdThresholdConfigInterval": 0,
                        "cnpdThresholdConfigSampleType": "ethernetCsmacd(6)",
                        "cnpdThresholdConfigProtocol": "example-string",
                        "cnpdThresholdConfigProtocolAny": true,
                        "cnpdThresholdConfigStatsSelect": "example-string",
                        "cnpdThresholdConfigStartup": "example-string",
                        "cnpdThresholdConfigRising": 0,
                        "cnpdThresholdConfigFalling": 0,
                        "cnpdThresholdConfigStatus": "up(1)"
                      },
                      {
                        "cnpdThresholdConfigIndex": 3,
                        "cnpdThresholdConfigIfIndex": "3",
                        "cnpdThresholdConfigInterval": 0,
                        "cnpdThresholdConfigSampleType": "ethernetCsmacd(6)",
                        "cnpdThresholdConfigProtocol": "example-string",
                        "cnpdThresholdConfigProtocolAny": true,
                        "cnpdThresholdConfigStatsSelect": "example-string",
                        "cnpdThresholdConfigStartup": "example-string",
                        "cnpdThresholdConfigRising": 0,
                        "cnpdThresholdConfigFalling": 0,
                        "cnpdThresholdConfigStatus": "up(1)"
                      }
                    ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdConfigTable",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdThresholdConfigTable",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigTable/cnpdThresholdConfigEntry": {
      "get": {
        "summary": "Get cnpdThresholdConfigEntry list",
        "description": "Retrieve list of cnpdThresholdConfigEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "cnpdThresholdConfigEntry",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdThresholdConfigIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigIfIndex": {
                        "type": "string",
                        "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
                        "x-yang-type": "if-mib:InterfaceIndex"
                      },
                      "cnpdThresholdConfigInterval": {
                        "type": "integer",
                        "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigSampleType": {
                        "type": "string",
                        "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value."
                      },
                      "cnpdThresholdConfigProtocol": {
                        "type": "string",
                        "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdThresholdConfigProtocolAny": {
                        "type": "boolean",
                        "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol."
                      },
                      "cnpdThresholdConfigStatsSelect": {
                        "type": "string",
                        "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                      },
                      "cnpdThresholdConfigStartup": {
                        "type": "string",
                        "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated."
                      },
                      "cnpdThresholdConfigRising": {
                        "type": "integer",
                        "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigFalling": {
                        "type": "integer",
                        "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigStatus": {
                        "type": "string",
                        "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
                        "x-yang-type": "snmpv2-tc:RowStatus"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigEntry": [
                    {
                      "cnpdThresholdConfigIndex": 1,
                      "cnpdThresholdConfigIfIndex": "example-string",
                      "cnpdThresholdConfigInterval": 0,
                      "cnpdThresholdConfigSampleType": "ethernetCsmacd(6)",
                      "cnpdThresholdConfigProtocol": "example-string",
                      "cnpdThresholdConfigProtocolAny": true,
                      "cnpdThresholdConfigStatsSelect": "example-string",
                      "cnpdThresholdConfigStartup": "example-string",
                      "cnpdThresholdConfigRising": 0,
                      "cnpdThresholdConfigFalling": 0,
                      "cnpdThresholdConfigStatus": "up(1)"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdConfigEntry",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdThresholdConfigTable/cnpdThresholdConfigEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigTable/cnpdThresholdConfigEntry={cnpdThresholdConfigIndex}": {
      "get": {
        "summary": "Get cnpdThresholdConfigEntry entry",
        "description": "Retrieve specific cnpdThresholdConfigEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdThresholdConfigIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdThresholdConfigIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigIfIndex": {
                      "type": "string",
                      "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
                      "x-yang-type": "if-mib:InterfaceIndex"
                    },
                    "cnpdThresholdConfigInterval": {
                      "type": "integer",
                      "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigSampleType": {
                      "type": "string",
                      "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value."
                    },
                    "cnpdThresholdConfigProtocol": {
                      "type": "string",
                      "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdThresholdConfigProtocolAny": {
                      "type": "boolean",
                      "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol."
                    },
                    "cnpdThresholdConfigStatsSelect": {
                      "type": "string",
                      "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                    },
                    "cnpdThresholdConfigStartup": {
                      "type": "string",
                      "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated."
                    },
                    "cnpdThresholdConfigRising": {
                      "type": "integer",
                      "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigFalling": {
                      "type": "integer",
                      "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigStatus": {
                      "type": "string",
                      "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
                      "x-yang-type": "snmpv2-tc:RowStatus"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigEntry": {
                    "cnpdThresholdConfigIndex": 1,
                    "cnpdThresholdConfigIfIndex": "example-string",
                    "cnpdThresholdConfigInterval": 0,
                    "cnpdThresholdConfigSampleType": "ethernetCsmacd(6)",
                    "cnpdThresholdConfigProtocol": "example-string",
                    "cnpdThresholdConfigProtocolAny": true,
                    "cnpdThresholdConfigStatsSelect": "example-string",
                    "cnpdThresholdConfigStartup": "example-string",
                    "cnpdThresholdConfigRising": 0,
                    "cnpdThresholdConfigFalling": 0,
                    "cnpdThresholdConfigStatus": "up(1)"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdConfigEntry-2"
      },
      "x-yang-path": "/cnpdThresholdConfigTable/cnpdThresholdConfigEntry={cnpdThresholdConfigIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdThresholdConfigIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryTable": {
      "get": {
        "summary": "Get cnpdThresholdHistoryTable data",
        "description": "Retrieve cnpdThresholdHistoryTable operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "The Threshold History table. Notifications\n        are unreliable so this table provides a\n        history of the last 5000 threshold breached\n        events. A notification can be traced back to\n        its cnpdThresholdHistoryEntry.",
                  "properties": {
                    "cnpdThresholdHistoryEntry": {
                      "type": "array",
                      "description": "This entry is created each time a threshold \n          is breached. \n          \n          Thus there is not necessarily a one to one \n          relationship to cnpdThresholdConfigTable \n          as not every Threshold configured will \n          be breached.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cnpdThresholdHistoryIndex": {
                            "type": "integer",
                            "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdThresholdHistoryConfigIndex": {
                            "type": "integer",
                            "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdThresholdHistoryValue": {
                            "type": "integer",
                            "description": "The actual value of the statistic when \n            the sampling was made.",
                            "minimum": 0,
                            "maximum": 4294967295
                          },
                          "cnpdThresholdHistoryType": {
                            "type": "string",
                            "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach."
                          },
                          "cnpdThresholdHistoryTime": {
                            "type": "string",
                            "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
                            "x-yang-type": "yang:timeticks"
                          },
                          "cnpdThresholdHistoryProtocol": {
                            "type": "string",
                            "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                          },
                          "cnpdThresholdHistoryStatsSelect": {
                            "type": "string",
                            "description": "This is the statistic used to base the threshold\n            on.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryTable": {
                    "cnpdThresholdHistoryEntry": [
                      {
                        "cnpdThresholdHistoryIndex": 1,
                        "cnpdThresholdHistoryConfigIndex": 1,
                        "cnpdThresholdHistoryValue": 0,
                        "cnpdThresholdHistoryType": "ethernetCsmacd(6)",
                        "cnpdThresholdHistoryTime": "example-string",
                        "cnpdThresholdHistoryProtocol": "example-string",
                        "cnpdThresholdHistoryStatsSelect": "example-string"
                      },
                      {
                        "cnpdThresholdHistoryIndex": 2,
                        "cnpdThresholdHistoryConfigIndex": 2,
                        "cnpdThresholdHistoryValue": 0,
                        "cnpdThresholdHistoryType": "ethernetCsmacd(6)",
                        "cnpdThresholdHistoryTime": "example-string",
                        "cnpdThresholdHistoryProtocol": "example-string",
                        "cnpdThresholdHistoryStatsSelect": "example-string"
                      },
                      {
                        "cnpdThresholdHistoryIndex": 3,
                        "cnpdThresholdHistoryConfigIndex": 3,
                        "cnpdThresholdHistoryValue": 0,
                        "cnpdThresholdHistoryType": "ethernetCsmacd(6)",
                        "cnpdThresholdHistoryTime": "example-string",
                        "cnpdThresholdHistoryProtocol": "example-string",
                        "cnpdThresholdHistoryStatsSelect": "example-string"
                      }
                    ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdHistoryTable",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdThresholdHistoryTable",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryTable/cnpdThresholdHistoryEntry": {
      "get": {
        "summary": "Get cnpdThresholdHistoryEntry list",
        "description": "Retrieve list of cnpdThresholdHistoryEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "This entry is created each time a threshold \n          is breached. \n          \n          Thus there is not necessarily a one to one \n          relationship to cnpdThresholdConfigTable \n          as not every Threshold configured will \n          be breached.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdThresholdHistoryIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdHistoryConfigIndex": {
                        "type": "integer",
                        "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdHistoryValue": {
                        "type": "integer",
                        "description": "The actual value of the statistic when \n            the sampling was made.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdHistoryType": {
                        "type": "string",
                        "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach."
                      },
                      "cnpdThresholdHistoryTime": {
                        "type": "string",
                        "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
                        "x-yang-type": "yang:timeticks"
                      },
                      "cnpdThresholdHistoryProtocol": {
                        "type": "string",
                        "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdThresholdHistoryStatsSelect": {
                        "type": "string",
                        "description": "This is the statistic used to base the threshold\n            on.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryEntry": [
                    {
                      "cnpdThresholdHistoryIndex": 1,
                      "cnpdThresholdHistoryConfigIndex": 1,
                      "cnpdThresholdHistoryValue": 0,
                      "cnpdThresholdHistoryType": "ethernetCsmacd(6)",
                      "cnpdThresholdHistoryTime": "example-string",
                      "cnpdThresholdHistoryProtocol": "example-string",
                      "cnpdThresholdHistoryStatsSelect": "example-string"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdHistoryEntry",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdThresholdHistoryTable/cnpdThresholdHistoryEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryTable/cnpdThresholdHistoryEntry={cnpdThresholdHistoryIndex}": {
      "get": {
        "summary": "Get cnpdThresholdHistoryEntry entry",
        "description": "Retrieve specific cnpdThresholdHistoryEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdThresholdHistoryIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdThresholdHistoryIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdHistoryConfigIndex": {
                      "type": "integer",
                      "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdHistoryValue": {
                      "type": "integer",
                      "description": "The actual value of the statistic when \n            the sampling was made.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdHistoryType": {
                      "type": "string",
                      "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach."
                    },
                    "cnpdThresholdHistoryTime": {
                      "type": "string",
                      "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
                      "x-yang-type": "yang:timeticks"
                    },
                    "cnpdThresholdHistoryProtocol": {
                      "type": "string",
                      "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdThresholdHistoryStatsSelect": {
                      "type": "string",
                      "description": "This is the statistic used to base the threshold\n            on.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryEntry": {
                    "cnpdThresholdHistoryIndex": 1,
                    "cnpdThresholdHistoryConfigIndex": 1,
                    "cnpdThresholdHistoryValue": 0,
                    "cnpdThresholdHistoryType": "ethernetCsmacd(6)",
                    "cnpdThresholdHistoryTime": "example-string",
                    "cnpdThresholdHistoryProtocol": "example-string",
                    "cnpdThresholdHistoryStatsSelect": "example-string"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdHistoryEntry-2"
      },
      "x-yang-path": "/cnpdThresholdHistoryTable/cnpdThresholdHistoryEntry={cnpdThresholdHistoryIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdThresholdHistoryIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsTable": {
      "get": {
        "summary": "Get cnpdSupportedProtocolsTable data",
        "description": "Retrieve cnpdSupportedProtocolsTable operational data from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "description": "The Supported Protocols table lists all the \n        protocols and applications which NBAR is currently\n        capable of recognizing.",
                  "properties": {
                    "cnpdSupportedProtocolsEntry": {
                      "type": "array",
                      "description": "A entry in the Supported Protocols table reflecting\n          key information about a protocol.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "cnpdSupportedProtocolsIndex": {
                            "type": "string",
                            "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                          },
                          "cnpdSupportedProtocolsName": {
                            "type": "string",
                            "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
                            "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                          }
                        }
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsTable": {
                    "cnpdSupportedProtocolsEntry": [
                      {
                        "cnpdSupportedProtocolsIndex": "1",
                        "cnpdSupportedProtocolsName": "interface-1"
                      },
                      {
                        "cnpdSupportedProtocolsIndex": "2",
                        "cnpdSupportedProtocolsName": "interface-1"
                      },
                      {
                        "cnpdSupportedProtocolsIndex": "3",
                        "cnpdSupportedProtocolsName": "interface-1"
                      }
                    ]
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdSupportedProtocolsTable",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdSupportedProtocolsTable",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsTable/cnpdSupportedProtocolsEntry": {
      "get": {
        "summary": "Get cnpdSupportedProtocolsEntry list",
        "description": "Retrieve list of cnpdSupportedProtocolsEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "A entry in the Supported Protocols table reflecting\n          key information about a protocol.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdSupportedProtocolsIndex": {
                        "type": "string",
                        "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdSupportedProtocolsName": {
                        "type": "string",
                        "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsEntry": [
                    {
                      "cnpdSupportedProtocolsIndex": "example-string",
                      "cnpdSupportedProtocolsName": "interface-1"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdSupportedProtocolsEntry",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdSupportedProtocolsTable/cnpdSupportedProtocolsEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsTable/cnpdSupportedProtocolsEntry={cnpdSupportedProtocolsIndex}": {
      "get": {
        "summary": "Get cnpdSupportedProtocolsEntry entry",
        "description": "Retrieve specific cnpdSupportedProtocolsEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdSupportedProtocolsIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdSupportedProtocolsIndex": {
                      "type": "string",
                      "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdSupportedProtocolsName": {
                      "type": "string",
                      "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsEntry": {
                    "cnpdSupportedProtocolsIndex": "example-string",
                    "cnpdSupportedProtocolsName": "interface-1"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdSupportedProtocolsEntry-2"
      },
      "x-yang-path": "/cnpdSupportedProtocolsTable/cnpdSupportedProtocolsEntry={cnpdSupportedProtocolsIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdSupportedProtocolsIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusEntry": {
      "get": {
        "summary": "Get cnpdStatusEntry list",
        "description": "Retrieve list of cnpdStatusEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "An entry in the cnpdStatusTable contains objects\n          for enabling or disabling Protocol Discovery on a\n          per interface basis.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "ifIndex": {
                        "type": "string",
                        "description": "ifIndex",
                        "x-yang-type": "leafref"
                      },
                      "cnpdStatusPdEnable": {
                        "type": "boolean",
                        "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface."
                      },
                      "cnpdStatusLastUpdateTime": {
                        "type": "string",
                        "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
                        "x-yang-type": "yang:timeticks"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusEntry": [
                    {
                      "ifIndex": "example-string",
                      "cnpdStatusPdEnable": true,
                      "cnpdStatusLastUpdateTime": "up(1)"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdStatusEntry-3",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdStatusEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusEntry={ifIndex}": {
      "get": {
        "summary": "Get cnpdStatusEntry entry",
        "description": "Retrieve specific cnpdStatusEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "ifIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ifIndex": {
                      "type": "string",
                      "description": "ifIndex",
                      "x-yang-type": "leafref"
                    },
                    "cnpdStatusPdEnable": {
                      "type": "boolean",
                      "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface."
                    },
                    "cnpdStatusLastUpdateTime": {
                      "type": "string",
                      "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
                      "x-yang-type": "yang:timeticks"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdStatusEntry": {
                    "ifIndex": "example-string",
                    "cnpdStatusPdEnable": true,
                    "cnpdStatusLastUpdateTime": "up(1)"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdStatusEntry-4"
      },
      "x-yang-path": "/cnpdStatusEntry={ifIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "ifIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsEntry": {
      "get": {
        "summary": "Get cnpdAllStatsEntry list",
        "description": "Retrieve list of cnpdAllStatsEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "An entry in the cnpdAllStatsTable table. This entry \n          contains the statistics collected on all the protocols \n          which NBAR classifies for a particular interface.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "ifIndex": {
                        "type": "string",
                        "description": "ifIndex",
                        "x-yang-type": "leafref"
                      },
                      "cnpdAllStatsProtocolsIndex": {
                        "type": "string",
                        "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdAllStatsProtocolName": {
                        "type": "string",
                        "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                      },
                      "cnpdAllStatsInPkts": {
                        "type": "integer",
                        "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsOutPkts": {
                        "type": "integer",
                        "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsInBytes": {
                        "type": "integer",
                        "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsOutBytes": {
                        "type": "integer",
                        "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsHCInPkts": {
                        "type": "integer",
                        "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
                        "minimum": 0
                      },
                      "cnpdAllStatsHCOutPkts": {
                        "type": "integer",
                        "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
                        "minimum": 0
                      },
                      "cnpdAllStatsHCInBytes": {
                        "type": "integer",
                        "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
                        "minimum": 0
                      },
                      "cnpdAllStatsHCOutBytes": {
                        "type": "integer",
                        "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
                        "minimum": 0
                      },
                      "cnpdAllStatsInBitRate": {
                        "type": "integer",
                        "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdAllStatsOutBitRate": {
                        "type": "integer",
                        "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsEntry": [
                    {
                      "ifIndex": "example-string",
                      "cnpdAllStatsProtocolsIndex": "example-string",
                      "cnpdAllStatsProtocolName": "interface-1",
                      "cnpdAllStatsInPkts": 0,
                      "cnpdAllStatsOutPkts": 0,
                      "cnpdAllStatsInBytes": 0,
                      "cnpdAllStatsOutBytes": 0,
                      "cnpdAllStatsHCInPkts": 0,
                      "cnpdAllStatsHCOutPkts": 0,
                      "cnpdAllStatsHCInBytes": 0,
                      "cnpdAllStatsHCOutBytes": 0,
                      "cnpdAllStatsInBitRate": 0,
                      "cnpdAllStatsOutBitRate": 0
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdAllStatsEntry-3",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdAllStatsEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigEntry": {
      "get": {
        "summary": "Get cnpdTopNConfigEntry list",
        "description": "Retrieve list of cnpdTopNConfigEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "This entry provides the objects to configure and thus\n          initiate the generation of a cnpdTopNStatsTable..",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdTopNConfigIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigIfIndex": {
                        "type": "string",
                        "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
                        "x-yang-type": "if-mib:InterfaceIndex"
                      },
                      "cnpdTopNConfigStatsSelect": {
                        "type": "string",
                        "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                      },
                      "cnpdTopNConfigSampleTime": {
                        "type": "integer",
                        "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigRequestedSize": {
                        "type": "integer",
                        "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigGrantedSize": {
                        "type": "integer",
                        "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNConfigTime": {
                        "type": "string",
                        "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
                        "x-yang-type": "yang:timeticks"
                      },
                      "cnpdTopNConfigStatus": {
                        "type": "string",
                        "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
                        "x-yang-type": "snmpv2-tc:RowStatus"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigEntry": [
                    {
                      "cnpdTopNConfigIndex": 1,
                      "cnpdTopNConfigIfIndex": "example-string",
                      "cnpdTopNConfigStatsSelect": "example-string",
                      "cnpdTopNConfigSampleTime": 0,
                      "cnpdTopNConfigRequestedSize": 0,
                      "cnpdTopNConfigGrantedSize": 0,
                      "cnpdTopNConfigTime": "example-string",
                      "cnpdTopNConfigStatus": "up(1)"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNConfigEntry-3",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdTopNConfigEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigEntry={cnpdTopNConfigIndex}": {
      "get": {
        "summary": "Get cnpdTopNConfigEntry entry",
        "description": "Retrieve specific cnpdTopNConfigEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdTopNConfigIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdTopNConfigIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigIfIndex": {
                      "type": "string",
                      "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
                      "x-yang-type": "if-mib:InterfaceIndex"
                    },
                    "cnpdTopNConfigStatsSelect": {
                      "type": "string",
                      "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                    },
                    "cnpdTopNConfigSampleTime": {
                      "type": "integer",
                      "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigRequestedSize": {
                      "type": "integer",
                      "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigGrantedSize": {
                      "type": "integer",
                      "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNConfigTime": {
                      "type": "string",
                      "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
                      "x-yang-type": "yang:timeticks"
                    },
                    "cnpdTopNConfigStatus": {
                      "type": "string",
                      "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
                      "x-yang-type": "snmpv2-tc:RowStatus"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNConfigEntry": {
                    "cnpdTopNConfigIndex": 1,
                    "cnpdTopNConfigIfIndex": "example-string",
                    "cnpdTopNConfigStatsSelect": "example-string",
                    "cnpdTopNConfigSampleTime": 0,
                    "cnpdTopNConfigRequestedSize": 0,
                    "cnpdTopNConfigGrantedSize": 0,
                    "cnpdTopNConfigTime": "example-string",
                    "cnpdTopNConfigStatus": "up(1)"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNConfigEntry-4"
      },
      "x-yang-path": "/cnpdTopNConfigEntry={cnpdTopNConfigIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdTopNConfigIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsEntry": {
      "get": {
        "summary": "Get cnpdTopNStatsEntry list",
        "description": "Retrieve list of cnpdTopNStatsEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "cnpdTopNStatsEntry",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdTopNConfigIndex": {
                        "type": "string",
                        "description": "cnpdTopNConfigIndex",
                        "x-yang-type": "leafref"
                      },
                      "cnpdTopNStatsIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNStatsProtocolName": {
                        "type": "string",
                        "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                      },
                      "cnpdTopNStatsRate": {
                        "type": "integer",
                        "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdTopNStatsHCRate": {
                        "type": "integer",
                        "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
                        "minimum": 0
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsEntry": [
                    {
                      "cnpdTopNConfigIndex": "example-string",
                      "cnpdTopNStatsIndex": 1,
                      "cnpdTopNStatsProtocolName": "interface-1",
                      "cnpdTopNStatsRate": 0,
                      "cnpdTopNStatsHCRate": 0
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNStatsEntry-3",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdTopNStatsEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigEntry": {
      "get": {
        "summary": "Get cnpdThresholdConfigEntry list",
        "description": "Retrieve list of cnpdThresholdConfigEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "cnpdThresholdConfigEntry",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdThresholdConfigIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigIfIndex": {
                        "type": "string",
                        "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
                        "x-yang-type": "if-mib:InterfaceIndex"
                      },
                      "cnpdThresholdConfigInterval": {
                        "type": "integer",
                        "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigSampleType": {
                        "type": "string",
                        "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value."
                      },
                      "cnpdThresholdConfigProtocol": {
                        "type": "string",
                        "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdThresholdConfigProtocolAny": {
                        "type": "boolean",
                        "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol."
                      },
                      "cnpdThresholdConfigStatsSelect": {
                        "type": "string",
                        "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                      },
                      "cnpdThresholdConfigStartup": {
                        "type": "string",
                        "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated."
                      },
                      "cnpdThresholdConfigRising": {
                        "type": "integer",
                        "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigFalling": {
                        "type": "integer",
                        "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdConfigStatus": {
                        "type": "string",
                        "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
                        "x-yang-type": "snmpv2-tc:RowStatus"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigEntry": [
                    {
                      "cnpdThresholdConfigIndex": 1,
                      "cnpdThresholdConfigIfIndex": "example-string",
                      "cnpdThresholdConfigInterval": 0,
                      "cnpdThresholdConfigSampleType": "ethernetCsmacd(6)",
                      "cnpdThresholdConfigProtocol": "example-string",
                      "cnpdThresholdConfigProtocolAny": true,
                      "cnpdThresholdConfigStatsSelect": "example-string",
                      "cnpdThresholdConfigStartup": "example-string",
                      "cnpdThresholdConfigRising": 0,
                      "cnpdThresholdConfigFalling": 0,
                      "cnpdThresholdConfigStatus": "up(1)"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdConfigEntry-3",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdThresholdConfigEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigEntry={cnpdThresholdConfigIndex}": {
      "get": {
        "summary": "Get cnpdThresholdConfigEntry entry",
        "description": "Retrieve specific cnpdThresholdConfigEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdThresholdConfigIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdThresholdConfigIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigIfIndex": {
                      "type": "string",
                      "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
                      "x-yang-type": "if-mib:InterfaceIndex"
                    },
                    "cnpdThresholdConfigInterval": {
                      "type": "integer",
                      "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigSampleType": {
                      "type": "string",
                      "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value."
                    },
                    "cnpdThresholdConfigProtocol": {
                      "type": "string",
                      "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdThresholdConfigProtocolAny": {
                      "type": "boolean",
                      "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol."
                    },
                    "cnpdThresholdConfigStatsSelect": {
                      "type": "string",
                      "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                    },
                    "cnpdThresholdConfigStartup": {
                      "type": "string",
                      "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated."
                    },
                    "cnpdThresholdConfigRising": {
                      "type": "integer",
                      "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigFalling": {
                      "type": "integer",
                      "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdConfigStatus": {
                      "type": "string",
                      "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
                      "x-yang-type": "snmpv2-tc:RowStatus"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdConfigEntry": {
                    "cnpdThresholdConfigIndex": 1,
                    "cnpdThresholdConfigIfIndex": "example-string",
                    "cnpdThresholdConfigInterval": 0,
                    "cnpdThresholdConfigSampleType": "ethernetCsmacd(6)",
                    "cnpdThresholdConfigProtocol": "example-string",
                    "cnpdThresholdConfigProtocolAny": true,
                    "cnpdThresholdConfigStatsSelect": "example-string",
                    "cnpdThresholdConfigStartup": "example-string",
                    "cnpdThresholdConfigRising": 0,
                    "cnpdThresholdConfigFalling": 0,
                    "cnpdThresholdConfigStatus": "up(1)"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdConfigEntry-4"
      },
      "x-yang-path": "/cnpdThresholdConfigEntry={cnpdThresholdConfigIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdThresholdConfigIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryEntry": {
      "get": {
        "summary": "Get cnpdThresholdHistoryEntry list",
        "description": "Retrieve list of cnpdThresholdHistoryEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "This entry is created each time a threshold \n          is breached. \n          \n          Thus there is not necessarily a one to one \n          relationship to cnpdThresholdConfigTable \n          as not every Threshold configured will \n          be breached.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdThresholdHistoryIndex": {
                        "type": "integer",
                        "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdHistoryConfigIndex": {
                        "type": "integer",
                        "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdHistoryValue": {
                        "type": "integer",
                        "description": "The actual value of the statistic when \n            the sampling was made.",
                        "minimum": 0,
                        "maximum": 4294967295
                      },
                      "cnpdThresholdHistoryType": {
                        "type": "string",
                        "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach."
                      },
                      "cnpdThresholdHistoryTime": {
                        "type": "string",
                        "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
                        "x-yang-type": "yang:timeticks"
                      },
                      "cnpdThresholdHistoryProtocol": {
                        "type": "string",
                        "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdThresholdHistoryStatsSelect": {
                        "type": "string",
                        "description": "This is the statistic used to base the threshold\n            on.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryEntry": [
                    {
                      "cnpdThresholdHistoryIndex": 1,
                      "cnpdThresholdHistoryConfigIndex": 1,
                      "cnpdThresholdHistoryValue": 0,
                      "cnpdThresholdHistoryType": "ethernetCsmacd(6)",
                      "cnpdThresholdHistoryTime": "example-string",
                      "cnpdThresholdHistoryProtocol": "example-string",
                      "cnpdThresholdHistoryStatsSelect": "example-string"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdHistoryEntry-3",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdThresholdHistoryEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryEntry={cnpdThresholdHistoryIndex}": {
      "get": {
        "summary": "Get cnpdThresholdHistoryEntry entry",
        "description": "Retrieve specific cnpdThresholdHistoryEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdThresholdHistoryIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdThresholdHistoryIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdHistoryConfigIndex": {
                      "type": "integer",
                      "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdHistoryValue": {
                      "type": "integer",
                      "description": "The actual value of the statistic when \n            the sampling was made.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdThresholdHistoryType": {
                      "type": "string",
                      "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach."
                    },
                    "cnpdThresholdHistoryTime": {
                      "type": "string",
                      "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
                      "x-yang-type": "yang:timeticks"
                    },
                    "cnpdThresholdHistoryProtocol": {
                      "type": "string",
                      "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdThresholdHistoryStatsSelect": {
                      "type": "string",
                      "description": "This is the statistic used to base the threshold\n            on.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdThresholdHistoryEntry": {
                    "cnpdThresholdHistoryIndex": 1,
                    "cnpdThresholdHistoryConfigIndex": 1,
                    "cnpdThresholdHistoryValue": 0,
                    "cnpdThresholdHistoryType": "ethernetCsmacd(6)",
                    "cnpdThresholdHistoryTime": "example-string",
                    "cnpdThresholdHistoryProtocol": "example-string",
                    "cnpdThresholdHistoryStatsSelect": "example-string"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdThresholdHistoryEntry-4"
      },
      "x-yang-path": "/cnpdThresholdHistoryEntry={cnpdThresholdHistoryIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdThresholdHistoryIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsEntry": {
      "get": {
        "summary": "Get cnpdSupportedProtocolsEntry list",
        "description": "Retrieve list of cnpdSupportedProtocolsEntry entries from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "array",
                  "description": "A entry in the Supported Protocols table reflecting\n          key information about a protocol.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "cnpdSupportedProtocolsIndex": {
                        "type": "string",
                        "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                      },
                      "cnpdSupportedProtocolsName": {
                        "type": "string",
                        "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
                        "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                      }
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsEntry": [
                    {
                      "cnpdSupportedProtocolsIndex": "example-string",
                      "cnpdSupportedProtocolsName": "interface-1"
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdSupportedProtocolsEntry-3",
        "parameters": [
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ]
      },
      "x-yang-path": "/cnpdSupportedProtocolsEntry",
      "x-restconf-kind": "container"
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsEntry={cnpdSupportedProtocolsIndex}": {
      "get": {
        "summary": "Get cnpdSupportedProtocolsEntry entry",
        "description": "Retrieve specific cnpdSupportedProtocolsEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdSupportedProtocolsIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "1"
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdSupportedProtocolsIndex": {
                      "type": "string",
                      "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdSupportedProtocolsName": {
                      "type": "string",
                      "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdSupportedProtocolsEntry": {
                    "cnpdSupportedProtocolsIndex": "example-string",
                    "cnpdSupportedProtocolsName": "interface-1"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdSupportedProtocolsEntry-4"
      },
      "x-yang-path": "/cnpdSupportedProtocolsEntry={cnpdSupportedProtocolsIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdSupportedProtocolsIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsTable/cnpdAllStatsEntry={ifIndex},{cnpdAllStatsProtocolsIndex}": {
      "get": {
        "summary": "Get cnpdAllStatsEntry entry",
        "description": "Retrieve specific cnpdAllStatsEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "ifIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cnpdAllStatsProtocolsIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ifIndex": {
                      "type": "string",
                      "description": "ifIndex",
                      "x-yang-type": "leafref"
                    },
                    "cnpdAllStatsProtocolsIndex": {
                      "type": "string",
                      "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdAllStatsProtocolName": {
                      "type": "string",
                      "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                    },
                    "cnpdAllStatsInPkts": {
                      "type": "integer",
                      "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsOutPkts": {
                      "type": "integer",
                      "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsInBytes": {
                      "type": "integer",
                      "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsOutBytes": {
                      "type": "integer",
                      "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsHCInPkts": {
                      "type": "integer",
                      "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
                      "minimum": 0
                    },
                    "cnpdAllStatsHCOutPkts": {
                      "type": "integer",
                      "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
                      "minimum": 0
                    },
                    "cnpdAllStatsHCInBytes": {
                      "type": "integer",
                      "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
                      "minimum": 0
                    },
                    "cnpdAllStatsHCOutBytes": {
                      "type": "integer",
                      "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
                      "minimum": 0
                    },
                    "cnpdAllStatsInBitRate": {
                      "type": "integer",
                      "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsOutBitRate": {
                      "type": "integer",
                      "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsEntry": {
                    "ifIndex": "example-string",
                    "cnpdAllStatsProtocolsIndex": "example-string",
                    "cnpdAllStatsProtocolName": "interface-1",
                    "cnpdAllStatsInPkts": 0,
                    "cnpdAllStatsOutPkts": 0,
                    "cnpdAllStatsInBytes": 0,
                    "cnpdAllStatsOutBytes": 0,
                    "cnpdAllStatsHCInPkts": 0,
                    "cnpdAllStatsHCOutPkts": 0,
                    "cnpdAllStatsHCInBytes": 0,
                    "cnpdAllStatsHCOutBytes": 0,
                    "cnpdAllStatsInBitRate": 0,
                    "cnpdAllStatsOutBitRate": 0
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdAllStatsEntry-2"
      },
      "x-yang-path": "/cnpdAllStatsTable/cnpdAllStatsEntry={ifIndex cnpdAllStatsProtocolsIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "ifIndex cnpdAllStatsProtocolsIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsTable/cnpdTopNStatsEntry={cnpdTopNConfigIndex},{cnpdTopNStatsIndex}": {
      "get": {
        "summary": "Get cnpdTopNStatsEntry entry",
        "description": "Retrieve specific cnpdTopNStatsEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdTopNConfigIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cnpdTopNStatsIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdTopNConfigIndex": {
                      "type": "string",
                      "description": "cnpdTopNConfigIndex",
                      "x-yang-type": "leafref"
                    },
                    "cnpdTopNStatsIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNStatsProtocolName": {
                      "type": "string",
                      "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                    },
                    "cnpdTopNStatsRate": {
                      "type": "integer",
                      "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNStatsHCRate": {
                      "type": "integer",
                      "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
                      "minimum": 0
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsEntry": {
                    "cnpdTopNConfigIndex": "example-string",
                    "cnpdTopNStatsIndex": 1,
                    "cnpdTopNStatsProtocolName": "interface-1",
                    "cnpdTopNStatsRate": 0,
                    "cnpdTopNStatsHCRate": 0
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNStatsEntry-2"
      },
      "x-yang-path": "/cnpdTopNStatsTable/cnpdTopNStatsEntry={cnpdTopNConfigIndex cnpdTopNStatsIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdTopNConfigIndex cnpdTopNStatsIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsEntry={ifIndex},{cnpdAllStatsProtocolsIndex}": {
      "get": {
        "summary": "Get cnpdAllStatsEntry entry",
        "description": "Retrieve specific cnpdAllStatsEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "ifIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cnpdAllStatsProtocolsIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ifIndex": {
                      "type": "string",
                      "description": "ifIndex",
                      "x-yang-type": "leafref"
                    },
                    "cnpdAllStatsProtocolsIndex": {
                      "type": "string",
                      "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex"
                    },
                    "cnpdAllStatsProtocolName": {
                      "type": "string",
                      "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                    },
                    "cnpdAllStatsInPkts": {
                      "type": "integer",
                      "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsOutPkts": {
                      "type": "integer",
                      "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsInBytes": {
                      "type": "integer",
                      "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsOutBytes": {
                      "type": "integer",
                      "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsHCInPkts": {
                      "type": "integer",
                      "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
                      "minimum": 0
                    },
                    "cnpdAllStatsHCOutPkts": {
                      "type": "integer",
                      "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
                      "minimum": 0
                    },
                    "cnpdAllStatsHCInBytes": {
                      "type": "integer",
                      "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
                      "minimum": 0
                    },
                    "cnpdAllStatsHCOutBytes": {
                      "type": "integer",
                      "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
                      "minimum": 0
                    },
                    "cnpdAllStatsInBitRate": {
                      "type": "integer",
                      "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdAllStatsOutBitRate": {
                      "type": "integer",
                      "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdAllStatsEntry": {
                    "ifIndex": "example-string",
                    "cnpdAllStatsProtocolsIndex": "example-string",
                    "cnpdAllStatsProtocolName": "interface-1",
                    "cnpdAllStatsInPkts": 0,
                    "cnpdAllStatsOutPkts": 0,
                    "cnpdAllStatsInBytes": 0,
                    "cnpdAllStatsOutBytes": 0,
                    "cnpdAllStatsHCInPkts": 0,
                    "cnpdAllStatsHCOutPkts": 0,
                    "cnpdAllStatsHCInBytes": 0,
                    "cnpdAllStatsHCOutBytes": 0,
                    "cnpdAllStatsInBitRate": 0,
                    "cnpdAllStatsOutBitRate": 0
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdAllStatsEntry-4"
      },
      "x-yang-path": "/cnpdAllStatsEntry={ifIndex cnpdAllStatsProtocolsIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "ifIndex cnpdAllStatsProtocolsIndex"
      ]
    },
    "/data/CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsEntry={cnpdTopNConfigIndex},{cnpdTopNStatsIndex}": {
      "get": {
        "summary": "Get cnpdTopNStatsEntry entry",
        "description": "Retrieve specific cnpdTopNStatsEntry entry by key from MIB",
        "tags": [
          "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
        ],
        "parameters": [
          {
            "name": "cnpdTopNConfigIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cnpdTopNStatsIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "required": false,
            "description": "RESTCONF response media type (RFC 8040)",
            "schema": {
              "type": "string",
              "default": "application/yang-data+json",
              "enum": [
                "application/yang-data+json",
                "application/yang-data+xml"
              ]
            }
          },
          {
            "name": "depth",
            "in": "query",
            "required": false,
            "description": "Limit the depth of returned sub-tree data (RFC 8040 Section 4.8.2). Use 'unbounded' for full depth.",
            "schema": {
              "type": "string",
              "default": "unbounded"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "description": "Select specific fields to return (RFC 8040 Section 4.8.3). Example: fields=name;status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "content",
            "in": "query",
            "required": false,
            "description": "Filter by config state: 'config' (config true only), 'nonconfig' (config false only), or 'all'.",
            "schema": {
              "type": "string",
              "enum": [
                "config",
                "nonconfig",
                "all"
              ],
              "default": "all"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cnpdTopNConfigIndex": {
                      "type": "string",
                      "description": "cnpdTopNConfigIndex",
                      "x-yang-type": "leafref"
                    },
                    "cnpdTopNStatsIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNStatsProtocolName": {
                      "type": "string",
                      "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName"
                    },
                    "cnpdTopNStatsRate": {
                      "type": "integer",
                      "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
                      "minimum": 0,
                      "maximum": 4294967295
                    },
                    "cnpdTopNStatsHCRate": {
                      "type": "integer",
                      "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
                      "minimum": 0
                    }
                  }
                },
                "example": {
                  "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:cnpdTopNStatsEntry": {
                    "cnpdTopNConfigIndex": "example-string",
                    "cnpdTopNStatsIndex": 1,
                    "cnpdTopNStatsProtocolName": "interface-1",
                    "cnpdTopNStatsRate": 0,
                    "cnpdTopNStatsHCRate": 0
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden — insufficient access rights (NACM)",
            "content": {
              "application/yang-data+json": {
                "schema": {
                  "$ref": "#/components/schemas/restconf-error"
                }
              }
            }
          }
        },
        "operationId": "get-cnpdTopNStatsEntry-4"
      },
      "x-yang-path": "/cnpdTopNStatsEntry={cnpdTopNConfigIndex cnpdTopNStatsIndex}",
      "x-restconf-kind": "list-instance",
      "x-list-keys": [
        "cnpdTopNConfigIndex cnpdTopNStatsIndex"
      ]
    }
  },
  "components": {
    "schemas": {
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_CISCO-NBAR-PROTOCOL-DISCOVERY-MIB": {
        "type": "object",
        "description": "This object is used to enable or disable \n          Notifications on a global basis. \n          \n          If set to 'true' - Notifications are\n          enabled.\n          If set to 'false' - Notifications are\n          disabled.",
        "properties": {
          "cnpdStatusEntry": {
            "type": "array",
            "description": "An entry in the cnpdStatusTable contains objects\n          for enabling or disabling Protocol Discovery on a\n          per interface basis.",
            "items": {
              "type": "object",
              "properties": {
                "ifIndex": {
                  "type": "string",
                  "description": "ifIndex",
                  "x-yang-type": "leafref",
                  "readOnly": true
                },
                "cnpdStatusPdEnable": {
                  "type": "boolean",
                  "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface.",
                  "readOnly": true
                },
                "cnpdStatusLastUpdateTime": {
                  "type": "string",
                  "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
                  "x-yang-type": "yang:timeticks",
                  "readOnly": true
                }
              }
            },
            "readOnly": true
          },
          "cnpdAllStatsEntry": {
            "type": "array",
            "description": "An entry in the cnpdAllStatsTable table. This entry \n          contains the statistics collected on all the protocols \n          which NBAR classifies for a particular interface.",
            "items": {
              "type": "object",
              "properties": {
                "ifIndex": {
                  "type": "string",
                  "description": "ifIndex",
                  "x-yang-type": "leafref",
                  "readOnly": true
                },
                "cnpdAllStatsProtocolsIndex": {
                  "type": "string",
                  "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                  "readOnly": true
                },
                "cnpdAllStatsProtocolName": {
                  "type": "string",
                  "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
                  "readOnly": true
                },
                "cnpdAllStatsInPkts": {
                  "type": "integer",
                  "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdAllStatsOutPkts": {
                  "type": "integer",
                  "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdAllStatsInBytes": {
                  "type": "integer",
                  "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdAllStatsOutBytes": {
                  "type": "integer",
                  "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdAllStatsHCInPkts": {
                  "type": "integer",
                  "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
                  "minimum": 0,
                  "readOnly": true
                },
                "cnpdAllStatsHCOutPkts": {
                  "type": "integer",
                  "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
                  "minimum": 0,
                  "readOnly": true
                },
                "cnpdAllStatsHCInBytes": {
                  "type": "integer",
                  "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
                  "minimum": 0,
                  "readOnly": true
                },
                "cnpdAllStatsHCOutBytes": {
                  "type": "integer",
                  "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
                  "minimum": 0,
                  "readOnly": true
                },
                "cnpdAllStatsInBitRate": {
                  "type": "integer",
                  "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdAllStatsOutBitRate": {
                  "type": "integer",
                  "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                }
              }
            },
            "readOnly": true
          },
          "cnpdTopNConfigEntry": {
            "type": "array",
            "description": "This entry provides the objects to configure and thus\n          initiate the generation of a cnpdTopNStatsTable..",
            "items": {
              "type": "object",
              "properties": {
                "cnpdTopNConfigIndex": {
                  "type": "integer",
                  "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdTopNConfigIfIndex": {
                  "type": "string",
                  "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
                  "x-yang-type": "if-mib:InterfaceIndex",
                  "readOnly": true
                },
                "cnpdTopNConfigStatsSelect": {
                  "type": "string",
                  "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
                  "readOnly": true
                },
                "cnpdTopNConfigSampleTime": {
                  "type": "integer",
                  "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdTopNConfigRequestedSize": {
                  "type": "integer",
                  "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdTopNConfigGrantedSize": {
                  "type": "integer",
                  "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdTopNConfigTime": {
                  "type": "string",
                  "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
                  "x-yang-type": "yang:timeticks",
                  "readOnly": true
                },
                "cnpdTopNConfigStatus": {
                  "type": "string",
                  "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
                  "x-yang-type": "snmpv2-tc:RowStatus",
                  "readOnly": true
                }
              }
            },
            "readOnly": true
          },
          "cnpdTopNStatsEntry": {
            "type": "array",
            "description": "cnpdTopNStatsEntry",
            "items": {
              "type": "object",
              "properties": {
                "cnpdTopNConfigIndex": {
                  "type": "string",
                  "description": "cnpdTopNConfigIndex",
                  "x-yang-type": "leafref",
                  "readOnly": true
                },
                "cnpdTopNStatsIndex": {
                  "type": "integer",
                  "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdTopNStatsProtocolName": {
                  "type": "string",
                  "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
                  "readOnly": true
                },
                "cnpdTopNStatsRate": {
                  "type": "integer",
                  "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdTopNStatsHCRate": {
                  "type": "integer",
                  "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
                  "minimum": 0,
                  "readOnly": true
                }
              }
            },
            "readOnly": true
          },
          "cnpdThresholdConfigEntry": {
            "type": "array",
            "description": "cnpdThresholdConfigEntry",
            "items": {
              "type": "object",
              "properties": {
                "cnpdThresholdConfigIndex": {
                  "type": "integer",
                  "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdThresholdConfigIfIndex": {
                  "type": "string",
                  "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
                  "x-yang-type": "if-mib:InterfaceIndex",
                  "readOnly": true
                },
                "cnpdThresholdConfigInterval": {
                  "type": "integer",
                  "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdThresholdConfigSampleType": {
                  "type": "string",
                  "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value.",
                  "readOnly": true
                },
                "cnpdThresholdConfigProtocol": {
                  "type": "string",
                  "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                  "readOnly": true
                },
                "cnpdThresholdConfigProtocolAny": {
                  "type": "boolean",
                  "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol.",
                  "readOnly": true
                },
                "cnpdThresholdConfigStatsSelect": {
                  "type": "string",
                  "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
                  "readOnly": true
                },
                "cnpdThresholdConfigStartup": {
                  "type": "string",
                  "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated.",
                  "readOnly": true
                },
                "cnpdThresholdConfigRising": {
                  "type": "integer",
                  "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdThresholdConfigFalling": {
                  "type": "integer",
                  "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdThresholdConfigStatus": {
                  "type": "string",
                  "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
                  "x-yang-type": "snmpv2-tc:RowStatus",
                  "readOnly": true
                }
              }
            },
            "readOnly": true
          },
          "cnpdThresholdHistoryEntry": {
            "type": "array",
            "description": "This entry is created each time a threshold \n          is breached. \n          \n          Thus there is not necessarily a one to one \n          relationship to cnpdThresholdConfigTable \n          as not every Threshold configured will \n          be breached.",
            "items": {
              "type": "object",
              "properties": {
                "cnpdThresholdHistoryIndex": {
                  "type": "integer",
                  "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdThresholdHistoryConfigIndex": {
                  "type": "integer",
                  "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdThresholdHistoryValue": {
                  "type": "integer",
                  "description": "The actual value of the statistic when \n            the sampling was made.",
                  "minimum": 0,
                  "maximum": 4294967295,
                  "readOnly": true
                },
                "cnpdThresholdHistoryType": {
                  "type": "string",
                  "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach.",
                  "readOnly": true
                },
                "cnpdThresholdHistoryTime": {
                  "type": "string",
                  "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
                  "x-yang-type": "yang:timeticks",
                  "readOnly": true
                },
                "cnpdThresholdHistoryProtocol": {
                  "type": "string",
                  "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                  "readOnly": true
                },
                "cnpdThresholdHistoryStatsSelect": {
                  "type": "string",
                  "description": "This is the statistic used to base the threshold\n            on.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
                  "readOnly": true
                }
              }
            },
            "readOnly": true
          },
          "cnpdSupportedProtocolsEntry": {
            "type": "array",
            "description": "A entry in the Supported Protocols table reflecting\n          key information about a protocol.",
            "items": {
              "type": "object",
              "properties": {
                "cnpdSupportedProtocolsIndex": {
                  "type": "string",
                  "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                  "readOnly": true
                },
                "cnpdSupportedProtocolsName": {
                  "type": "string",
                  "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
                  "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
                  "readOnly": true
                }
              }
            },
            "readOnly": true
          },
          "cnpdNotificationsConfig": {
            "type": "object",
            "description": "This object is used to enable or disable \n          Notifications on a global basis. \n          \n          If set to 'true' - Notifications are\n          enabled.\n          If set to 'false' - Notifications are\n          disabled.",
            "properties": {
              "cnpdNotificationsEnable": {
                "type": "boolean",
                "description": "This object is used to enable or disable \n          Notifications on a global basis. \n          \n          If set to 'true' - Notifications are\n          enabled.\n          If set to 'false' - Notifications are\n          disabled.",
                "readOnly": true
              }
            },
            "readOnly": true
          },
          "cnpdStatusTable": {
            "type": "object",
            "description": "The cnpdStatusTable is used to enable and\n        disable Protocol Discovery on an interface.",
            "properties": {
              "cnpdStatusEntry": {
                "type": "array",
                "description": "An entry in the cnpdStatusTable contains objects\n          for enabling or disabling Protocol Discovery on a\n          per interface basis.",
                "items": {
                  "type": "object",
                  "properties": {
                    "ifIndex": {
                      "type": "string",
                      "description": "ifIndex",
                      "x-yang-type": "leafref",
                      "readOnly": true
                    },
                    "cnpdStatusPdEnable": {
                      "type": "boolean",
                      "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface.",
                      "readOnly": true
                    },
                    "cnpdStatusLastUpdateTime": {
                      "type": "string",
                      "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
                      "x-yang-type": "yang:timeticks",
                      "readOnly": true
                    }
                  }
                },
                "readOnly": true
              }
            },
            "readOnly": true
          },
          "cnpdAllStatsTable": {
            "type": "object",
            "description": "The cnpdAllStatsTable contains all the statistics\n        available for all the protocols/applications currently\n        recognized by NBAR Protocol Discovery for a particular \n        interface.\n        \n        In the event of an overflow, the 32 bit counters are not \n        valid. There is no overflow support.",
            "properties": {
              "cnpdAllStatsEntry": {
                "type": "array",
                "description": "An entry in the cnpdAllStatsTable table. This entry \n          contains the statistics collected on all the protocols \n          which NBAR classifies for a particular interface.",
                "items": {
                  "type": "object",
                  "properties": {
                    "ifIndex": {
                      "type": "string",
                      "description": "ifIndex",
                      "x-yang-type": "leafref",
                      "readOnly": true
                    },
                    "cnpdAllStatsProtocolsIndex": {
                      "type": "string",
                      "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                      "readOnly": true
                    },
                    "cnpdAllStatsProtocolName": {
                      "type": "string",
                      "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
                      "readOnly": true
                    },
                    "cnpdAllStatsInPkts": {
                      "type": "integer",
                      "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdAllStatsOutPkts": {
                      "type": "integer",
                      "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdAllStatsInBytes": {
                      "type": "integer",
                      "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdAllStatsOutBytes": {
                      "type": "integer",
                      "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdAllStatsHCInPkts": {
                      "type": "integer",
                      "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
                      "minimum": 0,
                      "readOnly": true
                    },
                    "cnpdAllStatsHCOutPkts": {
                      "type": "integer",
                      "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
                      "minimum": 0,
                      "readOnly": true
                    },
                    "cnpdAllStatsHCInBytes": {
                      "type": "integer",
                      "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
                      "minimum": 0,
                      "readOnly": true
                    },
                    "cnpdAllStatsHCOutBytes": {
                      "type": "integer",
                      "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
                      "minimum": 0,
                      "readOnly": true
                    },
                    "cnpdAllStatsInBitRate": {
                      "type": "integer",
                      "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdAllStatsOutBitRate": {
                      "type": "integer",
                      "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    }
                  }
                },
                "readOnly": true
              }
            },
            "readOnly": true
          },
          "cnpdTopNConfigTable": {
            "type": "object",
            "description": "The cnpdTopNConfigTable is used to configure\n        cnpdTopNStatsTable's.",
            "properties": {
              "cnpdTopNConfigEntry": {
                "type": "array",
                "description": "This entry provides the objects to configure and thus\n          initiate the generation of a cnpdTopNStatsTable..",
                "items": {
                  "type": "object",
                  "properties": {
                    "cnpdTopNConfigIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdTopNConfigIfIndex": {
                      "type": "string",
                      "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
                      "x-yang-type": "if-mib:InterfaceIndex",
                      "readOnly": true
                    },
                    "cnpdTopNConfigStatsSelect": {
                      "type": "string",
                      "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
                      "readOnly": true
                    },
                    "cnpdTopNConfigSampleTime": {
                      "type": "integer",
                      "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdTopNConfigRequestedSize": {
                      "type": "integer",
                      "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdTopNConfigGrantedSize": {
                      "type": "integer",
                      "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdTopNConfigTime": {
                      "type": "string",
                      "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
                      "x-yang-type": "yang:timeticks",
                      "readOnly": true
                    },
                    "cnpdTopNConfigStatus": {
                      "type": "string",
                      "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
                      "x-yang-type": "snmpv2-tc:RowStatus",
                      "readOnly": true
                    }
                  }
                },
                "readOnly": true
              }
            },
            "readOnly": true
          },
          "cnpdTopNStatsTable": {
            "type": "object",
            "description": "A cnpdTopNStatsTable describes an ordered\n        list of protocols.",
            "properties": {
              "cnpdTopNStatsEntry": {
                "type": "array",
                "description": "cnpdTopNStatsEntry",
                "items": {
                  "type": "object",
                  "properties": {
                    "cnpdTopNConfigIndex": {
                      "type": "string",
                      "description": "cnpdTopNConfigIndex",
                      "x-yang-type": "leafref",
                      "readOnly": true
                    },
                    "cnpdTopNStatsIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdTopNStatsProtocolName": {
                      "type": "string",
                      "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
                      "readOnly": true
                    },
                    "cnpdTopNStatsRate": {
                      "type": "integer",
                      "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdTopNStatsHCRate": {
                      "type": "integer",
                      "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
                      "minimum": 0,
                      "readOnly": true
                    }
                  }
                },
                "readOnly": true
              }
            },
            "readOnly": true
          },
          "cnpdThresholdConfigTable": {
            "type": "object",
            "description": "The cnpdThresholdConfigTable allows the management\n        station to create thresholds for the purpose of\n        sending notifications if breached, and creating a\n        history of breached thresholds.",
            "properties": {
              "cnpdThresholdConfigEntry": {
                "type": "array",
                "description": "cnpdThresholdConfigEntry",
                "items": {
                  "type": "object",
                  "properties": {
                    "cnpdThresholdConfigIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdThresholdConfigIfIndex": {
                      "type": "string",
                      "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
                      "x-yang-type": "if-mib:InterfaceIndex",
                      "readOnly": true
                    },
                    "cnpdThresholdConfigInterval": {
                      "type": "integer",
                      "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdThresholdConfigSampleType": {
                      "type": "string",
                      "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value.",
                      "readOnly": true
                    },
                    "cnpdThresholdConfigProtocol": {
                      "type": "string",
                      "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                      "readOnly": true
                    },
                    "cnpdThresholdConfigProtocolAny": {
                      "type": "boolean",
                      "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol.",
                      "readOnly": true
                    },
                    "cnpdThresholdConfigStatsSelect": {
                      "type": "string",
                      "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
                      "readOnly": true
                    },
                    "cnpdThresholdConfigStartup": {
                      "type": "string",
                      "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated.",
                      "readOnly": true
                    },
                    "cnpdThresholdConfigRising": {
                      "type": "integer",
                      "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdThresholdConfigFalling": {
                      "type": "integer",
                      "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdThresholdConfigStatus": {
                      "type": "string",
                      "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
                      "x-yang-type": "snmpv2-tc:RowStatus",
                      "readOnly": true
                    }
                  }
                },
                "readOnly": true
              }
            },
            "readOnly": true
          },
          "cnpdThresholdHistoryTable": {
            "type": "object",
            "description": "The Threshold History table. Notifications\n        are unreliable so this table provides a\n        history of the last 5000 threshold breached\n        events. A notification can be traced back to\n        its cnpdThresholdHistoryEntry.",
            "properties": {
              "cnpdThresholdHistoryEntry": {
                "type": "array",
                "description": "This entry is created each time a threshold \n          is breached. \n          \n          Thus there is not necessarily a one to one \n          relationship to cnpdThresholdConfigTable \n          as not every Threshold configured will \n          be breached.",
                "items": {
                  "type": "object",
                  "properties": {
                    "cnpdThresholdHistoryIndex": {
                      "type": "integer",
                      "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdThresholdHistoryConfigIndex": {
                      "type": "integer",
                      "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdThresholdHistoryValue": {
                      "type": "integer",
                      "description": "The actual value of the statistic when \n            the sampling was made.",
                      "minimum": 0,
                      "maximum": 4294967295,
                      "readOnly": true
                    },
                    "cnpdThresholdHistoryType": {
                      "type": "string",
                      "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach.",
                      "readOnly": true
                    },
                    "cnpdThresholdHistoryTime": {
                      "type": "string",
                      "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
                      "x-yang-type": "yang:timeticks",
                      "readOnly": true
                    },
                    "cnpdThresholdHistoryProtocol": {
                      "type": "string",
                      "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                      "readOnly": true
                    },
                    "cnpdThresholdHistoryStatsSelect": {
                      "type": "string",
                      "description": "This is the statistic used to base the threshold\n            on.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
                      "readOnly": true
                    }
                  }
                },
                "readOnly": true
              }
            },
            "readOnly": true
          },
          "cnpdSupportedProtocolsTable": {
            "type": "object",
            "description": "The Supported Protocols table lists all the \n        protocols and applications which NBAR is currently\n        capable of recognizing.",
            "properties": {
              "cnpdSupportedProtocolsEntry": {
                "type": "array",
                "description": "A entry in the Supported Protocols table reflecting\n          key information about a protocol.",
                "items": {
                  "type": "object",
                  "properties": {
                    "cnpdSupportedProtocolsIndex": {
                      "type": "string",
                      "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
                      "readOnly": true
                    },
                    "cnpdSupportedProtocolsName": {
                      "type": "string",
                      "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
                      "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
                      "readOnly": true
                    }
                  }
                },
                "readOnly": true
              }
            },
            "readOnly": true
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_object-1": {
        "type": "object",
        "description": "object-1",
        "properties": {
          "cnpdThresholdConfigIndex": {
            "type": "string",
            "description": "cnpdThresholdConfigIndex",
            "x-yang-type": "leafref",
            "readOnly": true
          },
          "cnpdThresholdConfigIfIndex": {
            "type": "string",
            "description": "cnpdThresholdConfigIfIndex",
            "x-yang-type": "leafref",
            "readOnly": true
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_object-2": {
        "type": "object",
        "description": "object-2",
        "properties": {
          "cnpdThresholdConfigIndex": {
            "type": "string",
            "description": "cnpdThresholdConfigIndex",
            "x-yang-type": "leafref",
            "readOnly": true
          },
          "cnpdThresholdConfigStatsSelect": {
            "type": "string",
            "description": "cnpdThresholdConfigStatsSelect",
            "x-yang-type": "leafref",
            "readOnly": true
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_object-3": {
        "type": "object",
        "description": "object-3",
        "properties": {
          "cnpdThresholdHistoryIndex": {
            "type": "string",
            "description": "cnpdThresholdHistoryIndex",
            "x-yang-type": "leafref",
            "readOnly": true
          },
          "cnpdThresholdHistoryValue": {
            "type": "string",
            "description": "cnpdThresholdHistoryValue",
            "x-yang-type": "leafref",
            "readOnly": true
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_object-4": {
        "type": "object",
        "description": "object-4",
        "properties": {
          "cnpdThresholdConfigIndex": {
            "type": "string",
            "description": "cnpdThresholdConfigIndex",
            "x-yang-type": "leafref",
            "readOnly": true
          },
          "cnpdThresholdConfigFalling": {
            "type": "string",
            "description": "cnpdThresholdConfigFalling",
            "x-yang-type": "leafref",
            "readOnly": true
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_object-5": {
        "type": "object",
        "description": "object-5",
        "properties": {
          "cnpdThresholdConfigIndex": {
            "type": "string",
            "description": "cnpdThresholdConfigIndex",
            "x-yang-type": "leafref",
            "readOnly": true
          },
          "cnpdThresholdConfigProtocol": {
            "type": "string",
            "description": "cnpdThresholdConfigProtocol",
            "x-yang-type": "leafref",
            "readOnly": true
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_object-6": {
        "type": "object",
        "description": "object-6",
        "properties": {
          "cnpdThresholdHistoryIndex": {
            "type": "string",
            "description": "cnpdThresholdHistoryIndex",
            "x-yang-type": "leafref",
            "readOnly": true
          },
          "cnpdThresholdHistoryTime": {
            "type": "string",
            "description": "cnpdThresholdHistoryTime",
            "x-yang-type": "leafref",
            "readOnly": true
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_cnpdStatusEntry": {
        "type": "array",
        "description": "An entry in the cnpdStatusTable contains objects\n          for enabling or disabling Protocol Discovery on a\n          per interface basis.",
        "items": {
          "type": "object",
          "properties": {
            "ifIndex": {
              "type": "string",
              "description": "ifIndex",
              "x-yang-type": "leafref",
              "readOnly": true
            },
            "cnpdStatusPdEnable": {
              "type": "boolean",
              "description": "This object is used to enable or disable \n            Protocol Discovery on an interface. \n            \n            If set to 'true' - Protocol Discovery is \n            enabled on this Interface. \n            If set to 'false' - Protocol Discovery is \n            disabled on this Interface.",
              "readOnly": true
            },
            "cnpdStatusLastUpdateTime": {
              "type": "string",
              "description": "The value of sysUpTime at the time Protocol \n            Discovery was last enabled  on an interface.\n            If the interface does not have Protocol\n            Discovery enabled this value is zero.",
              "x-yang-type": "yang:timeticks",
              "readOnly": true
            }
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_cnpdAllStatsEntry": {
        "type": "array",
        "description": "An entry in the cnpdAllStatsTable table. This entry \n          contains the statistics collected on all the protocols \n          which NBAR classifies for a particular interface.",
        "items": {
          "type": "object",
          "properties": {
            "ifIndex": {
              "type": "string",
              "description": "ifIndex",
              "x-yang-type": "leafref",
              "readOnly": true
            },
            "cnpdAllStatsProtocolsIndex": {
              "type": "string",
              "description": "An object which represents a unique \n            identifier for a protocol or application \n            which NBAR currently recognizes.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
              "readOnly": true
            },
            "cnpdAllStatsProtocolName": {
              "type": "string",
              "description": "Name of the application or protocol, a \n            unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
              "readOnly": true
            },
            "cnpdAllStatsInPkts": {
              "type": "integer",
              "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdAllStatsOutPkts": {
              "type": "integer",
              "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdAllStatsInBytes": {
              "type": "integer",
              "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdAllStatsOutBytes": {
              "type": "integer",
              "description": "The byte count of outbound octets as\n            determined by Protocol Discovery.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdAllStatsHCInPkts": {
              "type": "integer",
              "description": "The packet count of inbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInPkts.",
              "minimum": 0,
              "readOnly": true
            },
            "cnpdAllStatsHCOutPkts": {
              "type": "integer",
              "description": "The packet count of outbound packets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutPkts.",
              "minimum": 0,
              "readOnly": true
            },
            "cnpdAllStatsHCInBytes": {
              "type": "integer",
              "description": "The byte count of inbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsInBytes.",
              "minimum": 0,
              "readOnly": true
            },
            "cnpdAllStatsHCOutBytes": {
              "type": "integer",
              "description": "The byte count of outbound octets as \n            determined by Protocol Discovery.\n            This is the 64-bit (High Capacity)\n            version of cnpdAllStatsOutBytes.",
              "minimum": 0,
              "readOnly": true
            },
            "cnpdAllStatsInBitRate": {
              "type": "integer",
              "description": "The inbound bit rate as determined \n            by Protocol Discovery.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdAllStatsOutBitRate": {
              "type": "integer",
              "description": "The outbound bit rate as determined \n            by Protocol Discovery.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            }
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_cnpdTopNConfigEntry": {
        "type": "array",
        "description": "This entry provides the objects to configure and thus\n          initiate the generation of a cnpdTopNStatsTable..",
        "items": {
          "type": "object",
          "properties": {
            "cnpdTopNConfigIndex": {
              "type": "integer",
              "description": "A monotonically increasing integer which\n            uniquely identifies a cnpdTopNConfigEntry \n            in the cnpdTopNConfigTable.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdTopNConfigIfIndex": {
              "type": "string",
              "description": "This object allows the management station\n            to select the interface, which Protocol Discovery\n            is running on, to be used to create this \n            cnpdTopNConfigEntry.",
              "x-yang-type": "if-mib:InterfaceIndex",
              "readOnly": true
            },
            "cnpdTopNConfigStatsSelect": {
              "type": "string",
              "description": "This object allows the management station to\n            select the statistic used to base the order\n            of the top-n table on.\n            \n            For example: a cnpdTopNConfigStatsSelect of\n            bitRateSum means order this table based\n            on each applications/protocols combined\n            in and out bitrate.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
              "readOnly": true
            },
            "cnpdTopNConfigSampleTime": {
              "type": "integer",
              "description": "If the cnpdTopNConfigStatsSelect is\n            bitRateIn, bitRateOut or bitRateSum, then\n            this value is the interval in seconds that \n            the bitrate is sampled.\n            \n            This has no effect if the cnpdTopNConfigStatsSelect\n            is byte or packet based.\n            \n            When this object is modified by the management \n            station, a new sample period is started regardless\n            of whether the original cnpdTopNConfigSampleTime\n            was finished.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdTopNConfigRequestedSize": {
              "type": "integer",
              "description": "The requested size of the associated \n            cnpdTopNStatsTable entry.\n            \n            For example a cnpdTopNConfigRequestedSize of\n            20 indicates the management station wants\n            to create an associated  cnpdTopNStatsTable \n            entry of 20 protocol/application's",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdTopNConfigGrantedSize": {
              "type": "integer",
              "description": "The actual size of the associated \t\n            cnpdTopNStatsTable entry.\n            \n            The reason this may differ from \n            cnpdTopNConfigRequestedSize is because a \n            management station may request a number of \n            protocols that is greater than the number of \n            protocols actually found by Protocol Discovery.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdTopNConfigTime": {
              "type": "string",
              "description": "The value of sysUpTime when the associated\n            cnpdTopNStatsTable entry was created.",
              "x-yang-type": "yang:timeticks",
              "readOnly": true
            },
            "cnpdTopNConfigStatus": {
              "type": "string",
              "description": "This object is used to create or delete \n            the row entry in cnpdTopNConfigTable.\n            \n            When creating a row entry the management\n            station is required to specify a value\n            for cnpdTopNConfigIfIndex only.\n            \n            'notReady' means that a row exists but \n            either it has no valid IfIndex or it has \n            not been set to createAndGo or active.\n            \n            'active' means that a createAndGo or active \n            has been issued, AND a valid ifIndex exists. \n            Therefore if a row is 'active' it means a \n            TopNStats entry has been generated.\n            \n            If you set an 'active' row to createAndWait \n            it will get the status 'notReady'. \n            \n            If you set any row to 'notReady' - it will go \n            to the 'notReadystate'.\n            \n            If you set any row to 'notInService' - it will \n            go to the 'notInService' state and the corresponding \n            TopNStatsEntry will be deleted.\n            \n            The same TopNConfig entry can be re-used without \n            changes by setting it to 'active'. The corresponding \n            TopStatsTable entry will be regenerated. This can \n            be used by the NMS to poll a particular TopNConfig \n            Entry.\n            \n            Changes to an existing TopNConfig entry can be made\n            by setting the status to 'createAndWait' and changing\n            the necessary objects. Setting it to 'createAndGo' or\n            'active' will cause the corresponding TopNStats entry\n            to be regenerated.",
              "x-yang-type": "snmpv2-tc:RowStatus",
              "readOnly": true
            }
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_cnpdTopNStatsEntry": {
        "type": "array",
        "description": "cnpdTopNStatsEntry",
        "items": {
          "type": "object",
          "properties": {
            "cnpdTopNConfigIndex": {
              "type": "string",
              "description": "cnpdTopNConfigIndex",
              "x-yang-type": "leafref",
              "readOnly": true
            },
            "cnpdTopNStatsIndex": {
              "type": "integer",
              "description": "A monotonically increasing integer which \n            uniquely identifies a cnpdTopNStatsEntry \n            in the cnpdTopNStatsTable.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdTopNStatsProtocolName": {
              "type": "string",
              "description": "Name of the application or protocol, \n            a unique textual string, assigned in the\n            cnpdSupportedProtocolsTable.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
              "readOnly": true
            },
            "cnpdTopNStatsRate": {
              "type": "integer",
              "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdTopNStatsHCRate": {
              "type": "integer",
              "description": "The amount of change in the selected statistic\n            during this sampling interval. The selected\n            statistic is the cnpdTopNConfigStatsSelect\n            from the associated cnpdTopNConfigStatsEntry.\t\n            \n            This is the 64-bit (High Capacity) version of \n            cnpdTopNStatsRate.",
              "minimum": 0,
              "readOnly": true
            }
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_cnpdThresholdConfigEntry": {
        "type": "array",
        "description": "cnpdThresholdConfigEntry",
        "items": {
          "type": "object",
          "properties": {
            "cnpdThresholdConfigIndex": {
              "type": "integer",
              "description": "A monotonically increasing integer which \n            uniquely identifies an entry in the \n            cnpdThresholdConfigTable.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdThresholdConfigIfIndex": {
              "type": "string",
              "description": "This object allows the management station to \n            select the interface, which Protocol Discovery is \n            running on, to be used to create this \n            cnpdThresholdConfigTable entry.",
              "x-yang-type": "if-mib:InterfaceIndex",
              "readOnly": true
            },
            "cnpdThresholdConfigInterval": {
              "type": "integer",
              "description": "The interval in seconds over which the data is\n            sampled and compared with cnpdThresholdConfigRising\n            and cnpdThresholdConfigFalling thresholds.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdThresholdConfigSampleType": {
              "type": "string",
              "description": "The method of sampling the selected statistic and\n            calculating the value to be compared against \n            cnpdThresholdConfigRising or \n            cnpdThresholdConfigFalling thresholds. \n            \t\t\n            If the value of this object is absoluteValue(1), \n            the value at the end of the sampling interval \n            cnpdThresholdConfigInterval, will be compared \n            with the cnpdThresholdConfigRising and \n            cnpdThresholdConfigFalling thresholds. \n            \n            In this mode, when cnpdThresholdConfigStatsSelect is\n            byte or packet based, a maximum of two \n            cnpdThresholdHistory entries will be created per\n            application, as these byte and packet counts \n            monotonically increase from zero.\n            \t\t\n            If the value of this object is deltaValue(2), \n            the difference between the samples at the \n            beginning and end of the cnpdThresholdConfigInterval \n            will be compared with the cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling thresholds.\n            \t\t\n            Because the difference in the previous and current\n            samples are compared over the sample period\n            cnpdThresholdConfigInterval, this mode provides \n            more granularity to the thresholds because the NMS \n            is now provided with the gradient or change in the \n            cnpdThresholdConfigStatsSelect.\n            \n            Note that even though the sample value is monotonically\n            increasing for byte and packet counts, \n            cnpdThresholdConfigSampleType set to deltaValue, can \n            generate falling cnpdThresholdHistory entries, because\n            the gradient can be lower than the \n            cnpdThresholdConfigFalling value.",
              "readOnly": true
            },
            "cnpdThresholdConfigProtocol": {
              "type": "string",
              "description": "The application or protocol which the\n            management station wishes to configure a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.\n            \n            If cnpdThresholdConfigProtocolAny is set\n            to TRUE this value will be ignored. If it\n            is set to FALSE, then cnpdThresholdConfigProtocol\n            will be the only protocol that is checked\n            to see if it has breached the threshold.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
              "readOnly": true
            },
            "cnpdThresholdConfigProtocolAny": {
              "type": "boolean",
              "description": "If set to 'true' - this threshold is configured\n            to check for any protocol which meets the threshold\n            criteria. This means that multiple protocols can\n            generate ThresholdHistoryTable entries. Each\n            protocol is subject to the hysterisis mechanism.\n            \n            If set to 'false' - this threshold is configured\n            to check for the protocol which meets the threshold\n            criteria referred to by cnpdThresholdConfigProtocol.",
              "readOnly": true
            },
            "cnpdThresholdConfigStatsSelect": {
              "type": "string",
              "description": "This object allows the management station to\n            select the statistic used to base the threshold\n            on.\n            \n            For example a cnpdThresholdConfigStatsSelect of\n            bitRateSum means cnpdThresholdConfigRising and\n            cnpdThresholdConfigFalling are values based on\n            the combined value of in and out bitrates.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
              "readOnly": true
            },
            "cnpdThresholdConfigStartup": {
              "type": "string",
              "description": "This controls the type of notification that is \n            sent when this threshold entry is first enabled. \n            \n            Because there is no previous sampling history,\n            choosing one of these options determines the type\n            of notification generated - Rising or Falling.\n            \n            If the first sample after this entry is enabled \n            is greater than or equal to cnpdThresholdConfigRising and\n            this object is equal to rising(1) or risingOrFalling(3), \n            then a single rising notification will be generated. \n            \n            If the first sample after this entry is enabled\n            is less than or equal to cnpdThresholdConfigFalling\n            and this object is equal to falling(2) or \n            risingOrFalling(3), then a single falling notification \n            will be generated.",
              "readOnly": true
            },
            "cnpdThresholdConfigRising": {
              "type": "integer",
              "description": "This is the threshold object which the managment\n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            rising.\n            \n            When the current sample is greater than or \n            equal to this object, and the value at the last \n            sampling interval was less than this object (in \n            other words the value is rising), an entry in the \n            cnpdThresholdHistoryTable will be created.\n            \n            After a rising event is generated, another such \n            event will not be generated until the sampled value\n            falls below this threshold and reaches the\n            cnpdThresholdConfigFalling value.\n            \n            This ensures that samples which are taken\n            after a cnpdThresholdConfigRising threshold event\n            has been created, do not create further thresholds\n            and therefore notifications, until the \n            cnpdThresholdConfigFalling threshold has been met.\n            \n            Thus a very short cnpdThresholdConfigInterval can be\n            chosen without risk of multiple notifications for\n            the same threshold breach condition.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdThresholdConfigFalling": {
              "type": "integer",
              "description": "This is the threshold object which the management \n            station sets to determine if it gets breached. It \n            indicates the statistic being sampled was\n            falling. \n            \n            When current sample is less than or equal \n            to this object, and the value at the last sampling\n            interval was greater than this object (in other \n            words the value is falling), an entry in the \n            cnpdThresholdHistoryTable will be created. \n            \t\t\n            After a falling event is generated, another \n            such event will not be generated until the sampled \n            value rises above this object and reaches the\n            cnpdThresholdConfigRising value.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdThresholdConfigStatus": {
              "type": "string",
              "description": "This object is used to create or delete \n            the row entry in cnpdThresholdConfigTable.\n             \n            When creating a row entry the management station \n            is required to specify a value for \n            cnpdThresholdConfigIfIndex, cnpdThresholdConfigRising \n            and cnpdThresholdConfigFalling.\n            \n            'active' means that a createAndGo or active has \n            been issued, AND a valid ifIndex exists. And therefore \n            if a row is 'active' it means a ThresholdHistory entry \n            may have been generated if the value was breached.\n            \n            If you set an 'active' row to 'createAndWait' - it will \n            in fact get the status 'notReady'. \n            \n            Likewise if you set any row to 'notInService' or 'notReady' \n            it will go to the 'notReady' state.",
              "x-yang-type": "snmpv2-tc:RowStatus",
              "readOnly": true
            }
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_cnpdThresholdHistoryEntry": {
        "type": "array",
        "description": "This entry is created each time a threshold \n          is breached. \n          \n          Thus there is not necessarily a one to one \n          relationship to cnpdThresholdConfigTable \n          as not every Threshold configured will \n          be breached.",
        "items": {
          "type": "object",
          "properties": {
            "cnpdThresholdHistoryIndex": {
              "type": "integer",
              "description": "A monotonically increasing integer\n            which uniquely identifies this \n            cnpdThresholdHistoryEntry in the \n            cnpdThresholdHistory table.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdThresholdHistoryConfigIndex": {
              "type": "integer",
              "description": "The cnpdThresholdConfigTable entry \n            which generated this entry. Using this \n            object the management station can backtrack \n            to the appropriate cnpdThresholdConfigEntry.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdThresholdHistoryValue": {
              "type": "integer",
              "description": "The actual value of the statistic when \n            the sampling was made.",
              "minimum": 0,
              "maximum": 4294967295,
              "readOnly": true
            },
            "cnpdThresholdHistoryType": {
              "type": "string",
              "description": "Describes whether this is an\n            event caused by a rising\n            or falling threshold breach.",
              "readOnly": true
            },
            "cnpdThresholdHistoryTime": {
              "type": "string",
              "description": "The value of sysUpTime of the running \n            configuration when the event occurred.",
              "x-yang-type": "yang:timeticks",
              "readOnly": true
            },
            "cnpdThresholdHistoryProtocol": {
              "type": "string",
              "description": "The application or protocol which the\n            management station configured a\n            threshold on.\n            \n            This object is an index into the \n            SupportedProtocolsTable where details\n            of the protocol can be found.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
              "readOnly": true
            },
            "cnpdThresholdHistoryStatsSelect": {
              "type": "string",
              "description": "This is the statistic used to base the threshold\n            on.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdDataType",
              "readOnly": true
            }
          }
        }
      },
      "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB_cnpdSupportedProtocolsEntry": {
        "type": "array",
        "description": "A entry in the Supported Protocols table reflecting\n          key information about a protocol.",
        "items": {
          "type": "object",
          "properties": {
            "cnpdSupportedProtocolsIndex": {
              "type": "string",
              "description": "A unique identifier of a row in this table.\n            \n            Thus it also represents a unique identifier for a\n            protocol or application which NBAR currently\n            recognizes.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolIndex",
              "readOnly": true
            },
            "cnpdSupportedProtocolsName": {
              "type": "string",
              "description": "This object reflects the valid string of a\n            protocol or application which NBAR currently\n            recognizes.",
              "x-yang-type": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB:CiscoPdProtocolName",
              "readOnly": true
            }
          }
        }
      },
      "restconf-error": {
        "type": "object",
        "description": "Standard RESTCONF error response (RFC 8040 Section 7.1)",
        "properties": {
          "ietf-restconf:errors": {
            "type": "object",
            "properties": {
              "error": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "error-type": {
                      "type": "string",
                      "enum": [
                        "transport",
                        "rpc",
                        "protocol",
                        "application"
                      ],
                      "description": "Layer where the error occurred"
                    },
                    "error-tag": {
                      "type": "string",
                      "description": "Enumerated error tag (e.g. invalid-value, data-missing, access-denied)"
                    },
                    "error-severity": {
                      "type": "string",
                      "enum": [
                        "error",
                        "warning"
                      ],
                      "description": "Error severity"
                    },
                    "error-app-tag": {
                      "type": "string",
                      "description": "Application-specific error tag"
                    },
                    "error-path": {
                      "type": "string",
                      "description": "YANG instance-identifier of the error node"
                    },
                    "error-message": {
                      "type": "string",
                      "description": "Human-readable error description"
                    }
                  },
                  "required": [
                    "error-type",
                    "error-tag"
                  ]
                }
              }
            }
          }
        },
        "example": {
          "ietf-restconf:errors": {
            "error": [
              {
                "error-type": "protocol",
                "error-tag": "invalid-value",
                "error-severity": "error",
                "error-message": "Invalid input parameter"
              }
            ]
          }
        }
      }
    },
    "securitySchemes": {
      "basicAuth": {
        "type": "http",
        "scheme": "basic"
      }
    }
  },
  "security": [
    {
      "basicAuth": []
    }
  ],
  "tags": [
    {
      "name": "CISCO-NBAR-PROTOCOL-DISCOVERY-MIB",
      "description": "MIB operations for CISCO-NBAR-PROTOCOL-DISCOVERY-MIB"
    }
  ],
  "externalDocs": {
    "description": "Cisco SNMP Object Navigator",
    "url": "https://snmp.cloudapps.cisco.com/Support/IOS/do/BrowseMIB.do"
  }
}
