npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@taskmagic/apps-browseract

v0.0.2

Published

Cloud browser automation — [browseract.com](https://www.browseract.com/).

Readme

BrowserAct

Cloud browser automation — browseract.com.

Docs: https://docs.browseract.com/llms.txt (page index) · https://docs.browseract.com/openapi_3.json (the v3 spec these routes come from)

Auth

An API key created under Integrations in the BrowserAct dashboard, sent as Authorization: Bearer <key>.

validate calls GET /v3/bots/regions — a static list needing no bots or tasks, so checking a connection consumes nothing.

⚠️ The route probe does not work on this host

api.browseract.com rejects every request at the gateway with the same {"code":401,"msg":"Invalid authorization"} before it routes. So GET /v3/definitely-not-a-route answers 401 exactly like GET /v3/bots does — with an identical body.

A 401 here is not evidence that a route exists, and no 404 will ever appear to warn you off an invented one. The usual probe is silent on this API.

Every route in this piece instead rests on two independent vendor sources that agree: their published OpenAPI spec (openapi_3.json) and the per-endpoint prose pages listed in llms.txt. Nothing was inferred from a pattern. Hold any addition to the same bar — do not add an endpoint because a 401 came back.

Actions

| Action | Endpoint | |---|---| | Run Bot | POST /v3/bots/{bot_id}/runs | | Get Task | GET /v3/bots/runs/{task_id} | | Get Task Status | GET /v3/bots/runs/{task_id}/status | | List Tasks | GET /v3/bots/runs | | Cancel Task | POST /v3/bots/runs/{task_id}/cancel | | List Bots | GET /v3/bots | | Get Bot | GET /v3/bots/{bot_id} | | Run Bot Template | POST /v3/bots/templates/{template_id}/runs | | List Bot Templates | GET /v3/bots/templates |

Triggers

| Trigger | How | |---|---| | New Finished Task | Polls GET /v3/bots/runs?status=finished, deduped on task_id |

It polls because there is nothing to register. BrowserAct's completion notification is callback_url on an individual run — a per-run setting, not an account-level subscription — so there is no webhook to create in onEnable or tear down in onDisable.

A flow that starts its own runs should prefer Run Bot's Callback URL field pointed at a TaskMagic webhook trigger: that is push, and it fires the instant the task ends. This trigger is for the other case — reacting to runs started elsewhere, in the BrowserAct UI or on a schedule.

Waiting, and when not to

A BrowserAct task may run for up to 7 hours, which no flow step should sit through. So waiting is opt-in (Wait For The Result), bounded (default 120s, capped at 900s), and polls the lightweight status endpoint the docs recommend rather than re-reading the whole task.

If the wait runs out, the step returns the task ID and timedOut: true rather than failing — the task is still running and still costing credits, so the useful outcome is the handle a later Get Task can use. It does not cancel the task.

Notes

  • Responses are wrapped as { code, msg, data }; the client unwraps data so actions return the shape the API reference documents. A 2xx carrying a non-zero code is a business error and is raised with BrowserAct's own message.
  • Errors carry BrowserAct's traceId when present — it is what their support asks for.
  • Only bots with a runnable published version are returned by GET /v3/bots, so the Bot dropdown can never offer one that would fail. Get Bot is what diagnoses the opposite case: an unpublished bot returns published_at: null and running it fails with error code 10020.
  • limit caps differ by endpoint — 100 for bots and tasks, 500 for templates — and each is clamped to its own maximum.