FRR BGP

POST /netinfra/routing/frr/bgp/neighbor

Get BGP neighbor detail

Per-peer flap/reset reason + message-stats breakdown (on demand)

Request JSON Object:
  • ip (string) – (required)

Status Codes:
Response JSON Object:
  • connections_dropped (integer) – Times session dropped (= flap count)

  • connections_established (integer) – Times session established

  • description (string) – Configured description

  • hostname (string) – Peer hostname (from capability)

  • ip (string)

  • last_reset_code (integer) – FRR numeric reset code

  • last_reset_due_to (string) – Flap/reset detail from “show bgp neighbor <ip> json” — explains WHY the session last dropped (e.g. “Router ID changed”, “Hold Timer Expired”). Best-effort: empty when the per-neighbor detail fetch failed.

  • last_reset_msec (integer) – ms since the last reset

  • local_as (integer) – Local AS for this peer (if different)

  • message_stats (any) – per-type message breakdown

  • msg_rcvd (integer) – Total messages received

  • msg_sent (integer) – Total messages sent

  • peer_config (any) – Included when State is NOT Established

  • pfx_rcd (integer) – Prefixes received

  • pfx_snt (integer) – Prefixes sent

  • remote_as (integer)

  • state (string) – Idle, Connect, Active, OpenSent, OpenConfirm, Established

  • uptime (string) – Human-readable uptime

  • uptime_msec (integer) – Uptime in milliseconds

GET /netinfra/routing/frr/bgp/summary

Get BGP summary

Get BGP summary information including neighbor states

Status Codes:
Response JSON Object:
  • local_as (integer)

  • neighbors[].connections_dropped (integer) – Times session dropped (= flap count)

  • neighbors[].connections_established (integer) – Times session established

  • neighbors[].description (string) – Configured description

  • neighbors[].hostname (string) – Peer hostname (from capability)

  • neighbors[].ip (string)

  • neighbors[].last_reset_code (integer) – FRR numeric reset code

  • neighbors[].last_reset_due_to (string) – Flap/reset detail from “show bgp neighbor <ip> json” — explains WHY the session last dropped (e.g. “Router ID changed”, “Hold Timer Expired”). Best-effort: empty when the per-neighbor detail fetch failed.

  • neighbors[].last_reset_msec (integer) – ms since the last reset

  • neighbors[].local_as (integer) – Local AS for this peer (if different)

  • neighbors[].message_stats (any) – per-type message breakdown

  • neighbors[].msg_rcvd (integer) – Total messages received

  • neighbors[].msg_sent (integer) – Total messages sent

  • neighbors[].peer_config (any) – Included when State is NOT Established

  • neighbors[].pfx_rcd (integer) – Prefixes received

  • neighbors[].pfx_snt (integer) – Prefixes sent

  • neighbors[].remote_as (integer)

  • neighbors[].state (string) – Idle, Connect, Active, OpenSent, OpenConfirm, Established

  • neighbors[].uptime (string) – Human-readable uptime

  • neighbors[].uptime_msec (integer) – Uptime in milliseconds

  • peer_count (integer) – Number of configured peers

  • rib_count (integer) – Number of RIB entries

  • router_id (string)

  • table_version (integer) – BGP table version

  • vrf_name (string) – VRF name (default: “default”)