VOOZH about

URL: https://apify.com/crawlerbros/hex-pm-scraper

โ‡ฑ Hex.pm Package Scraper ยท Apify


Pricing

from $3.00 / 1,000 results

Go to Apify Store

Hex.pm Package Scraper

Scrape Hex.pm - the package manager for Erlang/Elixir. Search packages or fetch by name. Returns downloads, versions, owners, licenses, and repository links.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

๐Ÿ‘ Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 days ago

Last modified

Share

Scrape package data from Hex.pm โ€” the package manager for the Erlang ecosystem (Elixir, Erlang, Gleam, and more). This actor uses the official public Hex.pm REST API with no authentication required.

What can it do?

  • Search packages by keyword with configurable sort order (recent downloads, total downloads, alphabetical, etc.)
  • Fetch specific packages by exact name (e.g. phoenix, ecto, jason)
  • Returns rich metadata: download statistics, versions, owners, licenses, repository links, and more

Input

FieldTypeDescription
modesearchPackages | getByNameOperation mode. Default: searchPackages
searchQuerystringFree-text search query. Default: phoenix
packageNamesstring[]Exact package names for getByName mode
sortenumSort order for search results. Default: recent_downloads
maxItemsinteger (1โ€“500)Maximum packages to return. Default: 50

Sort options

ValueTitle
recent_downloadsRecent downloads
total_downloadsTotal downloads
inserted_atNewest packages
updated_atRecently updated
nameAlphabetical name

Example input โ€” Search

{
"mode":"searchPackages",
"searchQuery":"phoenix",
"sort":"recent_downloads",
"maxItems":50
}

Example input โ€” Fetch by name

{
"mode":"getByName",
"packageNames":["phoenix","ecto","jason"]
}

Output

Each record in the dataset represents one Hex.pm package.

FieldTypeDescription
packageNamestringPackage name on Hex.pm
descriptionstringPackage description
licensesstring[]List of SPDX license identifiers
linksobjectLinks from package metadata (GitHub, Changelog, etc.)
totalDownloadsintegerAll-time download count
recentDownloadsintegerDownloads in the last 90 days
weeklyDownloadsintegerDownloads in the last 7 days
insertedAtstringISO timestamp when package was first published
updatedAtstringISO timestamp of latest update
latestVersionstringLatest stable version (falls back to latest pre-release)
ownersstring[]Package owner usernames
repositoryUrlstringSource repository URL (GitHub, GitLab, etc.)
sourceUrlstringHex.pm package page URL
recordTypestringAlways "package"
scrapedAtstringISO timestamp when record was scraped

Example output record

{
"packageName":"phoenix",
"description":"Peace of mind from prototype to production",
"licenses":["MIT"],
"links":{
"GitHub":"https://github.com/phoenixframework/phoenix",
"Changelog":"https://github.com/phoenixframework/phoenix/blob/master/CHANGELOG.md"
},
"totalDownloads":156000000,
"recentDownloads":4200000,
"weeklyDownloads":380000,
"insertedAt":"2014-01-30T00:00:00Z",
"updatedAt":"2025-05-01T12:00:00Z",
"latestVersion":"1.7.14",
"owners":["chrismccord"],
"repositoryUrl":"https://github.com/phoenixframework/phoenix",
"sourceUrl":"https://hex.pm/packages/phoenix",
"recordType":"package",
"scrapedAt":"2025-05-30T10:00:00+00:00"
}

Frequently Asked Questions

Does this require an API key? No. The Hex.pm API is fully public and does not require authentication.

Can I get all packages on Hex.pm? Yes โ€” leave searchQuery empty and use sort=recent_downloads with a high maxItems. The API paginates automatically.

What is the difference between recent_downloads and total_downloads? recent_downloads covers the last 90 days; total_downloads is the all-time count. Both are available in the output.

What ecosystems does Hex.pm cover? Hex.pm hosts packages for Elixir, Erlang, and Gleam โ€” all languages that run on the BEAM virtual machine.

How often is the data updated? Hex.pm data is live โ€” each run fetches real-time data from the official API.

Can I search for multiple queries in one run? Each run supports one search query. To scrape multiple queries, run the actor multiple times or use getByName mode with a list of package names.

You might also like

Hex.pm Elixir & Erlang Package Registry Scraper

parseforge/hex-elixir-packages-scraper

Browse and search the Hex.pm registry of Elixir and Erlang packages. Filter by search query, sort by recency, downloads, or alphabetical, and pull versions, dependencies, licenses, and download counts per package.

Hex.pm Scraper | Elixir and Erlang Packages

parseforge/hex-pm-scraper

Scrape Hex.pm package data including name, version history, downloads, dependencies, owners, repository links, licenses, and release dates. Track the Elixir and Erlang ecosystem, audit dependencies, or build BEAM developer intelligence and security tools for production projects.

NuGet Packages Scraper

parseforge/nuget-packages-scraper

Search the NuGet .NET package catalog. Returns IDs, latest versions, descriptions, owners, authors, total downloads, project and license URLs, tags, package types and full version history for any matching package.

npm Package Scraper

plantane/npm-scraper

Scrape npm package data โ€” search packages or get detailed info including versions, maintainers, and download stats.

Windows Package Manager (winget) Scraper

crawlergang/winget-scraper

Scrapes Windows Package Manager (winget) package metadata from winget.run. Search packages by keyword or fetch specific packages by their winget package ID.