Breaking change alerts for third-party APIs

Dev toolWeb1 weekNext.jsSupabaseStripe

The idea

Every team that integrates a partner API (payments, logistics, EHR, tax) lives one silent deprecation away from an outage, and the notice usually arrives as a customer bug report. Providers do publish OpenAPI specs, and the specs change before or alongside the behaviour, but nobody is watching them from the consumer side.

The tooling gap is specific: oasdiff and friends are built to diff your own spec in your own CI, catching breaks you are about to ship. Nothing points the same diff at specs you consume. That is a one-week build on top of existing diff semantics, and the alert email writes its own value proposition: this field you depend on was removed yesterday.

Who pays

The buyer is an engineering lead at a small-to-mid team whose product sits on two to ten partner APIs, where an integration break is a revenue incident rather than an inconvenience. Priced at 19 to 49 dollars a month per watch tier, it is a card-swipe decision, no procurement. Distribution: SEO on api breaking change and specific provider-name deprecation queries, Hacker News launch, and integration-heavy communities (Shopify, Stripe, EHR dev forums).

MVP scope

  • Add watches by public spec URL, daily polling with snapshot storage
  • Semantic diff engine with breaking vs cosmetic classification
  • Instant email and Slack webhook alerts for breaking changes, weekly digest for cosmetic ones
  • Change-history timeline per watch with rendered diffs
  • Stripe subscriptions with free single-watch tier
  • Skip for v1: authenticated spec URLs, GraphQL schemas, scraping HTML docs without specs, hourly polling, team seats and roles
// Build prompt — paste into Cursor / Claude Code / Lovable / Bolt
Build SpecWatch, a SaaS that monitors third-party OpenAPI specs for breaking changes. Stack: Next.js on Vercel, Supabase (Postgres, auth, cron via pg_cron or Vercel Cron), Stripe.

Core flow: user signs up with magic-link auth (no passwords), adds a watch by pasting a public OpenAPI spec URL (JSON or YAML, 2.0/3.x), names it, and picks alert channels: email and/or a Slack incoming webhook URL. A daily cron fetches every watched spec, normalizes it (resolve $refs, sort keys) and diffs it against the last stored snapshot. Classify each change as breaking (removed path/operation, removed or newly-required field, type change, removed enum value, auth scheme change) or cosmetic (descriptions, new optional fields, new endpoints). Breaking changes trigger an immediate alert with a human-readable summary, e.g. GET /v1/orders: field shipping_cost removed from response. Cosmetic changes roll into a weekly digest.

Pages: landing page with a live demo diff of two spec versions, dashboard listing watches with last-checked status and change history, watch detail page with a timeline of diffs (rendered side-by-side), settings/billing.

Implementation notes: store full spec snapshots gzipped in Supabase Storage keyed by content hash so unchanged fetches cost one hash comparison; treat fetch failures (404, timeout) as their own alert type since a vanished spec often precedes a vanished API.

Pricing: free for 1 watch, 19 GBP/month for 10 watches, 49 GBP/month for 50 plus Slack alerts.

// More Dev tool ideas