Notes from the API factory.
Engineering deep-dives, product updates, and what we're learning about turning the messy web into clean, dependable data.

The hidden bill for your homemade scraper
A scraper feels free the day you build it. Then the real bill arrives: maintenance, bot walls, on-call, and the work you never got to. A clear-eyed look at build versus buy, and where a per-site API actually fits.

What people actually build with maviapi
Four kinds of builder keep showing up at our door: indie devs, data and ML teams, market researchers, and the automation crowd. They leave with wildly different products and the exact same starting point.

Set it and forget it: saving and scheduling with Datasets
An API call is a snapshot of one moment. Datasets keeps that result, refreshes it on a cadence you set, and hands it back as JSON or CSV. Here is how a one-off call becomes a living table you never have to re-run.

Build a price watcher in an afternoon
Watching a number for changes is the same little loop every time: read it, compare it, tell someone. The hard part was always getting the number. Here is the whole watcher in about forty lines of Node.

How maviapi keeps your endpoints alive when websites change
Scrapers break the moment a site changes, and usually they do not tell you. Here is why that is so painful, and how a hosted API takes the whole maintenance problem off your plate.

Versioning APIs without breaking anyone
Every hosted API on maviapi ships immutable versions. Here is why we made that the default, and how the dashboard lets you promote a new one without a single broken request.

From URL to JSON in five minutes
A short, no-fluff walkthrough: pick an API, grab a key, and make your first call from curl and from a Node script. By the end you have clean JSON in your terminal.

How websites block scrapers, and how to get past it
Some sites refuse to answer anything that is not a real browser. Here is how bot detection works, what a stealth browser does about it, and why you do not want to run one yourself.

Stop parsing HTML: get clean JSON instead
Scraping hands you a pile of HTML and a parsing problem. A real API hands you clean, predictable JSON. Here is why that difference matters more than it looks, and how to skip the parser for good.

Rate limits that tell you what is happening
Every maviapi response carries its own limit headers, so a polite client never has to guess. Here is what they mean and how to build a backoff that reads them.

Why we built maviapi
The short origin story: a scraper that broke at the worst possible time, a weekend that turned into a year, and the bet that the messy web deserves a stable front door.
New posts, no inbox required
We publish when we have something worth saying: new APIs, product updates, and engineering notes. Follow along however you like.