API · /npmstats-api

npm Download Stats API

healthy 3,035 Subscribers

How popular is that npm package? Get download counts and trends for any npm package straight from npm's public download API. Pull the total downloads over a period (last day, week, month, year or any custom YYYY-MM-DD:YYYY-MM-DD range), the full per-day download time series, the monthly totals over the last year to spot growth or decline, and compare several packages side by side ranked by downloads (up to 128 at once, scoped @org/name packages supported). Every call is live (no cache). 5 endpoints. Built for popularity dashboards, package-comparison pages, trend charts, dependency-health scoring and "which library won" analyses. Distinct from an npm registry-metadata lookup — this is the download time series. No upstream key, no cache.

api.oanor.com/npmstats-api
Get an API key Try in playground → Contact provider

Machine-readable spec so AI agents can integrate this API.

/api/npmstats-api/openapi.json
/api/npmstats-api/llms.txt

Discovery: GET /api/index.json lists every API.

API health

healthy
Uptime
100.00%
Server probes · 24h
Avg latency
529 ms
Server probes · 24h
Subscribers
3,035
active
Total calls
80
last 7 days
status Full status page → · 15 probes/24h

Pricing

Pick a tier — billed monthly, cancel anytime.

Free

Free

  • 1,950 calls / month
  • 2 requests / second
  • Hard cap (429 above quota, no overage)
  • 1,950 calls/month
  • 2 req/sec
  • Downloads, range, compare, trends
  • No credit card
Sign in to subscribe

Starter

€7.50 /month

  • 43,000 calls / month
  • 8 requests / second
  • Hard cap (429 above quota, no overage)
  • 43k calls/month
  • 8 req/sec
  • Package comparison
  • Email support
Sign in to subscribe

Pro

€25.00 /month

  • 225,000 calls / month
  • 20 requests / second
  • Hard cap (429 above quota, no overage)
  • 225k calls/month
  • 20 req/sec
  • Popularity dashboards
  • Priority support
Sign in to subscribe

Mega

€59.00 /month

  • 1,100,000 calls / month
  • 50 requests / second
  • Hard cap (429 above quota, no overage)
  • 1.1M calls/month
  • 50 req/sec
  • Analytics at scale
  • Dedicated SLA
Sign in to subscribe

Built by

Related APIs

Other APIs with overlapping tags.

Semver API

A Semantic Versioning (SemVer 2.0.0) toolkit as an API. Parse a version string into its major, minor, patch, prerelease and build parts; compare two versions; test whether a version satisfies an npm-style range (^1.2.3, ~1.4, >=2 <3, 1.x); increment a version to the next major, minor, patch or prerelease; and filter a list of versions by a range to find which match and the highest and lowest satisfying. Powered by the canonical node-semver. Perfect for dependency and release tooling, CI gates, update checkers, compatibility rules and package dashboards. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 6 endpoints. Distinct from package-registry lookups and vulnerability databases.

api.oanor.com/semver-api

Bundle Size API

How big is that npm package? Get the minified and gzipped bundle size of any npm package — plus its dependency count, the size contributed by each dependency, peer dependencies, whether it ships an ES module and whether it is side-effect-free — in a single call. Pin a version ([email protected]) or get the latest, and pull the bundle size across a package's recent versions to spot regressions over time. Powered by the public Bundlephobia service; results are live (no cache). 3 endpoints. Built for frontend performance budgets, bundle-size CI checks, "cost of adding this dependency" tooling, and dependency dashboards. Distinct from a plain npm registry lookup (metadata) or a dependency-graph service — this measures actual shipped bytes. No upstream key, no cache.

api.oanor.com/bundlephobia-api

npm Registry API

Everything about npm packages in one clean API. Look up a package’s latest metadata — version, description, license, homepage, repository, author, keywords, dist-tags, dependencies and maintainers — list its full version history with release dates, pull download statistics for the last day, week, month or year, and search the registry across more than three million packages. Sourced live from the public npm registry and returned as tidy JSON through a fast, reliable API. Ideal for developer dashboards and tooling, package and dependency analytics, supply-chain and security checks, CI/CD and documentation sites.

api.oanor.com/npm-api

Worm Gear API

Worm-gear engineering maths as an API, computed locally and deterministically — the ratio, lead-angle and efficiency numbers a machine designer or millwright sizes a worm drive with. The ratio endpoint gives the reduction = wheel teeth ÷ worm starts, so a single-start worm on a 40-tooth wheel is a big 40:1 reduction in one compact stage — the high ratio in a small package is the whole appeal of a worm drive. The geometry endpoint gives the lead (= starts × axial pitch, with axial pitch = π × module) and the lead angle = atan(lead ÷ (π × worm pitch diameter)), and tests for self-locking: a small lead angle (roughly under 5–6° for typical steel-on-bronze) means the wheel cannot back-drive the worm — invaluable for hoists and holding loads, at the cost of efficiency. The efficiency endpoint gives the mesh efficiency when the worm drives = tan(lead angle) ÷ tan(lead angle + friction angle), which is low for the small lead angles that give big ratios — often 50–70 %, which is why worm gears run warm and need good lubrication — while high-lead multi-start worms reach 90 %+; when the lead angle drops to the friction angle the drive becomes self-locking. Everything is computed locally and deterministically, so it is instant and private. Ideal for mechanical-design and gearbox tools, machine-building and CAD utilities, and engineering calculators. Pure local computation — no key, no third-party service, instant. Confirm self-locking dynamically — vibration can unlock a marginal pair. 3 compute endpoints. For spur gears use a spur-gear API; for a general ratio a gear-ratio API.

api.oanor.com/wormgear-api

Frequently asked questions

Quick answers about pricing, quotas, and integration.

How do I get an API key for npm Download Stats API?
Sign up for free at oanor.com, generate an API key from the developer dashboard, and call npm Download Stats API with the x-oanor-key header. No credit card needed for the free tier.
What's the rate limit for npm Download Stats API?
Free tier allows 1 request per second. Paid plans scale up to 50 requests per second on the Mega tier. Hard limits return HTTP 429 above the quota — no surprise overage charges.
How much does npm Download Stats API cost?
npm Download Stats API has a free tier with 100 calls / month. Paid plans start at €7.50 / month with higher quotas and faster rate limits.
Can I cancel my subscription anytime?
Yes. Plans are billed monthly and you can cancel anytime from your billing dashboard. No long-term contracts and no cancellation fee.
Is npm Download Stats API GDPR-compliant?
All requests to npm Download Stats API go through our EU-based gateway. Your upstream API key never leaves our server and no personal data is shared with the upstream provider beyond the request you send.

Pick an endpoint from the list on the left to see its details and try it.

Code snippets

Sign up to get an API key, then call any path under your slug.

curl https://api.oanor.com/npmstats-api/SOME_PATH \
  -H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/npmstats-api/SOME_PATH", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/npmstats-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
    "https://api.oanor.com/npmstats-api/SOME_PATH",
    headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())

Ratings

Sign in to rate.

No reviews yet.

Discussion

Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.

Sign in to start a thread or reply.

Sign in

New thread

/ 4000

📌 Pinned 🔒 Locked

·

· ·

/ 4000

🔒 This thread is locked — no new replies.

  • No threads yet — start the discussion.

Support

Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.

Sign in to open a support ticket.

Sign in

Open new ticket

Describe what you need help with. The provider team gets an email and replies on the ticket page.

  • No tickets yet for this API.

Subscription active — calls can start immediately.

Send your first request —

Subscription active — copy a snippet and fire off your first call.