
Local HTTP API
A local server on 127.0.0.1:50778 controls profiles, proxies, cookies, scripts and tasks. Auth via x-api-key — only localhost origins are accepted.
Drive Afina through a documented local HTTP API on 127.0.0.1:50778 — start profiles, run RPA scripts, manage proxies and cookies, attach Puppeteer or Playwright over the returned CDP WebSocket. One antidetect browser, one API, predictable behavior at scale.

Multi-account workflows fall apart when antidetect, automation and queueing live in different tools. Afina ships a local HTTP API, an RPA scripts engine, a visual flow canvas and a task scheduler in one platform — and exposes a CDP WebSocket so Puppeteer and Playwright keep working with isolated, fingerprinted profiles.

A local server on 127.0.0.1:50778 controls profiles, proxies, cookies, scripts and tasks. Auth via x-api-key — only localhost origins are accepted.

POST /api/profiles/start returns a wsEndpoint you can plug into Puppeteer or Playwright directly — full devtools control over a real, isolated profile.

Build flows on a drag-and-drop canvas or run JS modules through executeModule. Launch them from your code with POST /api/scripts/run and stream the log.

POST /api/profiles/one-time spins up a fresh fingerprinted profile and hard-deletes it the moment the browser stops — perfect for scraping and isolated checks.
# Start a profile and get a CDP WebSocket endpoint
curl -X POST http://127.0.0.1:50778/api/profiles/start \
-H "x-api-key: $AFINA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"profileId":"1d64f838-a1b8-47de-8a3f-9cebf859c375"}'
# Response
{
"msg": "success",
"wsEndpoint": "ws://127.0.0.1:9223/devtools/browser/abcd-...",
"data": { "port": 9223 }
}Spin up isolated profiles, hit the local API and ship your first flow today — the same browser your team already uses.