Free Tools API and Catalog Data

Free, public, no-key JSON endpoints for the full SpecWhale tool catalog -- build your own directory, comparison, or search integration on top of it.

What's available

SpecWhale publishes two free, public, no-key, no-rate-limit JSON endpoints with the full tool catalog. There is no signup, no authentication, and no usage cap -- they're plain static files served from Cloudflare's edge, refreshed on every deploy.

GET https://specwhale.com/tools.json

The full catalog: every tool's title, slug, canonical URL, category, engine type, data source, description, and keywords, plus the list of categories and curated collections. Shape:

{
  "name": "SpecWhale",
  "origin": "https://specwhale.com",
  "generatedAt": "ISO-8601 timestamp",
  "totalTools": 3763,
  "collections": [ { "title", "slug", "url", "description", "count" } ],
  "categories": [ { "id", "name", "url", "description" } ],
  "tools": [ { "title", "slug", "url", "category", "categoryName", "engine", "api", "description", "keywords" } ]
}

GET https://specwhale.com/search-index.json

A lighter-weight version of the same catalog (one compact entry per tool), intended for client-side search and command-palette style integrations. Shape:

{
  "schemaVersion": 1,
  "name": "SpecWhale",
  "origin": "https://specwhale.com",
  "generatedAt": "ISO-8601 timestamp",
  "totalTools": 3763,
  "searchUrlTemplate": "https://specwhale.com/tools/?q={searchTerms}",
  "tools": [ { "title", "slug", "url", "absoluteUrl", "description", "category", "categoryName", "type", "typeName", "api", "keywords", "collections" } ]
}

SpecWhale's own Ctrl+K search doesn't read this file directly -- it loads a separate, unlisted, more compact file sized purely for that one UI (no field-stability promise, and its shape may change at any time without notice). If you're integrating externally, build against tools.json or search-index.json above, both of which carry the stability guarantee below.

Using it

  • Build your own directory, comparison table, or "best free X tools" page by reading tools.json directly -- credit and a link back to the relevant specwhale.com/tools/<slug>/ page is appreciated but not required by any license restriction; these files are public data.
  • Embed any individual tool with the <iframe> snippet on that tool's own page (see "Embed this tool" on any tool page).
  • Cache responses on your end if you're polling frequently -- the catalog changes rarely, and generatedAt tells you when it last did.

Stability

Field names in tools.json and search-index.json are treated as a stable public contract. New fields may be added; existing fields will not be renamed or removed without a notice in the changelog.