Crates.io Scraper - Rust Package Metadata, Versions & Downloads avatar

Crates.io Scraper - Rust Package Metadata, Versions & Downloads

Pricing

Pay per usage

Go to Apify Store
Crates.io Scraper - Rust Package Metadata, Versions & Downloads

Crates.io Scraper - Rust Package Metadata, Versions & Downloads

Extract Rust crate metadata from crates.io: versions, downloads, keywords, categories, and repository links. Ideal for dependency auditing and Rust ecosystem research.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Pierrick McD0nald

Pierrick McD0nald

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Crates.io Scraper — Rust Package Metadata, Versions & Downloads

Extract comprehensive metadata from crates.io, the official Rust package registry. This Actor returns crate descriptions, license identifiers, keywords, categories, total downloads, recent download counts, version lists, and repository links. Whether you are auditing dependencies, tracking popular crates, or building a Rust ecosystem dataset, this tool delivers structured data without writing a single line of Rust.

Use Cases

  • Dependency auditing — Pull metadata, license, and version history for crates in your supply chain.
  • Market research — Compare download counts and recent activity across popular Rust packages.
  • Catalog generation — Build searchable indexes of Rust crates with keywords, categories, and documentation links.
  • Competitive analysis — Track release cadence and adoption trends for competing libraries.
  • Open-source intelligence — Map repository links, documentation URLs, and maintainer ecosystems.

Input

FieldTypeRequiredDescription
crateNamesArrayNoList of crate names to scrape (e.g., serde, tokio, axum). Leave empty to search by query or use defaults.
searchQueryStringNoSearch term for discovering crates. Used when crateNames is empty.
maxItemsNumberNoMaximum number of crates to extract (default: 10).
includeDownloadsBooleanNoFetch per-version download statistics for each crate (default: true).
proxyConfigurationObjectNoProxy configuration. Apify proxy is included by default.

Output

The Actor outputs a dataset with one row per crate:

{
"crateName": "serde",
"description": "A generic serialization/deserialization framework",
"homepage": "https://serde.rs",
"documentation": "https://docs.rs/serde",
"repository": "https://github.com/serde-rs/serde",
"license": "MIT OR Apache-2.0",
"keywords": "serialization, deserialization, json",
"categories": "encoding, data-structures",
"downloads": 125000000,
"recentDownloads": 45000000,
"versionsCount": 180,
"latestVersion": "1.0.228",
"latestVersionDownloads": 120000000,
"createdAt": "2015-04-23T15:23:49Z",
"updatedAt": "2025-09-27T16:51:35Z",
"sourceUrl": "https://crates.io/crates/serde",
"error": ""
}

Pricing

Pay per event: $0.001 per crate extracted. Charges are applied after each crate is successfully processed. If your spending limit is reached, the Actor stops gracefully without overcharging.

Limitations

  • The Actor uses the public crates.io API, which may rate-limit aggressive usage.
  • Download statistics are aggregated per-version and may not reflect real-time counters.
  • Private crates or yanked-only crates may return limited metadata.
  • Search results are capped by the crates.io pagination limit (100 per request).

FAQ

Q: Can I scrape a specific list of crates? A: Yes. Pass the crate names in crateNames and set maxItems to the desired count.

Q: Do I need a crates.io account or API token? A: No. The Actor uses the public crates.io API with a standard User-Agent header.

Q: What happens if a crate is not found? A: The Actor logs the error and continues processing the remaining crates. The output row will contain the crate name and an error field.

Changelog

  • v1.0.0 — Initial release with crate search, metadata extraction, and download statistics.

Built for developers who need reliable Rust ecosystem data. Open an issue on this Actor's Apify page if you need support.