npm hub

npm Recent Updates API

Recent package updates as typed JSON, with the package name, description, publisher and publish time on every item.

GET /v1/npm/registry/recent

1 credit Failed requests are free

About this endpoint

GET /v1/npm/registry/recent takes no parameters. It returns data.items, newest first, each with name, description, publisher and publishedAt, plus data.count for the number of items in this answer. The feed carries at most 50 items per call.

Use it as a cheap discovery feed: it shows packages that just published an update, without a sequence or cursor. It is a snapshot, not a complete change log, so overlaps between polls are normal and items can drop out as newer updates arrive. For exact incremental indexing, use GET /v1/npm/registry/changes, which is keyed by sequence.

npm Recent Updates API FAQ

How many items does the feed return?

At most 50. data.count is the number in this response. There is no limit parameter; take the items and poll again later.

Can I page through older updates?

No. The feed is a fixed recent window with no cursor. For ordered history, use GET /v1/npm/registry/changes from a sequence you stored and fetch the packages you need.

Is every item a brand-new package?

No. An item is a package update, which can be a new package or a new version of an existing one. Read the item name and fetch GET /v1/npm/package/details if you need the version history.

What does publishedAt mean?

It is the publication time the feed reports, as an ISO 8601 timestamp, or null when the feed has none. Sort on it if you merge several polls, and de-duplicate by name and time.

What does the request cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.