NGINX · JSON Structure

Plus Http Api Nginx Http Upstream Structure

Type: object Properties: 0
API GatewayCachingCloud-NativeLoad BalancerOpen-SourceReverse ProxyWeb Server

HTTP Upstream is a JSON Structure definition published by NGINX. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "name": "HTTP Upstream",
  "type": "object",
  "members": {
    "peers": {
      "$ref": "#/definitions/NginxHTTPUpstreamPeerMap"
    },
    "keepalive": {
      "description": "The current number of idle <a href=\"https://nginx.org/en/docs/http/ngx_http_upstream_module.html#keepalive\">keepalive</a> connections.",
      "type": "int32",
      "example": 0
    },
    "zombies": {
      "description": "The current number of servers removed from the group but still processing active client requests.",
      "type": "int32",
      "example": 0
    },
    "zone": {
      "description": "The name of the shared memory <a href=\"https://nginx.org/en/docs/http/ngx_http_upstream_module.html#zone\">zone</a> that keeps the group\u2019s configuration and run-time state.",
      "type": "string",
      "example": "example-zone"
    },
    "queue": {
      "description": "For the requests <a href=\"https://nginx.org/en/docs/http/ngx_http_upstream_module.html#queue\">queue</a>, the following data are provided:\n",
      "type": "object",
      "members": {
        "size": {
          "description": "The current number of requests in the queue.",
          "type": "int32",
          "example": 0
        },
        "max_size": {
          "description": "The maximum number of requests that can be in the queue at the same time.",
          "type": "int32",
          "example": 0
        },
        "overflows": {
          "description": "The total number of requests rejected due to the queue overflow.",
          "type": "int32",
          "example": 0
        }
      },
      "example": {}
    }
  },
  "example": {
    "upstream_backend": {
      "peers": [
        {
          "id": 0,
          "server": "10.0.0.1:8088",
          "name": "10.0.0.1:8088",
          "backup": false,
          "weight": 5,
          "state": "up",
          "active": 0,
          "ssl": {
            "handshakes": 620311,
            "handshakes_failed": 3432,
            "session_reuses": 36442,
            "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": 20,
          "requests": 667231,
          "header_time": 20,
          "response_time": 36,
          "responses": {
            "1xx": 0,
            "2xx": 666310,
            "3xx": 0,
            "4xx": 915,
            "5xx": 6,
            "codes": {
              "200": 666310,
              "404": 915,
              "503": 6
            },
            "total": 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-28T11:09:21.602000+00:00",
          "selected": "2022-06-28T15:01:25+00:00"
        },
        {
          "id": 1,
          "server": "10.0.0.1:8089",
          "name": "10.0.0.1:8089",
          "backup": true,
          "weight": 1,
          "state": "unhealthy",
          "active": 0,
          "max_conns": 20,
          "requests": 0,
          "responses": {
            "1xx": 0,
            "2xx": 0,
            "3xx": 0,
            "4xx": 0,
            "5xx": 0,
            "codes": {},
            "total": 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-28T11:09:21.602000+00:00",
          "selected": "2022-06-28T15:01:25+00:00"
        }
      ],
      "keepalive": 0,
      "zombies": 0,
      "zone": "upstream_backend"
    }
  }
}

Work with this as data

Every JSON Structure 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 json structure

4 MCP tools reach this
  • find_json_structuresBrowse and filter every JSON Structure in the catalog.
  • 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 JSON Structure
curl "https://apis.io/api/v1/json-structures/plus-http-api-nginx-http-upstream-structure"
All json structure
curl "https://apis.io/api/v1/json-structures?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.