RubyGems Scraper โ Gem Metadata, Versions & Downloads
Pricing
from $0.0005 / gem scraped
RubyGems Scraper โ Gem Metadata, Versions & Downloads
Look up exact Ruby gems or search RubyGems in bulk and get clean structured data: current version, all-time and version downloads, authors, description, licenses, runtime dependencies, homepage, source, docs and project links. Built for dependency audits, dev tooling and n8n.
Pricing
from $0.0005 / gem scraped
Rating
0.0
(0)
Developer
hiper soft
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
RubyGems Scraper โ Gem Metadata, Versions, Downloads & Dependencies
Look up exact Ruby gems by name or search RubyGems in bulk and get back clean, structured JSON for every gem: current version, all-time and per-version download counts, authors, description, licenses, runtime dependencies, and homepage, source, documentation and project links. Built for Ruby developers, dependency auditors and OSS analysts who need reliable, ready-to-use gem data. Export to JSON, CSV or Excel.
Features
- ๐ฏ Exact lookups โ pass precise gem names like
rails,sinatraornokogiriand get one clean record each. - ๐ Bulk search โ run a free-text query (
http client,background jobs) and collect matching gems up to your limit. - ๐ Download metrics โ capture both all-time
downloadsand currentversionDownloadsfor popularity and trend analysis. - ๐งพ Licenses & dependencies โ every record includes
licensesand the gem's runtimedependenciesfor fast auditing. - ๐ Ready-to-use links โ
homepageUri,sourceCodeUri,documentationUriand the canonicalprojectUri. - ๐งฉ Integrations โ plug the output straight into n8n, Make, Zapier and more.
- โ๏ธ Reliable by design โ retry-with-backoff and graceful handling of missing gems so runs finish cleanly.
What you get
Each gem becomes one clean JSON record.
{"name": "rails","version": "8.1.3.1","downloads": 781542425,"versionDownloads": 4585012,"authors": "David Heinemeier Hansson","info": "Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity.","homepageUri": "https://rubyonrails.org","sourceCodeUri": "https://github.com/rails/rails/tree/v8.1.3.1","documentationUri": "https://api.rubyonrails.org/v8.1.3.1/","licenses": ["MIT"],"dependencies": ["actioncable", "actionmailbox", "actionmailer", "actionpack"],"sha": "ccd11a36bfc171bf9c66d585d14c0ece91c0c9dde840aae60c0118d6f5c9c52a","projectUri": "https://rubygems.org/gems/rails","ok": true}
Output schema
| Field | Type | Description |
|---|---|---|
name | string | Gem name. |
version | string | Current published version. |
downloads | integer | All-time download count for the gem. |
versionDownloads | integer | Download count for the current version. |
authors | string | Gem author(s). |
info | string | Gem description / summary. |
homepageUri | string (URL) | Project homepage. |
sourceCodeUri | string (URL) | Source repository URL. |
documentationUri | string (URL) | Documentation URL. |
licenses | array | SPDX license identifiers. |
dependencies | array | Runtime dependency gem names. |
sha | string | Checksum of the current version's gem file. |
projectUri | string (URL) | Canonical RubyGems page for the gem. |
ok | boolean | true for a fetched gem; false with an error for a gem that could not be found. |
Input
{"gems": ["rails", "sinatra", "nokogiri"],"search": "http client","maxItems": 100}
| Field | Description |
|---|---|
gems | Exact gem names to look up. Always fetched, in addition to any search results. |
search | Free-text query matching gem name and description. Matches are collected up to maxItems. |
maxItems | Maximum number of gems to collect from the search query (1โ5000). |
Provide gems, search, or both in a single run.
Use cases
- Audit the licenses and dependencies of the gems in your
Gemfilebefore shipping. - Track download momentum to compare competing gems in a category.
- Build a catalog of gems for a topic (e.g. HTTP clients) for research or content.
- Enrich an internal dependency dashboard with versions, descriptions and repo links.
Pricing
Pay-per-event: you're billed a small amount per gem scraped โ you only pay for what you get. See the Pricing tab for current rates.
FAQ
How many gems can I scrape per run?
Add any number of exact gem names in the gems field and collect up to maxItems (5000) more from a search query โ all in one run.
What's the output format?
Structured JSON โ one record per gem with fields such as version, downloads, versionDownloads, authors, info, licenses and dependencies. Export as JSON, CSV, Excel or via the API.
What happens to a gem name that doesn't exist?
It's returned as a record with ok: false and an error, so a typo never breaks the run โ every other gem is still scraped.
Can I use this with n8n? Yes. Run the actor from the Apify node for n8n and map the gem records straight into your workflow โ enrich a dependency list, trigger alerts on new versions, or sync gem data into a database or spreadsheet.
Can I connect this Actor to other apps? The RubyGems Scraper works with almost any cloud service or web app thanks to integrations on the Apify platform: Make, Zapier, Slack, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.
Related Actors
Tracking packages across ecosystems? Pair this with our other developer-data scrapers:
- npm Package Scraper โ search and look up npm packages with metadata, dependencies and downloads.
- PyPI Package Scraper โ metadata, dependencies, licenses and downloads for Python packages.
- crates.io Scraper โ Rust crates with downloads, versions, license and repository links.
- GitHub Scraper โ repositories and user profiles with stars, topics and licenses.
Notes
This actor reads only publicly available gem data from RubyGems. It is an independent tool and is not affiliated with, endorsed by, or sponsored by RubyGems.org or Ruby Central; "RubyGems" and "Ruby" are trademarks of their respective owners. Original clean-room implementation.