opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

Browse a site, get a typed client for its real endpoints
GitHub RepoViews4

Project Description

View on GitHub

Stop Digging Through DevTools: This Tool Turns Any Website Into a Typed API Client

You've done it before. You find a site with data you want—job listings, product catalogs, whatever—and you open DevTools, watch the Network tab, and start copying cURL commands. Then you spend the next hour gluing together a client by hand, guessing at response shapes and praying nothing breaks. Reverse API Engineer automates that whole slog: you browse a site (or let an agent browse it for you), and it hands back a working, typed API client for the endpoints the site actually uses.

What It Does

The workflow is straightforward. You give the tool a website and a goal—something like "fetch all Apple jobs from their careers page." A browser then visits the site, either driven by you in manual mode or by an AI agent in agent mode. Network traffic gets captured to a HAR file, and your configured model reads that traffic and writes a working API client.

That client can come out in Python, JavaScript, TypeScript, Go, Java, C#, PHP, Ruby, C, or PowerShell. The output lands in a directory like ./scripts/apple_jobs_api/, complete with api_client.py, a README.md, and example_usage.py.

It's a Python tool (3.11+, MIT licensed, installable from PyPI). Agent mode—the default—captures through npx-launched browser tooling, so it works with browser MCP servers like Playwright or Chrome DevTools, or the Vercel agent-browser CLI, with no extra Python packages needed. Manual mode drives a local Playwright browser, which ships as an optional extra.

Why It's Cool

  • It skips the boring part entirely. The README puts it plainly: no more manually opening DevTools, copying cURL commands, and gluing together a client. That's the whole pitch, and it's a good one—reverse-engineering a site's internal API is tedious work that's mostly mechanical.

  • HAR files as the source of truth. Capturing real traffic means the generated client targets endpoints that genuinely exist and behave the way the site behaves. You're not guessing at an API spec; you're working from what the browser actually saw.

  • Agent mode is the interesting bit. Letting an AI agent drive the browser autonomously means you can describe a goal in plain language and walk away. The demo GIF in the repo shows this against a car listing site, which is exactly the kind of scenario where manual network spelunking gets painful.

  • Eleven target languages. Python and TypeScript are the obvious picks, but Go, Ruby, C, and even PowerShell are on the list. If you're building a scraper in a language that isn't Python, you're not stuck translating by hand.

  • It plays nice with coding agents. There's a skill you can install so Claude Code, Codex, Cursor, OpenCode, and similar tools know how to drive the CLI. You can literally ask your agent for a typed client for a careers page and let it handle the rest.

One honest caveat from the README: the cryptography dependency dropped support for Intel macOS and 32-bit Windows, so those platforms aren't a supported install path. Linux, Apple Silicon macOS, and 64-bit Windows are fine—and the README explicitly warns against downgrading cryptography to work around it.

How to Try It

Install it with uv or pip:

uv tool install reverse-api-engineer   # or: pip install reverse-api-engineer

If you want manual mode, pull in the extra and install the browser:

uv tool install "reverse-api-engineer[manual]"   # or: pip install "reverse-api-engineer[manual]"
playwright install chromium

Then just run it and describe what you want:

reverse-api-engineer
> fetch all apple jobs from their careers page

A browser opens. Navigate and interact however you need, then close it when you're done, and the generated client appears in ./scripts/apple_jobs_api/. You can cycle between manual and agent modes with Shift+Tab.

If you want your coding agent to drive it, install the skill first:

npx skills add kalil0321/reverse-api-engineer

The repo lives at github.com/kalil0321/reverse-api-engineer, and the skill itself is documented in skills/reverse-api-engineer/SKILL.md.

Final Thoughts

Reverse API Engineer is a focused tool that solves one specific annoyance well: turning a site's real network traffic into a usable client without the manual copy-paste grind. It won't magically work on every site—auth flows and anti-bot measures are their own beast—but for the common case of a public site with a clean internal API, it saves real time. If you scrape data regularly or build integrations against sites that don't publish an API, it's worth a look.


Follow @githubprojects for more developer tools and open source projects.

Back to Projects
Project ID: reverse-api-engineerLast updated: November 1, 2026 at 02:52 AM