BeatAPI · Schema

CapabilitySearchPage

CompanyAIPlatformUnified-APIData-Integration

Properties

Name Type Description
object string
total integer
data array Compact cards by default; complete contracts with `view` full.
next_cursor string Empty on the last page.
understood object How the query was read. `terms` counted; `ignored` matched nothing.
recommended object Present on the first page of a specific query (not on an overview or an empty query) — the pick, so a caller can go straight to Run when the inputs are obvious.
groups array Present in overview mode.
hints array How to rephrase when nothing matched.
next object
catalog_features array
View JSON Schema on GitHub

JSON Schema

beatapi-capability-search-page-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/beatapi/json-schema/beatapi-capability-search-page-schema.json",
  "title": "CapabilitySearchPage",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/beatapi-openapi.json#/components/schemas/CapabilitySearchPage",
  "type": "object",
  "required": [
    "object",
    "data",
    "next_cursor"
  ],
  "properties": {
    "object": {
      "type": "string",
      "enum": [
        "capability.list"
      ]
    },
    "total": {
      "type": "integer"
    },
    "data": {
      "type": "array",
      "description": "Compact cards by default; complete contracts with `view` full.",
      "items": {
        "anyOf": [
          {
            "$ref": "#/$defs/CapabilityCard"
          },
          {
            "$ref": "#/$defs/CapabilityContract"
          }
        ]
      }
    },
    "next_cursor": {
      "type": "string",
      "description": "Empty on the last page."
    },
    "understood": {
      "type": "object",
      "description": "How the query was read. `terms` counted; `ignored` matched nothing.",
      "properties": {
        "platforms": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "terms": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ignored": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "recommended": {
      "type": "object",
      "description": "Present on the first page of a specific query (not on an overview or an empty query) — the pick, so a caller can go straight to Run when the inputs are obvious.",
      "required": [
        "reference",
        "title",
        "readiness",
        "why_match",
        "missing_inputs"
      ],
      "properties": {
        "reference": {
          "type": "string",
          "description": "The top result, copied exactly."
        },
        "title": {
          "type": "string"
        },
        "readiness": {
          "type": "string",
          "enum": [
            "ready",
            "runnable",
            "listed"
          ]
        },
        "price": {
          "type": "string",
          "description": "The card's price text, such as `$0.0300` or `from $0.15`."
        },
        "why_match": {
          "type": "object",
          "description": "What the ranker understood — the platform it resolved and the terms that counted.",
          "properties": {
            "platforms": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "terms": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "missing_inputs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The contract's required inputs, in name order; empty when nothing is required."
        }
      }
    },
    "groups": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/CapabilityGroup"
      },
      "description": "Present in overview mode."
    },
    "hints": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "How to rephrase when nothing matched."
    },
    "next": {
      "$ref": "#/$defs/CapabilityNext"
    },
    "catalog_features": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$defs": {
    "CapabilityCard": {
      "type": "object",
      "required": [
        "reference",
        "kind",
        "title",
        "summary",
        "execution",
        "readiness"
      ],
      "properties": {
        "reference": {
          "type": "string",
          "description": "Copy exactly into Inspect."
        },
        "kind": {
          "type": "string",
          "enum": [
            "model",
            "data",
            "workflow"
          ]
        },
        "title": {
          "type": "string"
        },
        "summary": {
          "type": "string"
        },
        "platform": {
          "type": "string"
        },
        "execution": {
          "type": "string",
          "enum": [
            "sync",
            "async"
          ]
        },
        "readiness": {
          "type": "string",
          "enum": [
            "ready",
            "runnable",
            "listed"
          ]
        },
        "price": {
          "type": "string",
          "description": "Human-readable price, such as `$0.03 per request`."
        },
        "signature": {
          "type": "string",
          "description": "One-line input summary, such as `keyword: string (required), page: integer, +3 more`."
        }
      }
    },
    "CapabilityContract": {
      "type": "object",
      "required": [
        "reference",
        "kind",
        "id",
        "version",
        "status",
        "title",
        "description",
        "execution",
        "versions",
        "validation"
      ],
      "properties": {
        "reference": {
          "type": "string",
          "description": "Stable reference, `kind:id`. Copy it exactly into Inspect and Run."
        },
        "kind": {
          "type": "string",
          "enum": [
            "model",
            "data",
            "workflow"
          ]
        },
        "id": {
          "type": "string"
        },
        "version": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "readiness": {
          "type": "string",
          "enum": [
            "ready",
            "runnable",
            "listed"
          ],
          "description": "`ready`: runnable, output schema and price published. `runnable`: runs through Run and the input is documented, but the output shape is not published. `listed`: not runnable through Run, or the input is undocumented."
        },
        "title": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "platforms": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "entities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Words callers use for this capability; searchable."
        },
        "input_schema": {
          "type": "object",
          "additionalProperties": true,
          "description": "JSON Schema of Run `input`."
        },
        "output_schema": {
          "type": "object",
          "additionalProperties": true,
          "description": "JSON Schema of the result",
          "when published.": null
        },
        "schema_hash": {
          "type": "string",
          "description": "Sixteen hex characters fingerprinting `input_schema` and `output_schema` together. Cache a contract by it and re-inspect only when a later reply shows a different hash."
        },
        "pricing": {
          "type": "object",
          "additionalProperties": true,
          "description": "Current retail price of one run."
        },
        "pagination": {
          "type": "object",
          "additionalProperties": true
        },
        "limits": {
          "type": "object",
          "additionalProperties": true
        },
        "errors": {
          "type": "object",
          "additionalProperties": true
        },
        "documentation": {
          "type": "object",
          "required": [
            "url"
          ],
          "description": "First-party usage guidance. Detailed Run examples appear here for selected data capabilities and are omitted from Search responses.",
          "properties": {
            "url": {
              "type": "string",
              "format": "uri"
            },
            "run_example": {
              "type": "object",
              "additionalProperties": true
            },
            "notes": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "execution": {
          "type": "object",
          "required": [
            "mode",
            "status_supported"
          ],
          "properties": {
            "mode": {
              "type": "string",
              "enum": [
                "sync",
                "async"
              ],
              "description": "`sync` returns the result from Run; `async` returns a task to poll with operation status."
            },
            "status_supported": {
              "type": "boolean"
            },
            "result_location": {
              "type": "string"
            }
          }
        },
        "versions": {
          "type": "object",
          "required": [
            "catalog_version",
            "contract_version"
          ],
          "properties": {
            "catalog_version": {
              "type": "string"
            },
            "contract_version": {
              "type": "string"
            },
            "price_version": {
              "type": "string"
            }
          }
        },
        "validation": {
          "type": "object",
          "required": [
            "state"
          ],
          "properties": {
            "state": {
              "type": "string",
              "enum": [
                "verified",
                "partial",
                "unknown"
              ]
            },
            "verified_at": {
              "type": "string"
            },
            "evidence": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      }
    },
    "CapabilityGroup": {
      "type": "object",
      "required": [
        "key",
        "label",
        "count",
        "examples"
      ],
      "properties": {
        "key": {
          "type": "string",
          "description": "search, content, comments, users, trends, feeds, commerce, live or other; kinds and categories in the catalogue map."
        },
        "label": {
          "type": "string"
        },
        "count": {
          "type": "integer"
        },
        "search": {
          "type": "object",
          "additionalProperties": true,
          "description": "Search arguments that list the whole group."
        }
      }
    },
    "CapabilityNext": {
      "type": "object",
      "required": [
        "action"
      ],
      "description": "The call to make next, in the caller's dialect: an MCP tool call `{tool, arguments}` when the request sent `X-Beat-Client: mcp`, otherwise a complete curl command. Copy it and replace the `<placeholders>`.",
      "properties": {
        "action": {
          "type": "string",
          "enum": [
            "search",
            "inspect",
            "run",
            "status",
            "result",
            "none"
          ]
        },
        "call": {
          "oneOf": [
            {
              "type": "string",
              "description": "curl command against https://api.beatapi.io."
            },
            {
              "type": "object",
              "required": [
                "tool",
                "arguments"
              ],
              "properties": {
                "tool": {
                  "type": "string",
                  "enum": [
                    "capabilities_search",
                    "capabilities_inspect",
                    "capabilities_run"
                  ]
                },
                "arguments": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          ]
        },
        "note": {
          "type": "string"
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema 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 Schema
curl "https://apis.io/api/v1/json-schemas/beatapi-capability-search-page"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.