Crossref Scraper · DOI Metadata, Authors, Journals & Citations avatar

Crossref Scraper · DOI Metadata, Authors, Journals & Citations

Pricing

from $1.30 / 1,000 record returneds

Go to Apify Store
Crossref Scraper · DOI Metadata, Authors, Journals & Citations

Crossref Scraper · DOI Metadata, Authors, Journals & Citations

Scrape scholarly DOI metadata, works, journal articles, authors, citations, funding, and licenses from the Crossref REST API. Fast HTTP scraper with pay-per-event pricing.

Pricing

from $1.30 / 1,000 record returneds

Rating

0.0

(0)

Developer

Tarek Etman

Tarek Etman

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 hours ago

Last modified

Share

reapX — public sources in, addressable records out

Crossref Scraper · DOI Metadata, Authors, Journals & Citations

Crossref Scraper is a high-speed, light-footprint HTTP actor designed to extract scholarly DOI metadata, journal articles, books, preprints, citation counts, author affiliations, funding agency records, and open-access licensing information directly from the official Crossref REST API (api.crossref.org).

Maintained by reapX. Every row cites the Apify run that produced it — nothing is inferred, modelled or filled in, and a field absent from the source is absent from the row. The extracted archive for this source is browsable at reapx.dev/data/crossref-scraper/ and mirrored as an open dataset on Hugging Face and Kaggle. Questions: reapxdev@proton.me

Maintained by reapX. Public source data transformed into addressable entity records. Archive & API access guarantees. Contact reapxdev@proton.me.


Features & Capabilities

  • Complete DOI Metadata: Extract digital object identifiers (doi), sanitized paper identifiers (paperId), article titles, publication dates, and publication types (journal-article, book-chapter, proceedings-article, posted-content, dataset).
  • Authors & Affiliations: Collect full author lists, primary author affiliations, and author counts for every work.
  • Journals, Publishers & ISSNs: Capture container titles, publisher names, volume, issue, page ranges, print/electronic ISSNs, and ISBNs.
  • Citations & References: Retrieve citation counts (isReferencedByCount) and bibliography reference counts (referenceCount).
  • Funding & Licensing: Track grant funding agency names (funderNames), funder registry DOIs (funderIds), open access status (isOpenAccess), and reuse license URLs (licenseUrl).
  • Direct PDF & Document Links: Extract direct URLs to full text PDF documents and publisher landing pages whenever available.
  • Flexible Filters & Deep Paging: Filter by keyword, author, title, journal, publisher member ID, date range, funder ID, license availability, or abstract presence.
  • Pay-Per-Event Pricing: Charged strictly per returned record written to the default dataset. Empty searches, invalid queries, and rate-limited attempts cost zero.

⬇️ Input

The input configuration for Crossref Scraper allows you to filter and sort scholarly works across the entire Crossref catalog.

Input Parameters

ParameterTypeRequiredDefault / ExampleDescription
querystringNo10.1002Free-text search terms for matching metadata across titles, abstracts, and full texts.
query_authorstringNoDoudnaFilter works by author given or family name.
query_titlestringNodeep learningRestrict search terms specifically to work titles.
query_container_titlestringNoThe CRISPR JournalFilter works published in specific journals, proceedings, or books.
query_publisherstringNoWileySearch works issued by specific publishers.
filter_typestringNojournal-articleRestrict results by Crossref publication type.
filter_from_pub_datestringNo2020-01-01Filter works published on or after date (YYYY, YYYY-MM, or YYYY-MM-DD).
filter_until_pub_datestringNo2026-12-31Filter works published on or before date.
filter_has_licensebooleanNotrueRestrict output to works carrying explicit license metadata.
filter_has_abstractbooleanNotrueFilter for works with indexed abstract text.
filter_has_funderbooleanNotrueFilter for works with registered funding agency metadata.
filter_funder_idstringNo10.13039/100000001Filter by Crossref Funder Registry DOI (e.g. NSF or NIH).
filter_memberstringNo311Filter by Crossref publisher member ID.
sortstringNorelevanceSort field (relevance, published, is-referenced-by-count, updated, created).
orderstringNodescOrdering direction (desc or asc).
mailtostringNoreapxdev@proton.meEmail address sent in API headers for Crossref Polite Pool access.
max_resultsintegerYes50Maximum number of work records to return (1 to 10,000).

Worked Input Example

{
"query": "crispr",
"query_container_title": "The CRISPR Journal",
"filter_type": "journal-article",
"filter_has_license": true,
"sort": "published",
"order": "desc",
"mailto": "reapxdev@proton.me",
"max_results": 50
}

⬆️ Output

All extracted work metadata items are written directly to the run's default dataset.

Output Fields

FieldTypeDescriptionExample
paperIdstringSanitized DOI with colons replaced by hyphens for entity page addressing.10.1089-crispr.2018.29011.rba
doistringRaw canonical Digital Object Identifier.10.1089/crispr.2018.29011.rba
titlestringPrimary title of the paper, article, or chapter.Cultivating CRISPR
publicationYearintegerFour-digit publication year.2018
publicationDatestringFull ISO publication date or date string (YYYY-MM-DD or YYYY-MM).2018-04-19
typestringCrossref work type classification.journal-article
publisherstringPublishing house or issuing organization name.SAGE Publications
containerTitlestringTitle of journal, book series, or conference volume.The CRISPR Journal
volumestringJournal volume designation.1
issuestringJournal issue designation.2
pagestringPage range or article number.99-100
issnstringComma-separated list of print and electronic ISSNs.2573-1599, 2573-1602
isbnstringComma-separated list of ISBNs (for books/chapters).978-0-12-345678-9
authorsstringComma-separated author full names.Rodolphe Barrangou
authorCountintegerTotal number of listed authors.1
firstAuthorAffiliationstringInstitutional affiliation of the lead author.Editor-in-Chief, The CRISPR Journal
isReferencedByCountintegerTotal citations reported in Crossref index.15
referenceCountintegerTotal references in bibliography.0
isOpenAccessbooleanTrue if license or open access links are present.true
licenseUrlstringURL of reuse or text/data mining license.http://www.liebertpub.com/nv/resources-tools/
funderNamesstringComma-separated funding agency names.National Institutes of Health
funderIdsstringComma-separated funder registry DOIs.10.13039/100000002
urlstringCanonical HTTP URL for resolving the DOI.https://doi.org/10.1089/crispr.2018.29011.rba
pdfUrlstringDirect URL to full text PDF document if available.https://journals.sagepub.com/doi/pdf/10.1089/crispr.2018.29011.rba
abstractstringPlain-text work abstract (HTML tags stripped).This paper reviews recent developments in CRISPR gene editing...
subjectstringSubject categories or classifications.Genetics, Biotechnology
languagestringLanguage code.en

Worked Output Example

{
"paperId": "10.1089-crispr.2018.29011.rba",
"doi": "10.1089/crispr.2018.29011.rba",
"title": "Cultivating CRISPR",
"publicationYear": 2018,
"publicationDate": "2018-04-19",
"type": "journal-article",
"publisher": "SAGE Publications",
"containerTitle": "The CRISPR Journal",
"volume": "1",
"issue": "2",
"page": "99-100",
"issn": "2573-1599, 2573-1602",
"isbn": null,
"authors": "Rodolphe Barrangou",
"authorCount": 1,
"firstAuthorAffiliation": "Editor-in-Chief, The CRISPR Journal",
"isReferencedByCount": 15,
"referenceCount": 0,
"isOpenAccess": true,
"licenseUrl": "http://www.liebertpub.com/nv/resources-tools/text-and-data-mining-policy/121/",
"funderNames": null,
"funderIds": null,
"url": "https://doi.org/10.1089/crispr.2018.29011.rba",
"pdfUrl": "http://www.liebertpub.com/doi/pdf/10.1089/crispr.2018.29011.rba",
"abstract": null,
"subject": null,
"language": "en"
}

How it works

  1. Polite API Requests: Uses plain HTTP requests sent to Crossref REST endpoints with user-agent identification for routing through Crossref's high-speed Polite Pool.
  2. Deep Cursor Pagination: Automatically paginates through search results using Crossref's cursor mechanism to retrieve large datasets reliably without loss of state.
  3. Dual Identifier Generation: Emits both doi (the raw DOI string) and paperId (with colons replaced by hyphens). This ensures 100% entity page addressability across all datasets regardless of colons in DOIs.
  4. Progressive Pushing: Pushes items in small batches to the default dataset as soon as they are processed.
  5. Tiered Billing Safety: Charges strictly per returned item written to dataset. If the run budget cap (ACTOR_MAX_TOTAL_CHARGE_USD) is reached, execution stops cleanly without dropping completed records.

❓ FAQ

How are DOIs formatted in the output?

Crossref DOIs are emitted in two fields:

  • doi: The exact, raw DOI string as registered in Crossref (e.g. 10.1051/0004-6361:20010000).
  • paperId: The sanitized DOI with colons replaced by hyphens (e.g. 10.1051-0004-6361-20010000). This ensures valid identifier matching for entity pages.

How much does a run cost?

This actor uses Pay-Per-Event pricing. You are charged $0.002 per record returned (with automatic plan discounts down to $0.0008 at higher subscription tiers). Unsuccessful queries or empty results cost $0.00.

Why set the mailto field?

Providing an email address in mailto (default: reapxdev@proton.me) identifies your requests to Crossref's API servers. Crossref uses this to route traffic to their dedicated Polite Pool, providing significantly faster response times and higher rate limits.

Yes. When publishers provide full text PDF links in Crossref metadata, they are extracted into the pdfUrl field.


💬 Your feedback

We continuously improve our scrapers based on user feedback. If you discover a bug, request a new metadata field, or need custom extraction rules:


Disclaimer: Unofficial - not affiliated with Crossref. Collects public data only. reapx. Contact reapxdev@proton.me.

🧪 Example input

A real, runnable configuration — this is an actual input this Actor has run with.

{
"query": "climate change",
"sort": "relevance",
"max_results": 50,
"mailto": "reapxdev@proton.me"
}

📄 Sample output

One real row from a real run of this Actor, unedited.

{
"paperId": "10.1055/s-0036-1589185",
"doi": "10.1055/s-0036-1589185",
"title": "Synthesis of Exochomine",
"publicationYear": 2016,
"publicationDate": "2016-09-19",
"type": "journal-article",
"publisher": "Georg Thieme Verlag KG",
"containerTitle": "Synfacts",
"volume": "12",
"issue": "10",
"page": "1002-1002",
"issn": "1861-1958, 1861-194X",
"isbn": null,
"authors": null,
"authorCount": 0,
"firstAuthorAffiliation": null,
"isReferencedByCount": 0,
"referenceCount": 0,
"isOpenAccess": true,
"licenseUrl": null,
"funderNames": null,
"funderIds": null,
"url": "https://doi.org/10.1055/s-0036-1589185",
"pdfUrl": "http://www.thieme-connect.de/products/ejournals/pdf/10.1055/s-0036-1589185.pdf",
"abstract": null,
"subject": null,
"language": "en"
}

⚠️ Run outcomes and error handling

This Actor reports what happened in the run's status message, and it always keeps whatever it collected. These are the outcomes you can get and what each one means.

OutcomeWhat it means
SuccessRows were returned and you were charged record-returned at $0.002 per row.
No matchesThe source returned nothing for your filters. Nothing is charged. Widen the date window or drop a filter.
Partial - source refusedThe source rate-limited or refused some requests. The affected items are skipped and named in the log, and everything already collected is still pushed. A block never discards a run's work.
Rejected filterThe source itself rejected the filter combination. The run fails fast with the source's own reason and nothing is charged.

What is guaranteed either way

  • Every row is pushed as it is built, not buffered to the end of the run. Anything that buffers output loses everything to a timeout, a block or a migration; this does not.
  • A field absent from the source is absent from the row. Nothing is inferred, modelled or filled in to make a row look complete.