Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/nginx-stream-upstreams-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: '9.0'
title: NGINX Plus REST Stream Upstreams API
description: NGINX Plus REST [API](https://nginx.org/en/docs/http/ngx_http_api_module.html) provides access to NGINX Plus status information, on-the-fly configuration of upstream servers and key-value pairs management for [http](https://nginx.org/en/docs/http/ngx_http_keyval_module.html) and [stream](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html).
servers:
- url: /api/9
tags:
- name: Stream Upstreams
paths:
/stream/upstreams/:
get:
tags:
- Stream Upstreams
summary: NGINX Return Status of All Stream Upstream Server Groups
description: Returns status of each stream upstream server group and its servers.
operationId: getStreamUpstreams
parameters:
- name: fields
in: query
description: Limits which fields of upstream server groups will be output. If the “<literal>fields</literal>” value is empty, only names of upstreams will be output.
x-example: ''
schema:
type: string
responses:
'200':
description: Success
x-microcks-refs:
- name: getStreamUpstreams200Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamMap'
example:
mysql_backends:
peers:
- id: 0
server: 10.0.0.1:12345
name: 10.0.0.1:12345
backup: false
weight: 5
state: up
active: 0
ssl:
handshakes: 1045
handshakes_failed: 89
session_reuses: 321
no_common_protocol: 4
handshake_timeout: 0
peer_rejected_cert: 0
verify_failures:
expired_cert: 2
revoked_cert: 1
hostname_mismatch: 2
other: 1
max_conns: 30
connecions: 1231
sent: 251946292
received: 19222475454
fails: 0
unavail: 0
health_checks:
checks: 26214
fails: 0
unhealthy: 0
last_passed: true
downtime: 0
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
- id: 1
server: 10.0.0.1:12346
name: 10.0.0.1:12346
backup: true
weight: 1
state: unhealthy
active: 0
max_conns: 30
connections: 0
sent: 0
received: 0
fails: 0
unavail: 0
health_checks:
checks: 26284
fails: 26284
unhealthy: 1
last_passed: false
downtime: 262925617
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
zombies: 0
zone: mysql_backends
dns:
peers:
- id: 0
server: 10.0.0.1:12347
name: 10.0.0.1:12347
backup: false
weight: 5
state: up
active: 0
ssl:
handshakes: 5268
handshakes_failed: 121
session_reuses: 854
no_common_protocol: 4
handshake_timeout: 0
peer_rejected_cert: 0
verify_failures:
expired_cert: 2
revoked_cert: 1
hostname_mismatch: 2
other: 1
max_conns: 30
connections: 667231
sent: 251946292
received: 19222475454
fails: 0
unavail: 0
health_checks:
checks: 26214
fails: 0
unhealthy: 0
last_passed: true
downtime: 0
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
- id: 1
server: 10.0.0.1:12348
name: 10.0.0.1:12348
backup: true
weight: 1
state: unhealthy
active: 0
connections: 0
max_conns: 30
sent: 0
received: 0
fails: 0
unavail: 0
health_checks:
checks: 26284
fails: 26284
unhealthy: 1
last_passed: false
downtime: 262925617
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
zombies: 0
zone: dns
'404':
description: Unknown version (*UnknownVersion*)
x-microcks-refs:
- name: getStreamUpstreams404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/stream/upstreams/{streamUpstreamName}/:
parameters:
- name: streamUpstreamName
in: path
description: The name of a stream upstream server group.
required: true
x-example: example_streamUpstreamName
schema:
type: string
get:
tags:
- Stream Upstreams
summary: NGINX Return Status of a Stream Upstream Server Group
description: Returns status of a particular stream upstream server group and its servers.
operationId: getStreamUpstream
parameters:
- name: fields
in: query
description: Limits which fields of the upstream server group will be output.
x-example: ''
schema:
type: string
responses:
'200':
description: Success
x-microcks-refs:
- name: getStreamUpstream200Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstream'
example:
dns:
peers:
- id: 0
server: 10.0.0.1:12347
name: 10.0.0.1:12347
backup: false
weight: 5
state: up
active: 0
ssl:
handshakes: 200
handshakes_failed: 4
session_reuses: 189
no_common_protocol: 4
handshake_timeout: 0
peer_rejected_cert: 0
verify_failures:
expired_cert: 2
revoked_cert: 1
hostname_mismatch: 2
other: 1
max_conns: 50
connections: 667231
sent: 251946292
received: 19222475454
fails: 0
unavail: 0
health_checks:
checks: 26214
fails: 0
unhealthy: 0
last_passed: true
downtime: 0
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
- id: 1
server: 10.0.0.1:12348
name: 10.0.0.1:12348
backup: true
weight: 1
state: unhealthy
active: 0
max_conns: 50
connections: 0
sent: 0
received: 0
fails: 0
unavail: 0
health_checks:
checks: 26284
fails: 26284
unhealthy: 1
last_passed: false
downtime: 262925617
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
zombies: 0
zone: dns
'400':
description: Upstream is static (*UpstreamStatic*)
x-microcks-refs:
- name: getStreamUpstream400Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'404':
description: 'Unknown version (*UnknownVersion*),
upstream not found (*UpstreamNotFound*)
'
x-microcks-refs:
- name: getStreamUpstream404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
delete:
tags:
- Stream Upstreams
summary: NGINX Reset Statistics of a Stream Upstream Server Group
description: Resets the statistics for each upstream server in an upstream server group.
operationId: deleteStreamUpstreamStat
responses:
'204':
description: Success
'400':
description: Upstream is static (*UpstreamStatic*)
x-microcks-refs:
- name: deleteStreamUpstreamStat400Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'404':
description: 'Unknown version (*UnknownVersion*),
upstream not found (*UpstreamNotFound*)
'
x-microcks-refs:
- name: deleteStreamUpstreamStat404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'405':
description: Method disabled (*MethodDisabled*)
x-microcks-refs:
- name: deleteStreamUpstreamStat405Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/stream/upstreams/{streamUpstreamName}/servers/:
parameters:
- name: streamUpstreamName
in: path
description: The name of an upstream server group.
required: true
x-example: example_streamUpstreamName
schema:
type: string
get:
tags:
- Stream Upstreams
summary: NGINX Return Configuration of All Servers in a Stream Upstream Server Group
description: Returns configuration of each server in a particular stream upstream server group.
operationId: getStreamUpstreamServers
responses:
'200':
description: Success
x-microcks-refs:
- name: getStreamUpstreamServers200Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamConfServerMap'
example:
- id: 0
server: 10.0.0.1:12348
weight: 1
max_conns: 0
max_fails: 1
fail_timeout: 10s
slow_start: 0
backup: false
down: false
- id: 1
server: 10.0.0.1:12349
weight: 1
max_conns: 0
max_fails: 1
fail_timeout: 10s
slow_start: 0
backup: false
down: false
'400':
description: Upstream is static (*UpstreamStatic*)
x-microcks-refs:
- name: getStreamUpstreamServers400Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'404':
description: 'Unknown version (*UnknownVersion*),
upstream not found (*UpstreamNotFound*)
'
x-microcks-refs:
- name: getStreamUpstreamServers404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
tags:
- Stream Upstreams
summary: NGINX Add a Server to a Stream Upstream Server Group
description: Adds a new server to a stream upstream server group. Server parameters are specified in the JSON format.
operationId: postStreamUpstreamServer
responses:
'201':
description: Created
x-microcks-refs:
- name: postStreamUpstreamServer201Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamConfServer'
example:
id: 0
server: 10.0.0.1:12348
weight: 1
max_conns: 0
max_fails: 1
fail_timeout: 10s
slow_start: 0
backup: false
down: false
'400':
description: 'Upstream is static (*UpstreamStatic*),
invalid “**parameter**” value (*UpstreamConfFormatError*),
missing “*server*” argument (*UpstreamConfFormatError*),
unknown parameter “**name**” (*UpstreamConfFormatError*),
nested object or list (*UpstreamConfFormatError*),
“*error*” while parsing (*UpstreamBadAddress*),
no port in server “*host*” (*UpstreamBadAddress*),
service upstream “*host*” may not have port (*UpstreamBadAddress*),
service upstream “*host*” requires domain name (*UpstreamBadAddress*),
invalid “*weight*” (*UpstreamBadWeight*),
invalid “*max_conns*” (*UpstreamBadMaxConns*),
invalid “*max_fails*” (*UpstreamBadMaxFails*),
invalid “*fail_timeout*” (*UpstreamBadFailTimeout*),
invalid “*slow_start*” (*UpstreamBadSlowStart*),
“*service*” is empty (*UpstreamBadService*),
no resolver defined to resolve (*UpstreamConfNoResolver*),
upstream “**name**” has no backup (*UpstreamNoBackup*),
upstream “**name**” memory exhausted (*UpstreamOutOfMemory*),
reading request body failed *BodyReadError*)
'
x-microcks-refs:
- name: postStreamUpstreamServer400Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'404':
description: 'Unknown version (*UnknownVersion*),
upstream not found (*UpstreamNotFound*)
'
x-microcks-refs:
- name: postStreamUpstreamServer404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'405':
description: Method disabled (*MethodDisabled*)
x-microcks-refs:
- name: postStreamUpstreamServer405Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'409':
description: Entry exists (*EntryExists*)
x-microcks-refs:
- name: postStreamUpstreamServer409Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'415':
description: JSON error (*JsonError*)
x-microcks-refs:
- name: postStreamUpstreamServer415Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamConfServer'
description: Address of a new server and other optional parameters in the JSON format. The “*ID*”, “*backup*”, and “*service*” parameters cannot be changed.
required: true
/stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}:
parameters:
- name: streamUpstreamName
in: path
description: The name of the upstream server group.
required: true
x-example: example_streamUpstreamName
schema:
type: string
- name: streamUpstreamServerId
in: path
description: The ID of the server.
required: true
x-example: example_streamUpstreamServerId
schema:
type: string
get:
tags:
- Stream Upstreams
summary: NGINX Return Configuration of a Server in a Stream Upstream Server Group
description: Returns configuration of a particular server in the stream upstream server group.
operationId: getStreamUpstreamServer
responses:
'200':
description: Success
x-microcks-refs:
- name: getStreamUpstreamServer200Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamConfServer'
example:
id: 0
server: 10.0.0.1:12348
weight: 1
max_conns: 0
max_fails: 1
fail_timeout: 10s
slow_start: 0
backup: false
down: false
'400':
description: 'Upstream is static (*UpstreamStatic*),
invalid server ID (*UpstreamBadServerId*)
'
x-microcks-refs:
- name: getStreamUpstreamServer400Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'404':
description: 'Unknown version (*UnknownVersion*),
upstream not found (*UpstreamNotFound*),
server with ID “**id**” does not exist (*UpstreamServerNotFound*)
'
x-microcks-refs:
- name: getStreamUpstreamServer404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
patch:
tags:
- Stream Upstreams
summary: NGINX Modify a Server in a Stream Upstream Server Group
description: Modifies settings of a particular server in a stream upstream server group. Server parameters are specified in the JSON format.
operationId: patchStreamUpstreamServer
responses:
'200':
description: Success
x-microcks-refs:
- name: patchStreamUpstreamServer200Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamConfServer'
example:
id: 0
server: 10.0.0.1:12348
weight: 1
max_conns: 0
max_fails: 1
fail_timeout: 10s
slow_start: 0
backup: false
down: false
'400':
description: 'Upstream is static (*UpstreamStatic*),
invalid “**parameter**” value (*UpstreamConfFormatError*),
unknown parameter “**name**” (*UpstreamConfFormatError*),
nested object or list (*UpstreamConfFormatError*),
“*error*” while parsing (*UpstreamBadAddress*),
invalid “*server*” argument (*UpstreamBadAddress*),
no port in server “*host*” (*UpstreamBadAddress*),
invalid server ID (*UpstreamBadServerId*),
invalid “*weight*” (*UpstreamBadWeight*),
invalid “*max_conns*” (*UpstreamBadMaxConns*),
invalid “*max_fails*” (*UpstreamBadMaxFails*),
invalid “*fail_timeout*” (*UpstreamBadFailTimeout*),
invalid “*slow_start*” (*UpstreamBadSlowStart*),
reading request body failed *BodyReadError*),
“*service*” is empty (*UpstreamBadService*),
server “**ID**” address is immutable (*UpstreamServerImmutable*),
server “**ID**” weight is immutable (*UpstreamServerWeightImmutable*),
upstream “*name*” memory exhausted (*UpstreamOutOfMemory*)
'
x-microcks-refs:
- name: patchStreamUpstreamServer400Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'404':
description: 'Server with ID “**id**” does not exist (*UpstreamServerNotFound*),
unknown version (*UnknownVersion*),
upstream not found (*UpstreamNotFound*)
'
x-microcks-refs:
- name: patchStreamUpstreamServer404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'405':
description: Method disabled (*MethodDisabled*)
x-microcks-refs:
- name: patchStreamUpstreamServer405Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'415':
description: JSON error (*JsonError*)
x-microcks-refs:
- name: patchStreamUpstreamServer415Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamConfServer'
description: Server parameters, specified in the JSON format. The “*ID*”, “*backup*”, and “*service*” parameters cannot be changed.
required: true
delete:
tags:
- Stream Upstreams
summary: NGINX Remove a Server from a Stream Upstream Server Group
description: Removes a server from a stream server group.
operationId: deleteStreamUpstreamServer
responses:
'200':
description: Success
x-microcks-refs:
- name: deleteStreamUpstreamServer200Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxStreamUpstreamConfServerMap'
example:
- id: 0
server: 10.0.0.1:12348
weight: 1
max_conns: 0
max_fails: 1
fail_timeout: 10s
slow_start: 0
backup: false
down: false
- id: 1
server: 10.0.0.1:12349
weight: 1
max_conns: 0
max_fails: 1
fail_timeout: 10s
slow_start: 0
backup: false
down: false
'400':
description: 'Upstream is static (*UpstreamStatic*),
invalid server ID (*UpstreamBadServerId*),
server “**id**” not removable (*UpstreamServerImmutable*)
'
x-microcks-refs:
- name: deleteStreamUpstreamServer400Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'404':
description: 'Server with ID “**id**” does not exist (*UpstreamServerNotFound*),
unknown version (*UnknownVersion*),
upstream not found (*UpstreamNotFound*)
'
x-microcks-refs:
- name: deleteStreamUpstreamServer404Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
'405':
description: Method disabled (*MethodDisabled*)
x-microcks-refs:
- name: deleteStreamUpstreamServer405Example
x-microcks-default: true
content:
application/json:
schema:
$ref: '#/components/schemas/NginxError'
example:
error: {}
request_id: example-request_id
href: example-href
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
NginxStreamUpstream:
title: Stream Upstream
type: object
properties:
peers:
$ref: '#/components/schemas/NginxStreamUpstreamPeerMap'
zombies:
type: integer
description: The current number of servers removed from the group but still processing active client connections.
example: 0
zone:
type: string
description: The name of the shared memory <a href="https://nginx.org/en/docs/stream/ngx_stream_upstream_module.html#zone">zone</a> that keeps the group’s configuration and run-time state.
example: example-zone
example:
dns:
peers:
- id: 0
server: 10.0.0.1:12347
name: 10.0.0.1:12347
backup: false
weight: 5
state: up
active: 0
ssl:
handshakes: 200
handshakes_failed: 4
session_reuses: 189
no_common_protocol: 4
handshake_timeout: 0
peer_rejected_cert: 0
verify_failures:
expired_cert: 2
revoked_cert: 1
hostname_mismatch: 2
other: 1
max_conns: 50
connections: 667231
sent: 251946292
received: 19222475454
fails: 0
unavail: 0
health_checks:
checks: 26214
fails: 0
unhealthy: 0
last_passed: true
downtime: 0
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
- id: 1
server: 10.0.0.1:12348
name: 10.0.0.1:12348
backup: true
weight: 1
state: unhealthy
active: 0
max_conns: 50
connections: 0
sent: 0
received: 0
fails: 0
unavail: 0
health_checks:
checks: 26284
fails: 26284
unhealthy: 1
last_passed: false
downtime: 262925617
downstart: 2022-06-28 11:09:21.602000+00:00
selected: 2022-06-28 15:01:25+00:00
zombies: 0
zone: dns
NginxStreamUpstreamMap:
title: Stream Upstreams
description: Status information of stream upstream server groups.
type: object
additionalProperties:
$ref: '#/components/schemas/NginxStreamUpstream'
example:
mysql_backends:
peers:
- id: 0
server: 10.0.0.1:12345
name: 10.0.0.1:12345
backup: false
weight: 5
state: up
active: 0
ssl:
handshakes: 1045
handshakes_failed: 89
session_reuses: 321
no_common_protocol: 4
handshake_timeout: 0
peer_rejected_cert: 0
verify_failures:
expired_cert: 2
revoked_cert: 1
hostname_mismatch: 2
other: 1
max_conns: 30
connecions: 1231
sent: 251946292
# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/nginx/refs/heads/main/openapi/nginx-stream-upstreams-api-openapi.yml