Use Case

Price alerts that
don’t get blocked

Build hobby projects that survive real anti-bot systems. Start with the Request API (URL → markdown), then add proxies and batching when your watch list grows, without worrying about anti-bot walls.

One Request = One Signal

Use the Request API to turn a product URL into clean HTML or markdown. No browser runtime, no Playwright harness.

Stealth By Default

Realistic TLS + browser fingerprints help you avoid the “403 after 3 requests” problem common in hobbyist scripts.

Residential + Mobile Egress

Retailers and marketplaces behave differently per geo and network. Choose proxy type and location when you need it.

CAPTCHA Avoidance

Stop wiring third-party solvers into your scripts. Our stealth architecture prevents CAPTCHAs from appearing in the first place.

Batch When You Scale

When your “watch list” becomes a catalog, use batch endpoints for higher throughput and fewer round-trips.

Indie-Friendly Economics

Per-minute pricing and a free tier make it practical for side projects and hobby monitoring without surprises.

Extract a price signal

Fetch a product page as markdown and parse a price. For multiple URLs, switch to batch endpoints and run this in a scheduler.

price.ts
const authorization = ['Bearer', process.env.BROWSERCITY_API_KEY].join(' ');const page = await fetch('https://api.browser.city/v1/requests', {  method: 'POST',  headers: { Authorization: authorization, 'Content-Type': 'application/json' },  body: JSON.stringify({ url: 'https://example.com/product', markdown: true }),}).then((r) => r.json());const price = String(page.content ?? '').match(/\$([0-9,.]+)/)?.[1];if (!price) throw new Error('price not found');console.log({ price });

Common hobby workflows

Restock alerts
Price drops
Limited releases
Job listings
Rental listings
Flight fares
Marketplace monitoring
Personal dashboards
[ 06 / 06 ] — Get Started

Give your AI agents the web.

Start for free. No credit card required. Private sessions by default.