PyPI Release Monitor API avatar

PyPI Release Monitor API

Pricing

Pay per usage

Go to Apify Store
PyPI Release Monitor API

PyPI Release Monitor API

Monitor PyPI releases and package metadata from the public PyPI JSON API.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Automly

Automly

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Categories

Share

PyPI Release Monitor API collects clean, structured PyPI release data for one or more Python packages. Use it to track new versions, monitor dependency updates, and feed package metadata into alerts, dashboards, or automation workflows.

Why use this PyPI release monitor?

Python dependencies move quickly, and a small release can still affect compatibility, security, or deployment plans. This actor gives you a simple way to track PyPI packages without building and maintaining custom polling logic.

Typical use cases:

  • Track release cadence for critical Python dependencies
  • Watch for version bumps in your runtime stack
  • Power alerts, dashboards, and changelog workflows
  • Enrich engineering data pipelines with package metadata

Features

  • Monitor one or more PyPI packages in a single run
  • Return either a compact latest-release summary or individual recent version records
  • Include package metadata, release timestamps, authors, license, and Python version requirements
  • Pay-per-event pricing tied to the records you actually use

Input

Example: quick latest-release check

{
"packages": "requests, fastapi, numpy",
"latestOnly": true,
"maxResults": 5,
"versionsPerPackage": 10
}

Example: recent version monitoring

{
"packages": "pydantic, uvicorn",
"latestOnly": false,
"maxResults": 20,
"versionsPerPackage": 5
}

Input fields

FieldTypeDescription
packagesstringComma or newline separated PyPI package names to monitor, such as requests, fastapi, or numpy.
latestOnlybooleanWhen enabled, returns one summary record per package instead of recent version records.
maxResultsintegerMaximum number of dataset records to return across all packages. Values above 100 are clamped.
versionsPerPackageintegerHow many recent versions to include for each package when latestOnly is turned off. Values above 50 are clamped.

Output

Example record: latest-release summary

{
"packageName": "requests",
"version": "2.32.3",
"latestVersion": "2.32.3",
"summary": "Python HTTP for Humans.",
"description": "Python HTTP for Humans.",
"homepageUrl": "https://requests.readthedocs.io",
"sourceCodeUrl": "https://github.com/psf/requests",
"documentationUrl": null,
"packageUrl": "https://pypi.org/project/requests/",
"author": "Kenneth Reitz",
"authorEmail": "me@kennethreitz.org",
"license": "Apache-2.0",
"requiresPython": ">=3.9",
"publishedAt": "2024-05-20T12:00:00.000Z",
"yanked": false,
"yankedReason": null,
"releaseFileCount": 2,
"releaseCount": 138,
"recordType": "package_summary"
}

Example record: version detail

{
"packageName": "fastapi",
"version": "0.115.0",
"latestVersion": "0.115.0",
"summary": "FastAPI framework",
"description": "FastAPI framework",
"homepageUrl": "https://fastapi.tiangolo.com",
"sourceCodeUrl": "https://github.com/fastapi/fastapi",
"documentationUrl": null,
"packageUrl": "https://pypi.org/project/fastapi/",
"author": "Sebastián Ramírez",
"authorEmail": "",
"license": "MIT",
"requiresPython": ">=3.8",
"publishedAt": "2024-09-01T12:00:00.000Z",
"yanked": false,
"yankedReason": null,
"releaseFileCount": 1,
"releaseCount": 90,
"recordType": "version_record"
}

Limits and caveats

  • Package names must point to public PyPI packages.
  • If a package has many releases, use latestOnly=true for a cheaper summary run.
  • maxResults is capped at 100 to keep runs predictable and affordable.
  • versionsPerPackage is capped at 50 so detail runs stay fast.
  • Some packages leave metadata fields blank, so not every field will be populated for every release.

Pricing

This actor uses Pay-Per-Event pricing.

EventPriceCharged when
package-summary-produced$0.25 / 1kA latest-release summary record is produced
version-record-produced$0.75 / 1kAn individual version record is produced

FAQ

Do I need a PyPI account?
No. The actor reads public PyPI metadata.

What is the difference between summary mode and detail mode?
Summary mode returns one record per package using the latest release. Detail mode returns recent versions as separate records.

Can I use this for dependency monitoring?
Yes. Re-run the actor on a schedule and compare version changes over time.

What if a package does not exist?
The actor skips invalid package names and continues with the rest of the list.