Browser API · Web Data · Search · MCP

Web data from the sites that

Hosted anti-detect Chromium. Drive it with Playwright, or call one endpoint for markdown, JSON or a screenshot. Search, captchas and MCP share one balance.

Hard stop at your limit. No surprise bills.

Playwright · CDP over WebSocket

import { chromium } from "playwright";

const browser = await chromium.connectOverCDP(
  "wss://api.wayfern.com/ws?token=<LINK_TOKEN>&country=de",
);
const page = await browser.contexts()[0].newPage();
await page.goto("https://example.com");
  1. link token
  2. anti-detect Chromium
  3. exit: DE residential
  4. live CDP

Response example

ws ← {"type":"connected","connectionId":"0c2c3a1e-…"}
await page.title()
→ "Example Domain"
Web Data endpoints
8
search engines, one call
3
MCP tools for agents
11
concurrent sessions on Scale
400
credits for datacenter egress
0
credits for failed work
0

One API surface

Six tools. One token, one balance.

Every product sits behind the same wf_ token scopes and draws from the same credits. Use one, or chain them in a single job.

Browser API

Drive real anti-detect Chromium over CDP, with the client you already use.

  • Playwright connectOverCDP, Puppeteer connect, or any CDP client
  • Residential exits by country, region, city or ISP, with sticky sessions
  • Link tokens with a 1–100 connection cap, an optional expiry and revoke
8 credits per open-page hour 60 s minimum per page · datacenter egress free

connect.mjs

import { chromium } from "playwright";

// Connect to a Wayfern browser by opening the CDP WebSocket with a link token.
// Sessions are created implicitly when this connection opens; there is no REST
// endpoint to "create" a session.
const browser = await chromium.connectOverCDP(
  "wss://api.wayfern.com/ws?token=<LINK_TOKEN>",
);
const context = browser.contexts()[0];
const page = await context.newPage();
await page.goto("https://example.com");
console.log(await page.title());
await browser.close();

Under the hood

How a request travels

Six stations between your code and clean data. Pick a product and an exit, then follow the request out and back.

Fig 1 From your code to the page

Six stations between your code and clean data. Hover or pick one to read what happens there.

Hover a station · drag to turn

  • The request, and the station working on it
  • The response, and pages open in the rack
  • Cables: the path between stations

A request leaves your code, the gateway checks the token and meters credits, an anti-detect browser loads the page through the exit you chose, and the result comes back: as Markdown or JSON for Scrape and Search, or as the live CDP socket for the Browser API.

Pricing

One balance. Spend it on any tool.

Browser hours, scraped pages, searches and captcha solves all draw on the same monthly credits. Every rate is published, and every response says what it cost.

  • Hard stop at zero. Nothing runs on credit you did not buy.
  • Auto top-up is off until you turn it on.
  • Credit packs roll over and are spent after the plan credits.
  • 20% off when you pay yearly.
Plan

9,000 credits a month, one balance

$99 / month

Business: 9,000 credits a month, up to 1,125 browser-hours, 9,000 pages scraped, 4,500 searches, 9,000 captcha solves.

Each figure is the most you get if the whole month goes to that one thing. Mix them as you like.

100 concurrent sessions 10 seats Datacenter egress free

Data handling

What happens to your data

The short version of how Wayfern treats your credentials, your traffic and your money. Each point links to where it is spelled out.

  • Tokens are hashed, scoped and revocable

    A wf_ token is shown once and stored as a hash. Give it only the scopes it needs, an expiry if you like, and revoke it at any time.

    Token reference
  • Spending stops where your balance does

    At zero credits, work stops. Auto top-up stays off until you switch it on, and a session that cannot pay is closed.

    How billing works
  • Proxy credentials never reach your code

    Exit routing and fingerprints are applied on our side. Your client only ever holds a link token.

    Browser API
  • Short, stated retention

    Web Data page captures are cached for 1 hour; screenshots, PDFs and crawl results are kept for 7 days; search results are cached for 5 minutes. Page content in a CDP session is not recorded unless you turn on Record sessions for a link; replays are kept 1 to 90 days by plan.

    Privacy policy
  • Lawful use only

    The terms say what Wayfern may be used for, and accounts that abuse it are closed.

    Terms of service

FAQ

Questions, answered

The short version. The details live on the pricing page and in the docs.

Does it work with Playwright and Puppeteer?

Yes. Wayfern speaks the Chrome DevTools Protocol over WebSocket. Call chromium.connectOverCDP() or puppeteer.connect() with wss://api.wayfern.com/ws?token=<LINK_TOKEN>; the session starts when the socket opens, so there is no separate "create session" call. Any CDP client works.

How does credit pricing work?

One credit is $0.0125 and covers everything. An open page costs 8 credits an hour (minimum 60 seconds per page), a search 2 credits per provider results page, and a captcha solve 1 credit, charged only on success. On the Web Data API a scraped, extracted or crawled page is 1 credit, a screenshot 5, a font report 5, and a brand profile or styleguide 10; map costs 2 credits per 10 URLs found. Screenshot, PDF or JSON output adds 4 credits per page (once, however many you ask for) and an LLM summary adds 2. Developer includes 1,520 credits a month, Business includes 9,000 credits a month, Scale includes 46,000 credits a month.

What happens when I run out of credits?

Work stops: there is no overage. If you prefer, turn on auto top-up (off by default, monthly card plans only) to bill extra usage at $0.0125 per credit, or buy a credit pack. Plan credits are spent first and reset each period; pack credits are spent next and roll over.

Am I billed for requests that fail?

No. Failed Web Data work is not billed, every Web Data response returns the exact credits it charged, and captcha solves are charged only on success. Search is billed per provider results page fetched, including cache hits.

Do I pay for bandwidth or proxies?

Datacenter egress is free on every plan. Residential exits are optional and metered per byte at 320 credits per GB, from the same balance as everything else.

Can I choose where requests come from?

Yes. Add country, region, city or ISP to the WebSocket URL for a residential exit, and a session id to keep the same exit IP across a flow. On the Web Data API, proxy "auto" starts on a datacenter exit and retries on a residential one when the page blocks it; you can also force datacenter or residential and set a country.

Do browser sessions keep cookies between runs?

Wayfern does not keep saved browser profiles for you. If a flow needs the same cookies or storage across runs, save them in your own code and set them again when you reconnect.

Is there an MCP server for AI agents?

Yes, at https://api.wayfern.com/mcp over streamable HTTP, with a token that has the mcp scope. It exposes 11 tools (search_web, scrape_page, extract_data, map_site, crawl_site and more) at the same rates as the REST API, and every tool result reports the credits it charged.

Point it at the site that blocks you.

Developer is $19 a month for 1,520 credits and 20 concurrent sessions, with a hard stop at zero. Need more? Talk to us about Enterprise volume.

Start for $19/month