ByteAsk public status endpoints Api API

The three unauthenticated, read-only JSON endpoints that byteask.ai serves: a liveness probe, the service status shown in the site footer, and package download counts. This is not the ByteAsk product API. The ByteAsk CLI talks to a private service that is not documented or offered for third-party us

Operations 3

GET /api/health Liveness probe #
GET /api/status Service status #
GET /api/stats Package download counts #

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/byteask-ai:byteask-public-status-endpoints-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

byteask-ai-api-openapi.json Raw ↑
{
  "openapi": "3.1.0",
  "info": {
    "title": "ByteAsk public status endpoints",
    "version": "1.0.0",
    "summary": "Read-only JSON endpoints served by byteask.ai.",
    "description": "The three unauthenticated, read-only JSON endpoints that byteask.ai serves: a liveness probe, the service status shown in the site footer, and package download counts. This is not the ByteAsk product API. The ByteAsk CLI talks to a private service that is not documented or offered for third-party use. Product documentation is at https://byteask.ai/docs/.",
    "contact": { "name": "ByteAsk support", "email": "support@byteask.ai", "url": "https://byteask.ai/contact" },
    "termsOfService": "https://byteask.ai/terms"
  },
  "servers": [{ "url": "https://byteask.ai" }],
  "externalDocs": { "description": "ByteAsk documentation", "url": "https://byteask.ai/docs/" },
  "tags": [{ "name": "status", "description": "Liveness, service status and package statistics." }],
  "paths": {
    "/api/health": {
      "get": {
        "operationId": "getHealth",
        "tags": ["status"],
        "summary": "Liveness probe",
        "description": "Returns 200 while the byteask.ai edge worker is serving. GET and HEAD are accepted. Never cached.",
        "responses": {
          "200": {
            "description": "The site is up.",
            "headers": { "Cache-Control": { "description": "Always `no-store`.", "schema": { "type": "string", "const": "no-store" } } },
            "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Health" }, "example": { "status": "ok" } } }
          },
          "405": { "$ref": "#/components/responses/MethodNotAllowed" }
        }
      }
    },
    "/api/status": {
      "get": {
        "operationId": "getServiceStatus",
        "tags": ["status"],
        "summary": "Service status",
        "description": "The aggregate state of the ByteAsk services as published on status.byteask.ai, read server-side. Cached for 60 seconds at the edge. `unknown` is returned, with HTTP 200, when the status feed cannot be read. GET only.",
        "responses": {
          "200": {
            "description": "The current state.",
            "headers": { "Cache-Control": { "description": "`public, max-age=60`.", "schema": { "type": "string" } } },
            "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" }, "example": { "state": "operational", "fetched_at": "2026-10-28T12:00:00.000Z" } } }
          },
          "405": { "$ref": "#/components/responses/MethodNotAllowed" }
        }
      }
    },
    "/api/stats": {
      "get": {
        "operationId": "getPackageStats",
        "tags": ["status"],
        "summary": "Package download counts",
        "description": "Downloads in the last month of the `byteask` package on PyPI and of `@byteask/cli` on npm, as reported by those registries. Cached for up to one hour at the edge. A count is null when its registry could not be read and no earlier value is held. GET only.",
        "responses": {
          "200": {
            "description": "The counts.",
            "headers": { "Cache-Control": { "description": "`public, max-age=3600` when both counts are fresh, `public, max-age=300` when one is not, `no-store` when neither is known.", "schema": { "type": "string" } } },
            "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Stats" }, "example": { "pypi_last_month": 1200, "npm_last_month": 800 } } }
          },
          "405": { "$ref": "#/components/responses/MethodNotAllowed" }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Health": {
        "type": "object",
        "required": ["status"],
        "properties": { "status": { "type": "string", "const": "ok" } }
      },
      "Status": {
        "type": "object",
        "required": ["state", "fetched_at"],
        "properties": {
          "state": { "type": "string", "enum": ["operational", "degraded", "partial", "major", "maintenance", "unknown"], "description": "`partial` means some services are down, `major` means all are." },
          "fetched_at": { "type": "string", "format": "date-time" }
        }
      },
      "Stats": {
        "type": "object",
        "required": ["pypi_last_month", "npm_last_month"],
        "properties": {
          "pypi_last_month": { "type": ["integer", "null"], "minimum": 0 },
          "npm_last_month": { "type": ["integer", "null"], "minimum": 0 }
        }
      },
      "Error": {
        "type": "object",
        "required": ["error"],
        "properties": { "error": { "type": "string", "examples": ["method_not_allowed"] } }
      }
    },
    "responses": {
      "MethodNotAllowed": {
        "description": "The method is not supported by this endpoint.",
        "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" }, "example": { "error": "method_not_allowed" } } }
      }
    }
  }
}