ParseForge Scrapers

Crossref DOI Metadata Scraper

parseforge/crossref-scraper

OtherEducationAutomation

Scrapes Crossref publication metadata by search query, title, author, or specific DOI. Returns each work as a flat row with title, authors, container, publication date, and DOI.

Run this scraper See the API call
Total users
7
Monthly active
1
Total runs
251
Bookmarked
0
Rating
5.0 (1)
Last modified
9 days ago

Overview

ParseForge

Crossref DOI Metadata Scraper

Scrape Crossref DOI metadata for any publication, search query, or single DOI, up to a million works per run. Every record comes with its title, authors, container, publication date, and DOI. No API key. Export to CSV, JSON, Excel, or XML.

Crossref's official API is free but rate-limited and returns deeply nested JSON that is painful to flatten. This Actor queries the public REST API directly, applies your filters as it reads, and returns each matching work as one flat row. Search by title, author, free text, or a specific DOI, and collect up to a million records per run.

Who uses it What they scrape Crossref for
Academic researchers Building a literature review dataset for a specific topic
Librarians Enriching a catalog with complete DOI metadata
Data analysts Tracking publication output by author or institution
Journal editors Monitoring citations and metadata for their journal

What it does

This Actor collects Crossref publication metadata by search query, title, author, or specific DOI, and returns each work as a flat row.

  • ๐Ÿ”Ž Search by free text: query across titles, authors, container titles, and more.
  • ๐Ÿ“š Filter by title or author: narrow results to exact title or author name matches.
  • ๐ŸŽฏ Fetch a single DOI: retrieve complete metadata for one known DOI, overriding any query.
  • โš™๏ธ Crossref filter string: pass raw filter parameters like type, from-pub-date, or has-orcid.
  • ๐Ÿ“ง Polite pool email: provide a contact email to get faster, more reliable responses from Crossref.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Crossref data

๐Ÿ“– Build a literature review dataset.

A PhD student searches for 'attention is all you need' and collects 500 matching works with titles, authors, and publication dates to seed their bibliography.

๐Ÿ” Enrich a catalog with DOI metadata.

A librarian runs the Actor with a list of DOIs to fill missing title, author, and container fields in their institutional repository.

๐Ÿ“Š Track an author's publication output.

A research analyst queries by author name and filters by from-pub-date to compile a yearly publication list for a faculty review.

๐Ÿ“ˆ Monitor journal citations.

A journal editor uses the filter string 'type:journal-article,container-title:Nature' to collect recent articles and analyze citation patterns.

Why choose this scraper

What you get
No API key Uses Crossref's public REST API, no registration required
Flat output Nested JSON is flattened into one row per work
Up to 1M records Collect up to a million works per run
Polite pool Optional email puts you in Crossref's faster queue

How it compares

No other Store actor targets Crossref the same way, so the honest comparison is with the alternatives teams actually weigh.

Crossref DOI Metadata Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When Crossref changes Maintained for you You fix it You re-learn the page
Proxies, retries, anti-bot Built in Your problem Browser only
Output Fixed JSON schema, CSV/Excel export Whatever you build Copy-paste
Cost Pay per result Engineering time Analyst hours

Configure the run

Drive the Actor from a free text query, a title, an author name, or a specific DOI, and filters run as each work is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
  "maxItems": 10,
  "query": "attention is all you need"
}

A larger pull:

{
  "maxItems": 200,
  "query": "attention is all you need"
}

Pricing

Pay-per-result: $0.08 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $8.00
1,000 results $80.00
10,000 results $800.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Crossref DOI Metadata Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Crossref through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/crossref-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check your query for typos or overly restrictive filters. Try a broader search term or remove the filter string. Also ensure you are not using a specific DOI that does not exist.

Why is the run slow?

Crossref rate limits apply. Provide an email in the input to join the polite pool, which allows faster request rates. Reduce maxItems if you only need a sample.

Why are some fields empty in the output?

Not all Crossref records have every field. For example, some works may lack an abstract or ORCID. Empty fields are normal for incomplete metadata.

Why did the run stop before reaching maxItems?

Crossref may have no more results for your query. Try a different search term or remove filters to see if more records are available.

FAQ

Question Answer
Do I need a Crossref API key? No. This Actor uses Crossref's public REST API, which does not require an API key. Providing an email in the input puts your requests in the polite pool for faster responses.
How many records can I collect per run? You can set maxItems up to 1,000,000. The Actor will stop after collecting that many works or when Crossref has no more results for your query.
Can I fetch metadata for a single DOI? Yes. Enter the DOI in the 'Specific DOI' field and the Actor will return that one work, ignoring any other query parameters.
What is the filter string? It is a raw Crossref filter parameter, such as 'type:journal-article,from-pub-date:2024,has-orcid:true'. You can find the full syntax in the Crossref API documentation.
Does the Actor flatten nested metadata? Yes. Crossref returns deeply nested JSON, but this Actor flattens each work into a single row with fields like title, authors, container title, and publication date.
Can I search by author name? Yes. Use the 'Author name' field to match works by a specific author. You can combine it with other filters.
What export formats are supported? You can export the dataset to CSV, JSON, Excel, or XML from the Apify platform.
Is there a rate limit? Crossref has rate limits on its public API. Providing an email in the polite pool increases your allowed request rate.
Can I filter by publication date? Yes. Use the filter string with 'from-pub-date' or 'until-pub-date' parameters, or include them in your free text query.
Does this Actor work with any Crossref content type? Yes. It returns journal articles, conference papers, books, datasets, and other works indexed by Crossref.

Related actors

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Crossref. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
maxItems integer How many works to collect per run. 10
query string Free text query. Crossref searches across titles, authors, container titles, and more. attention is all you need
queryTitle string Match only within titles. not set
queryAuthor string Match by author name. not set
filter string Optional Crossref filter (e.g. 'type:journal-article,from-pub-date:2024,has-orcid:true'). See https://api.crossref.org. not set
doi string Fetch metadata for a single DOI (overrides query). not set
email string Providing an email puts your requests in Crossref's faster 'polite pool'. not set

Pricing

from $7.00 per 1,000 results

Charged forWhat it isPrice each
Actor Start Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). $0.05 to $0.08
result Single result in the default dataset. $0.007 to $0.0105

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~crossref-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

Rated 5.0 out of 5 across 1 review. Read them on Apify.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run Crossref DOI Metadata Scraper on Apify All scrapers