OpenAPI Specification
openapi: 3.1.0
info:
title: NATS Monitoring HTTP Accounts Clustering API
description: The NATS server exposes a monitoring HTTP endpoint that provides real-time server statistics including connection info, route details, subscription data, JetStream metrics, and health checks for observability and operations.
version: 2.10.0
contact:
name: NATS.io
url: https://nats.io/
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: http://localhost:8222
description: Default NATS monitoring endpoint
tags:
- name: Clustering
description: Cluster, gateway, and leaf node endpoints
paths:
/routez:
get:
operationId: getRoutes
summary: NATS Get route information
description: Returns information about active routes between servers in a NATS cluster including remote server IDs, addresses, and message statistics per route.
parameters:
- name: subs
in: query
description: Include subscription detail
schema:
type: boolean
default: false
responses:
'200':
description: Route information
content:
application/json:
schema:
$ref: '#/components/schemas/Routez'
tags:
- Clustering
/gatewayz:
get:
operationId: getGateways
summary: NATS Get gateway information
description: Returns information about configured gateways between NATS super-clusters including remote gateway connections and message statistics.
parameters:
- name: accs
in: query
description: Include account information
schema:
type: boolean
default: false
- name: gw_name
in: query
description: Filter by gateway name
schema:
type: string
responses:
'200':
description: Gateway information
content:
application/json:
schema:
$ref: '#/components/schemas/Gatewayz'
tags:
- Clustering
/leafz:
get:
operationId: getLeafNodes
summary: NATS Get leaf node information
description: Returns information about leaf node connections including remote address, account, and message statistics.
parameters:
- name: subs
in: query
description: Include subscription detail
schema:
type: boolean
default: false
responses:
'200':
description: Leaf node information
content:
application/json:
schema:
$ref: '#/components/schemas/Leafz'
tags:
- Clustering
components:
schemas:
Gatewayz:
type: object
properties:
server_id:
type: string
now:
type: string
format: date-time
name:
type: string
description: Gateway cluster name
host:
type: string
port:
type: integer
outbound_gateways:
type: object
additionalProperties:
type: object
properties:
configured:
type: boolean
connection:
type: object
properties:
cid:
type: integer
ip:
type: string
port:
type: integer
start:
type: string
format: date-time
uptime:
type: string
in_msgs:
type: integer
out_msgs:
type: integer
in_bytes:
type: integer
out_bytes:
type: integer
inbound_gateways:
type: object
additionalProperties:
type: array
items:
type: object
properties:
configured:
type: boolean
connection:
type: object
properties:
cid:
type: integer
ip:
type: string
port:
type: integer
start:
type: string
format: date-time
uptime:
type: string
in_msgs:
type: integer
out_msgs:
type: integer
in_bytes:
type: integer
out_bytes:
type: integer
Leafz:
type: object
properties:
server_id:
type: string
now:
type: string
format: date-time
leafnodes:
type: integer
description: Number of leaf node connections
leafs:
type: array
items:
type: object
properties:
name:
type: string
description: Leaf node name
is_spoke:
type: boolean
description: Whether this is a spoke connection
account:
type: string
description: Account name
ip:
type: string
port:
type: integer
rtt:
type: string
in_msgs:
type: integer
out_msgs:
type: integer
in_bytes:
type: integer
out_bytes:
type: integer
subscriptions:
type: integer
Routez:
type: object
properties:
server_id:
type: string
now:
type: string
format: date-time
num_routes:
type: integer
description: Number of active routes
routes:
type: array
items:
type: object
properties:
rid:
type: integer
description: Route ID
remote_id:
type: string
description: Remote server ID
remote_name:
type: string
description: Remote server name
did_solicit:
type: boolean
description: Whether this server initiated the route
is_configured:
type: boolean
description: Whether route is explicitly configured
ip:
type: string
description: Remote IP
port:
type: integer
description: Remote port
pending_size:
type: integer
description: Pending bytes
in_msgs:
type: integer
out_msgs:
type: integer
in_bytes:
type: integer
out_bytes:
type: integer
subscriptions:
type: integer