F5

F5 NGINX Plus API

REST API for NGINX Plus providing real-time live activity monitoring, dynamic upstream configuration, key-value store management, and server health statistics without requiring configuration reloads.

Operations 71

GET / Return list of root endpoints #
GET /nginx Return status of nginx running instance #
GET /processes Return nginx processes status #
DELETE /processes Reset nginx processes statistics #
GET /connections Return client connections statistics #
DELETE /connections Reset client connections statistics #
GET /slabs/ Return status of all slabs #
GET /slabs/{slabZoneName} Return status of a slab #
DELETE /slabs/{slabZoneName} Reset slab statistics #
GET /http/ Return list of HTTP-related endpoints #
GET /http/requests Return HTTP requests statistics #
DELETE /http/requests Reset HTTP requests statistics #
GET /http/server_zones/ Return status of all HTTP server zones #
GET /http/server_zones/{httpServerZoneName} Return status of an HTTP server zone #
DELETE /http/server_zones/{httpServerZoneName} Reset statistics for an HTTP server zone #
GET /http/location_zones/ Return status of all HTTP location zones #
GET /http/location_zones/{httpLocationZoneName} Return status of an HTTP location zone #
DELETE /http/location_zones/{httpLocationZoneName} Reset statistics for a location zone. #
GET /http/caches/ Return status of all caches #
GET /http/caches/{httpCacheZoneName} Return status of a cache #
DELETE /http/caches/{httpCacheZoneName} Reset cache statistics #
GET /http/limit_conns/ Return status of all HTTP limit_conn zones #
GET /http/limit_conns/{httpLimitConnZoneName} Return status of an HTTP limit_conn zone #
DELETE /http/limit_conns/{httpLimitConnZoneName} Reset statistics for an HTTP limit_conn zone #
GET /http/limit_reqs/ Return status of all HTTP limit_req zones #
GET /http/limit_reqs/{httpLimitReqZoneName} Return status of an HTTP limit_req zone #
DELETE /http/limit_reqs/{httpLimitReqZoneName} Reset statistics for an HTTP limit_req zone #
GET /http/upstreams/ Return status of all HTTP upstream server groups #
GET /http/upstreams/{httpUpstreamName}/ Return status of an HTTP upstream server group #
DELETE /http/upstreams/{httpUpstreamName}/ Reset statistics of an HTTP upstream server group #
GET /http/upstreams/{httpUpstreamName}/servers/ Return configuration of all servers in an HTTP upstream server group #
POST /http/upstreams/{httpUpstreamName}/servers/ Add a server to an HTTP upstream server group #
GET /http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId} Return configuration of a server in an HTTP upstream server group #
PATCH /http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId} Modify a server in an HTTP upstream server group #
DELETE /http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId} Remove a server from an HTTP upstream server group #
GET /http/keyvals/ Return key-value pairs from all HTTP keyval zones #
GET /http/keyvals/{httpKeyvalZoneName} Return key-value pairs from an HTTP keyval zone #
POST /http/keyvals/{httpKeyvalZoneName} Add a key-value pair to the HTTP keyval zone #
PATCH /http/keyvals/{httpKeyvalZoneName} Modify a key-value or delete a key #
DELETE /http/keyvals/{httpKeyvalZoneName} Empty the HTTP keyval zone #
GET /stream/ Return list of stream-related endpoints #
GET /stream/server_zones/ Return status of all stream server zones #
GET /stream/server_zones/{streamServerZoneName} Return status of a stream server zone #
DELETE /stream/server_zones/{streamServerZoneName} Reset statistics for a stream server zone #
GET /stream/limit_conns/ Return status of all stream limit_conn zones #
GET /stream/limit_conns/{streamLimitConnZoneName} Return status of an stream limit_conn zone #
DELETE /stream/limit_conns/{streamLimitConnZoneName} Reset statistics for a stream limit_conn zone #
GET /stream/upstreams/ Return status of all stream upstream server groups #
GET /stream/upstreams/{streamUpstreamName}/ Return status of a stream upstream server group #
DELETE /stream/upstreams/{streamUpstreamName}/ Reset statistics of a stream upstream server group #
GET /stream/upstreams/{streamUpstreamName}/servers/ Return configuration of all servers in a stream upstream server group #
POST /stream/upstreams/{streamUpstreamName}/servers/ Add a server to a stream upstream server group #
GET /stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId} Return configuration of a server in a stream upstream server group #
PATCH /stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId} Modify a server in a stream upstream server group #
DELETE /stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId} Remove a server from a stream upstream server group #
GET /stream/keyvals/ Return key-value pairs from all stream keyval zones #
GET /stream/keyvals/{streamKeyvalZoneName} Return key-value pairs from a stream keyval zone #
POST /stream/keyvals/{streamKeyvalZoneName} Add a key-value pair to the stream keyval zone #
PATCH /stream/keyvals/{streamKeyvalZoneName} Modify a key-value or delete a key #
DELETE /stream/keyvals/{streamKeyvalZoneName} Empty the stream keyval zone #
GET /stream/zone_sync/ Return sync status of a node #
GET /resolvers/ Return status for all resolver zones #
GET /resolvers/{resolverZoneName} Return statistics of a resolver zone #
DELETE /resolvers/{resolverZoneName} Reset statistics for a resolver zone. #
GET /ssl Return SSL statistics #
DELETE /ssl Reset SSL statistics #
GET /license Return license info #
GET /workers/ Return statistics for all worker processes #
DELETE /workers/ Reset statistics for all worker processes. #
GET /workers/{workerId} Return status of a worker process #
DELETE /workers/{workerId} Reset statistics for a worker process. #

Work with this as data

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/f5-nginx-plus-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 Specification

f5-nginx-plus-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  version: '9.0'
  title: NGINX Plus REST 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).
basePath: /api/9
tags:
  - name: General Info
  - name: Processes
  - name: Connections
  - name: Workers
  - name: Slabs
  - name: Resolvers
  - name: SSL
  - name: HTTP
  - name: HTTP Requests
  - name: HTTP Server Zones
  - name: HTTP Location Zones
  - name: HTTP Caches
  - name: HTTP Limit Conns
  - name: HTTP Limit Reqs
  - name: HTTP Keyvals
  - name: HTTP Upstreams
  - name: License
  - name: Stream
  - name: Stream Server Zones
  - name: Stream Limit Conns
  - name: Stream Keyvals
  - name: Stream Upstreams
  - name: Stream Zone Sync
  - name: Method GET
  - name: Method POST
  - name: Method PATCH
  - name: Method DELETE
schemes:
  - http
  - https
paths:
  /:
    get:
      tags:
        - General Info
        - Method GET
      summary: Return list of root endpoints
      description: Returns a list of root endpoints.
      operationId: getAPIEndpoints
      produces:
        - application/json
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/ArrayOfStrings'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  /nginx:
    get:
      tags:
        - General Info
        - Method GET
      summary: Return status of nginx running instance
      description: Returns nginx version, build name, address,
        number of configuration reloads, IDs of master and worker processes.
      operationId: getNginx
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of nginx running instance will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxObject'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  /processes:
    get:
      tags:
        - Processes
        - Method GET
      summary: Return nginx processes status
      description: Returns the number of abnormally terminated
        and respawned child processes.
      operationId: getProcesses
      produces:
        - application/json
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxProcesses'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - Processes
        - Method DELETE
      summary: Reset nginx processes statistics
      description: Resets counters of abnormally terminated and respawned
        child processes.
      operationId: deleteProcesses
      responses:
        '204':
          description: Success
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /connections:
    get:
      tags:
        - Connections
        - Method GET
      summary: Return client connections statistics
      description: Returns statistics of client connections.
      operationId: getConnections
      produces:
        - application/json
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxConnections'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
      parameters:
        - in: query
          name: fields
          type: string
          description:  Limits which fields of the connections statistics will be output.
    delete:
      tags:
        - Connections
        - Method DELETE
      summary: Reset client connections statistics
      description: Resets statistics of accepted and dropped
        client connections.
      operationId: deleteConnections
      responses:
        '204':
          description: Success
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /slabs/:
    get:
      tags:
        - Slabs
        - Method GET
      summary:  Return status of all slabs
      description: Returns status of slabs
        for each shared memory zone with slab allocator.
      operationId: getSlabs
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of slab zones will be output.
            If the “<literal>fields</literal>” value is empty,
            then only zone names will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxSlabZoneMap'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  '/slabs/{slabZoneName}':
    parameters:
      - name: slabZoneName
        in: path
        description: The name of the shared memory zone with slab allocator.
        required: true
        type: string
    get:
      tags:
        - Slabs
        - Method GET
      summary: Return status of a slab
      description: Returns status of slabs for a particular shared memory zone
        with slab allocator.
      operationId: getSlabZone
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of the slab zone will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxSlabZone'
        '404':
          description: |
            Slab not found (*SlabNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - Slabs
        - Method DELETE
      summary: Reset slab statistics
      description: Resets the “<literal>reqs</literal>” and “<literal>fails</literal>”
        metrics for each memory slot.
      operationId: deleteSlabZoneStats
      responses:
        '204':
          description: Success
        '404':
          description: |
            Slab not found (*SlabNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/:
    get:
      tags:
        - HTTP
        - Method GET
      summary: Return list of HTTP-related endpoints
      description: Returns a list of first level HTTP endpoints.
      operationId: getHttp
      produces:
        - application/json
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/ArrayOfStrings'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/requests:
    get:
      tags:
        - HTTP Requests
        - Method GET
      summary: Return HTTP requests statistics
      description: Returns status of client HTTP requests.
      operationId: getHttpRequests
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of client HTTP requests statistics
            will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPRequests'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - HTTP Requests
        - Method DELETE
      summary: Reset HTTP requests statistics
      description: Resets the number of total client HTTP requests.
      operationId: deleteHttpRequests
      responses:
        '204':
          description: Success
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/server_zones/:
    get:
      tags:
        - HTTP Server Zones
        - Method GET
      summary: Return status of all HTTP server zones
      description: Returns status information for each HTTP
        [server zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone).
      operationId: getHttpServerZones
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of server zones will be output.
            If the “<literal>fields</literal>” value is empty,
            then only server zone names will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPServerZonesMap'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/server_zones/{httpServerZoneName}':
    parameters:
      - name: httpServerZoneName
        in: path
        description: The name of an HTTP server zone.
        type: string
        required: true
    get:
      tags:
        - HTTP Server Zones
        - Method GET
      summary: Return status of an HTTP server zone
      description: Returns status of a particular HTTP server zone.
      operationId: getHttpServerZone
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of the server zone will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPServerZone'
        '404':
          description: |
            Server zone not found (*ServerZoneNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - HTTP Server Zones
        - Method DELETE
      summary: Reset statistics for an HTTP server zone
      description: Resets statistics of accepted and discarded requests, responses,
        received and sent bytes, counters of SSL handshakes and session reuses
        in a particular HTTP server zone.
      operationId: deleteHttpServerZoneStat
      responses:
        '204':
          description: Success
        '404':
          description: |
            Server zone not found (*ServerZoneNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/location_zones/:
    get:
      tags:
        - HTTP Location Zones
        - Method GET
      summary: Return status of all HTTP location zones
      description: Returns status information for each HTTP
        [location zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone_location).
      operationId: getHttpLocationZones
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of location zones will be output.
            If the “<literal>fields</literal>” value is empty,
            then only zone names will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPLocationZonesMap'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/location_zones/{httpLocationZoneName}':
    parameters:
      - name: httpLocationZoneName
        in: path
        description: The name of an HTTP [location zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone_location).
        type: string
        required: true
    get:
      tags:
        - HTTP Location Zones
        - Method GET
      summary: Return status of an HTTP location zone
      description: Returns status of a particular
        HTTP [location zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone_location).
      operationId: getHttpLocationZone
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of the location zone will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPLocationZone'
        '404':
          description: |
            Location zone not found (*LocationZoneNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - HTTP Location Zones
        - Method DELETE
      summary: Reset statistics for a location zone.
      description: Resets statistics of accepted and discarded requests, responses,
        received and sent bytes in a particular location zone.
      operationId: deleteHttpLocationZoneStat
      responses:
        '204':
          description: Success
        '404':
          description: |
            Location zone not found (*LocationZoneNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/caches/:
    get:
      tags:
        - HTTP Caches
        - Method GET
      summary: Return status of all caches
      description: Returns status of each cache configured by
        [proxy_cache_path](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache_path)
        and other “<literal>*_cache_path</literal>” directives.
      operationId: getHttpCaches
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of cache zones will be output.
            If the “<literal>fields</literal>” value is empty,
            then only names of cache zones will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPCachesMap'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/caches/{httpCacheZoneName}':
    parameters:
      - name: httpCacheZoneName
        in: path
        description: The name of the cache zone.
        type: string
        required: true
    get:
      tags:
        - HTTP Caches
        - Method GET
      summary: Return status of a cache
      description: Returns status of a particular cache.
      operationId: getHttpCacheZone
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of the cache zone will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPCache'
        '404':
          description: |
            Cache not found (*CacheNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - HTTP Caches
        - Method DELETE
      summary: Reset cache statistics
      description: Resets statistics of cache hits/misses in a particular cache zone.
      operationId: deleteHttpCacheZoneStat
      responses:
        '204':
          description: Success
        '404':
          description: |
            Cache not found (*CacheNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/limit_conns/:
    get:
      tags:
        - HTTP Limit Conns
        - Method GET
      summary: Return status of all HTTP limit_conn zones
      description: Returns status information for each HTTP
        [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone).
      operationId: getHttpLimitConnZones
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of limit_conn zones will be output.
            If the “<literal>fields</literal>” value is empty,
            then only zone names will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPLimitConnZonesMap'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/limit_conns/{httpLimitConnZoneName}':
    parameters:
      - name: httpLimitConnZoneName
        in: path
        description: The name of a
          [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone).
        type: string
        required: true
    get:
      tags:
        - HTTP Limit Conns
        - Method GET
      summary: Return status of an HTTP limit_conn zone
      description: Returns status of a particular HTTP
        [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone).
      operationId: getHttpLimitConnZone
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of the
            [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone)
            will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPLimitConnZone'
        '404':
          description: |
            limit_conn not found (*LimitConnNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - HTTP Limit Conns
        - Method DELETE
      summary: Reset statistics for an HTTP limit_conn zone
      description: Resets the connection limiting statistics.
      operationId: deleteHttpLimitConnZoneStat
      responses:
        '204':
          description: Success
        '404':
          description: |
            limit_conn not found (*LimitConnNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/limit_reqs/:
    get:
      tags:
        - HTTP Limit Reqs
        - Method GET
      summary: Return status of all HTTP limit_req zones
      description: Returns status information for each HTTP
        [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone).
      operationId: getHttpLimitReqZones
      produces:
        - application/json
      parameters:
        - in: query
          name: fields
          type: string
          description: Limits which fields of limit_req zones will be output.
            If the “<literal>fields</literal>” value is empty,
            then only zone names will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPLimitReqZonesMap'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/limit_reqs/{httpLimitReqZoneName}':
    parameters:
      - name: httpLimitReqZoneName
        in: path
        description: The name of a
          [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone).
        type: string
        required: true
    get:
      tags:
        - HTTP Limit Reqs
        - Method GET
      summary: Return status of an HTTP limit_req zone
      description: Returns status of a particular HTTP
        [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone).
      operationId: getHttpLimitReqZone
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of the
            [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone)
            will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPLimitReqZone'
        '404':
          description: |
            limit_req not found (*LimitReqNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - HTTP Limit Reqs
        - Method DELETE
      summary: Reset statistics for an HTTP limit_req zone
      description: Resets the requests limiting statistics.
      operationId: deleteHttpLimitReqZoneStat
      responses:
        '204':
          description: Success
        '404':
          description: |
            limit_req not found (*LimitReqNotFound*),
            unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  /http/upstreams/:
    get:
      tags:
        - HTTP Upstreams
        - Method GET
      summary: Return status of all HTTP upstream server groups
      description: Returns status of each HTTP upstream server group
        and its servers.
      operationId: getHttpUpstreams
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          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.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPUpstreamMap'
        '404':
          description: Unknown version (*UnknownVersion*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/upstreams/{httpUpstreamName}/':
    parameters:
    - name: httpUpstreamName
      in: path
      description: The name of an HTTP upstream server group.
      required: true
      type: string
    get:
      tags:
        - HTTP Upstreams
        - Method GET
      summary: Return status of an HTTP upstream server group
      description: Returns status of a particular HTTP upstream server group
        and its servers.
      operationId: getHttpUpstreamName
      produces:
        - application/json
      parameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of the upstream server group will be output.
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPUpstream'
        '400':
          description: Upstream is static (*UpstreamStatic*)
          schema:
            $ref: '#/definitions/NginxError'
        '404':
          description: |
            Unknown version (*UnknownVersion*),
            upstream not found (*UpstreamNotFound*)
          schema:
            $ref: '#/definitions/NginxError'
    delete:
      tags:
        - HTTP Upstreams
        - Method DELETE
      summary: Reset statistics of an HTTP upstream server group
      description: Resets the statistics for each upstream server
        in an upstream server group and queue statistics.
      operationId: deleteHttpUpstreamStat
      produces:
        - application/json
      responses:
        '204':
          description: Success
        '400':
          description: Upstream is static (*UpstreamStatic*)
          schema:
            $ref: '#/definitions/NginxError'
        '404':
          description: |
            Unknown version (*UnknownVersion*),
            upstream not found (*UpstreamNotFound*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/upstreams/{httpUpstreamName}/servers/':
    parameters:
      - name: httpUpstreamName
        in: path
        description: The name of an upstream server group.
        required: true
        type: string
    get:
      tags:
        - HTTP Upstreams
        - Method GET
      summary: Return configuration of all servers in an HTTP upstream server group
      description: Returns configuration of each server
        in a particular HTTP upstream server group.
      operationId: getHttpUpstreamServers
      produces:
        - application/json
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPUpstreamConfServerMap'
        '400':
          description: Upstream is static (*UpstreamStatic*)
          schema:
            $ref: '#/definitions/NginxError'
        '404':
          description: |
            Unknown version (*UnknownVersion*),
            upstream not found (*UpstreamNotFound*)
          schema:
            $ref: '#/definitions/NginxError'
    post:
      tags:
        - HTTP Upstreams
        - Method POST
      summary: Add a server to an HTTP upstream server group
      description: Adds a new server to an HTTP upstream server group.
        Server parameters are specified in the JSON format.
      operationId: postHttpUpstreamServer
      produces:
        - application/json
      parameters:
        - in: body
          name: postHttpUpstreamServer
          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
          schema:
            $ref: '#/definitions/NginxHTTPUpstreamConfServer'
      responses:
        '201':
          description: Created
          schema:
            $ref: '#/definitions/NginxHTTPUpstreamConfServer'
        '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*),
            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*),
            reading request body failed *BodyReadError*),
            route is too long (*UpstreamBadRoute*),
            “*service*” is empty (*UpstreamBadService*),
            no resolver defined to resolve (*UpstreamConfNoResolver*),
            upstream “**name**” has no backup (*UpstreamNoBackup*),
            upstream “**name**” memory exhausted (*UpstreamOutOfMemory*)
          schema:
            $ref: '#/definitions/NginxError'
        '404':
          description: |
            Unknown version (*UnknownVersion*),
            upstream not found (*UpstreamNotFound*)
          schema:
            $ref: '#/definitions/NginxError'
        '405':
          description: Method disabled (*MethodDisabled*)
          schema:
            $ref: '#/definitions/NginxError'
        '409':
          description: Entry exists (*EntryExists*)
          schema:
            $ref: '#/definitions/NginxError'
        '415':
          description: JSON error (*JsonError*)
          schema:
            $ref: '#/definitions/NginxError'
  '/http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId}':
    parameters:
      - name: httpUpstreamName
        in: path
        description: The name of the upstream server group.
        required: true
        type: string
      - name: httpUpstreamServerId
        in: path
        description: The ID of the server.
        required: true
        type: string
    get:
      tags:
        - HTTP Upstreams
        - Method GET
      summary: Return configuration of a server in an HTTP upstream server group
      description: Returns configuration of a particular server
        in the HTTP upstream server group.
      operationId: getHttpUpstreamPeer
      produces:
        - application/json
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPUpstreamConfServer'
        '400':
          description: |
            Upstream is static (*UpstreamStatic*),
            invalid server ID (*UpstreamBadServerId*)
          schema:
            $ref: '#/definitions/NginxError'
        '404':
          description: |
            Server with ID “**id**” does not exist (*UpstreamServerNotFound*),
            unknown version (*UnknownVersion*),
            upstream not found (*UpstreamNotFound*)
          schema:
            $ref: '#/definitions/NginxError'
    patch:
      tags:
        - HTTP Upstreams
        - Method PATCH
      summary: Modify a server in an HTTP upstream server group
      description: Modifies settings of a particular server
        in an HTTP upstream server group.
        Server parameters are specified in the JSON format.
      operationId: patchHttpUpstreamPeer
      produces:
        - application/json
      parameters:
        - in: body
          name: patchHttpUpstreamServer
          description: Server parameters, specified in the JSON format.
            The “*ID*”, “*backup*”, and “*service*” parameters
            cannot be changed.
          required: true
          schema:
            $ref: '#/definitions/NginxHTTPUpstreamConfServer'
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/NginxHTTPUpstreamConfServer'
        '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*),
            invalid server ID (*UpstreamBadServerId*),
            invalid “*weight*” (*UpstreamBadWeight*),
            invalid “*max_conns*” (*UpstreamBadMaxConns*),
            invalid “*max_fails*” (*UpstreamBadMaxFails*),
      

# --- truncated at 32 KB (164 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/f5/refs/heads/main/openapi/f5-nginx-plus-api-openapi.yml