Source

Query arXiv, PubMed, and preprint catalogs with SQL

One merged bibliographic row per paper across arXiv, PubMed, PMC, Europe PMC (with bioRxiv and medRxiv), INSPIRE-HEP, and HuggingFace papers, enriched from OpenAlex — with full text on hand where a source supplied it.

Surface

  • Records90.7M+ papers
  • Canonicalacademic.catalog
  • FreshnessLive— rebuilt as a recorded batch fold; freshness advances when the fold re-runs, not on a continuous cadence
  • Extentbuilt_at 2026-08-13 to 2026-08-27
  • Cadencerecorded batch fold; advances when the fold re-runs, not on a continuous cadence
  • MethodPublic bibliographic feeds (arXiv, PubMed, Europe PMC, INSPIRE-HEP) folded into one catalog; full-text extractions where the source is open.
  • StatsLast stats snapshot: 2026-08-27T12:11:07Z

Query surfaces

  • academic.catalog
  • academic.papers
  • embeddings.academic_paper_chunks

Public bibliographic feeds (arXiv, PubMed, Europe PMC, INSPIRE-HEP) folded into one catalog; full-text extractions where the source is open.

Best for

lookup by arXiv id, PMID, PMCID, or DOI with every corpus that holds the paper listed in sources
category and year slices ranked by citedness, with has_fulltext telling you what can be read in full
MeSH terms, open-access status, license, and retraction flag on the same row

Fields

  • paper_key
  • doi
  • arxiv_id
  • pmid
  • pmcid
  • epmc_id
  • inspire_id
  • title
  • authors
  • abstract
  • venue
  • published_year
  • published_at
  • languages
  • pub_types
  • categories
  • mesh_terms
  • keywords
  • cited_by_count
  • is_oa
  • oa_status
  • oa_url
  • license
  • is_retracted
  • sources
  • has_fulltext
  • fulltext_tokens
  • built_at

Read live from the schema registry for academic.catalog — 28 columns. Every relation's full contract is served by /v1/scry/schema.

Indexed predicates

  • Prunespaper_key = '<encoded DOI key>'
  • Prunesarxiv_id = '<arxiv id>'
  • Prunespmid = <pmid>
  • Prunespmcid = 'PMC<id>'

Queries

Look up a paper by arXiv id

arxiv_id, pmid, pmcid, and paper_key are indexed lookups.

SELECT paper_key, title, published_year, cited_by_count, sources, has_fulltext
FROM academic.catalog
WHERE arxiv_id = '1706.03762'
LIMIT 5;

Most-cited machine-learning papers of a year

Filter by category and year, then rank by citedness.

SELECT paper_key, title, venue, cited_by_count, has_fulltext
FROM academic.catalog
WHERE has(categories, 'cs.LG')
  AND published_year = 2024
ORDER BY cited_by_count DESC
LIMIT 20;

Gaps

  • HolesNone declared on the live schema entry for academic.catalog (declared holes are curation, not a measurement of completeness).
  • Noteempty string or 0 means no source supplied the field, not a measured zero — cited_by_count = 0 on a famous arXiv paper means the OpenAlex enrichment did not match, not that it is uncited
  • Notepaper_key is the join identity: the encoded real DOI when known, 10.48550/arxiv.<id> for DOI-less arXiv papers
  • Notefull text is in academic.papers, one deterministic revision per paper, joined on paper_key