crates.io

crates.io

Let AI connect your sources for you

Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog.

Learn more
PostHog Wizard hedgehog

Connect crates.io to PostHog to sync your data into the PostHog data warehouse for analysis and modeling.

Pull metadata, versions, owners, dependencies, and daily download counts for Rust crates from the crates.io API into the PostHog Data warehouse.

crates.io's read APIs are public, so no credentials are required. There is no practical way to sync the whole registry, so enter the crate names you want to track, one per line (or comma-separated). For example:

serde
tokio
posthog-rs

Each sync fetches the current data for every configured crate. The dependency table covers the 25 most recent versions of each crate. The category and keyword tables cover the whole registry, so they do not depend on the crates you list. crates.io has no server-side "changed since" filter, and daily download counts only cover the trailing ~90 days, so all tables sync as a full refresh.

Configuration

OptionTypeRequired
CratestextareaYes

Linking crates.io to PostHog

  1. Go to the Data pipeline page in PostHog
  2. Click New source and select crates.io
  3. Fill in the required configuration fields
  4. Click Next, select the tables you want to sync, and then press Import

Supported tables

TableDescriptionSync methodIncremental fieldPrimary key
crates

Crate metadata: one row per configured crate, from the crate block of the crates.io API crate detail endpoint.

Full refresh
versions

Published versions: one row per version across every configured crate.

Full refreshcreated_at
downloads

Daily download counts per version of each configured crate, over the trailing ~90-day window the crates.io API exposes.

Full refreshdate
owners

Owners (users and teams) of each configured crate.

Full refresh
dependencies

Dependencies declared by the most recent versions of each configured crate, one row per dependency edge.

Full refresh
reverse_dependencies

Versions of other crates that depend on each configured crate, one row per dependency edge.

Full refresh
categories

Every category on crates.io, resolving the category slugs carried on crate records, with the number of crates in each.

Full refresh
keywords

Every keyword on crates.io, resolving the keywords carried on crate records, with the number of crates using each.

Full refresh