# OpenAlex Scholarly Papers, Citations & Research Scraper (`trusted_tech_spot/openalex-scholarly-citations-academic-scraper`) Actor

Extract academic papers, scientific literature, citation metrics, DOI links, author affiliations, and open-access PDFs from the 250M+ OpenAlex catalog.

- **URL**: https://apify.com/trusted_tech_spot/openalex-scholarly-citations-academic-scraper.md
- **Developed by:** [David Sandor](https://apify.com/trusted_tech_spot) (community)
- **Categories:** Education, Developer tools, AI
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-usage

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## OpenAlex Scholarly Papers, Citations & Research Scraper 🎓

[![Apify Actor](https://img.shields.io/badge/Apify-Actor-orange.svg?style=flat-square)](https://apify.com/trusted_tech_spot/openalex-scholarly-citations-academic-scraper)
[![Pay Per Event](https://img.shields.io/badge/Pricing-Pay%20Per%20Result%20\($0.002\)-green.svg?style=flat-square)](https://apify.com/trusted_tech_spot/openalex-scholarly-citations-academic-scraper)
[![Zero Maintenance](https://img.shields.io/badge/Maintenance-Zero%20Maintenance-blue.svg?style=flat-square)](https://apify.com/trusted_tech_spot/openalex-scholarly-citations-academic-scraper)
[![RAG Ready](https://img.shields.io/badge/AI%20%2F%20RAG-Token%20Chunking%20Included-purple.svg?style=flat-square)](https://apify.com/trusted_tech_spot/openalex-scholarly-citations-academic-scraper)
[![v3.0 Enriched](https://img.shields.io/badge/Data%20Enrichment-v3.0%20Enterprise%20\(20%2B%20Fields\)-success.svg?style=flat-square)](https://apify.com/trusted_tech_spot)
[![Catalog Size](https://img.shields.io/badge/Catalog-250M%2B%20Works%20%26%20Authors-informational.svg?style=flat-square)](https://openalex.org)

Extract scholarly research papers, scientific literature, citation metrics, DOI links, author affiliations, ORCIDs, reconstructed abstracts, and open-access PDFs from the **250M+ OpenAlex global catalog** without API key limits or browser overhead.

> ⚡ **Instant Scholarly Data Extraction Guarantee (No Setup Required)**:
>
> - 🟢 **Zero-Config**: Direct access to OpenAlex's comprehensive scientific index — no registration or API keys needed.
> - 🚀 **1-Click Free Test**: Just click the green **"Save & Start"** button with the pre-filled inputs to test live scholarly data extraction in < 2 seconds.
> - 📜 **Abstract Reconstruction**: Automatically reconstructs human-readable abstracts from OpenAlex's complex inverted index format.
> - 📊 **Instant Export**: Download verified publications, citations, and researcher metadata directly to **Excel (.xlsx)**, **CSV**, or **JSON**.
> - 🧠 **AI & RAG Ready**: Pre-computed OpenAI token counts and semantic vector chunks for instant LangChain, LlamaIndex, and Vector DB ingestion.

<div align="center">
  <a href="https://apify.com/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/input-schema">
    <img src="https://img.shields.io/badge/1️⃣_VIEW_INPUT_SCHEMA-CLICK_'INPUT'_TAB_ABOVE-blue?style=for-the-badge&logo=apify&logoColor=white" height="38" alt="View Input Tab" />
  </a>
  &nbsp;&nbsp;
  <a href="https://console.apify.com/actors/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/input">
    <img src="https://img.shields.io/badge/⚡_RUN_IN_CONSOLE-START_INSTANT_TEST-brightgreen?style=for-the-badge&logo=play&logoColor=white" height="38" alt="Run Actor Free" />
  </a>
  <p><strong>⚡ 1-Click Instant Run • 🎁 Free Starter Tier • 🚀 Results in &lt; 2s</strong></p>
  <p><strong>🌏 全球学术文献与论文引文采集 • 支持关键词 / 学者 / 年份筛选 • 一键导出 Excel / CSV / JSON</strong></p>
  <p><sub>💡 <strong>Tip / 提示</strong>: Click the <strong>"Input"</strong> tab at the top of this page to view pre-filled parameters and run immediately! (点击页面顶部的 <strong>Input</strong> 标签页即可查看已配置参数并一键运行)</sub></p>
</div>

<div align="center">
  <img src="https://img.shields.io/badge/Make.com-Ready-orange?style=flat-square&logo=make" alt="Make.com" />
  <img src="https://img.shields.io/badge/Zapier-Automated-orange?style=flat-square&logo=zapier" alt="Zapier" />
  <img src="https://img.shields.io/badge/n8n-Workflow_Ready-red?style=flat-square&logo=n8n" alt="n8n" />
  <img src="https://img.shields.io/badge/LangChain_%26_LlamaIndex-Vector_Ready-blue?style=flat-square" alt="LangChain" />
  <img src="https://img.shields.io/badge/Google_Sheets-1--Click_Sync-green?style=flat-square&logo=googlesheets" alt="Google Sheets" />
</div>

***

#### ⚡ 1-Click API Quick-Start (cURL / Python / Node.js)

Run programmatically via HTTP API without opening the browser console:

```bash
## 1-Click cURL Instant Run (Replace YOUR_APIFY_TOKEN)
curl -X POST "https://api.apify.com/v2/acts/trusted_tech_spot~openalex-scholarly-citations-academic-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "searchQuery": "large language models",
    "entityType": "works",
    "minYear": 2022,
    "maxResults": 10
  }'
```

***

#### ⚡ Ready-to-Run Input Preview (Zero Configuration Required)

| Setting | What You Provide | Default Value (Ready to Run) | Quick Link |
| :--- | :--- | :--- | :--- |
| **Search Query** | Research topic, keywords, or author name | `"artificial intelligence"` | [👉 Run Default Search](https://console.apify.com/actors/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/input) |
| **Entity Type** | Scholarly publications (`works`) or researchers (`authors`) | `"works"` | [👉 Select Entity](https://console.apify.com/actors/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/input) |
| **Minimum Publication Year** | Year filter boundary for recent literature | `2020` | [👉 Set Publication Year](https://console.apify.com/actors/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/input) |
| **Maximum Results** | Number of scholarly items to harvest | `20` (Sub-2s test) | [👉 Adjust Volume](https://console.apify.com/actors/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/input) |

***

### 🌟 Why Choose This Actor?

- 📜 **Automatic Abstract Reconstruction**: OpenAlex represents abstracts as word-coordinate inverted indices (`abstract_inverted_index`). This scraper automatically stitches tokens together into coherent, readable English text blocks ready for human review or LLM prompting.
- 🔗 **Direct DOI Resolver & Open-Access PDF Links**: Provides clean direct resolver URLs (`https://doi.org/...`) and automatically detects open-access full-text PDFs (arXiv, PubMed Central, institutional repositories).
- 🏷️ **Citation Impact Classification**: Computes derived citation impact tiers (`Monumental Landmark >500`, `Highly Cited >100`, `Established Influence 20-99`, `Emerging Impact 5-19`) for rapid bibliometric triage.
- 🏛️ **Deep Author Affiliations & ORCIDs**: Captures complete authorship rosters, verified ORCID identifiers, institutional affiliations (with ROR identifiers and ISO country codes), and corresponding author flags.
- 🌳 **Multi-Tier Research Taxonomy**: Extracts OpenAlex's 4-level academic hierarchy (`domain`, `field`, `subfield`, `primary topic`) for deep topic modeling and domain clustering.
- 💰 **Predictable Pay-Per-Event Pricing**: Pay only **$0.002 per run** with zero hidden compute charges, zero proxy fees, and zero idle container waste.
- 🛡️ **Zero-Crash Resilient Architecture**: Includes a verified offline academic fallback index so that your production pipelines, automated tests, and scheduled agents never fail even during upstream network hiccups.

***

### 🎯 Common High-Impact Use Cases

- 🤖 **AI Literature Review & RAG Pipelines**: Feed verified academic literature and synthesized abstracts directly into vector databases (Pinecone, ChromaDB, Qdrant) for automated state-of-the-art research assistants.
- 📊 **Bibliometric & Citation Analysis**: Track citation velocity, identify breakthrough papers in emerging subfields, and map foundational papers across computer science, biomedicine, physics, and social sciences.
- 🧪 **Biotech & Pharmaceutical Intelligence**: Monitor clinical trial publications, CRISPR discoveries, drug target validations, and key opinion leader (KOL) publication records.
- 🎓 **Academic Talent & Faculty Sourcing**: Analyze researcher portfolios, H-index metrics, i10-indices, institutional affiliations, and historical citation milestones.
- 📈 **Patent Prior-Art Discovery**: Search scientific preprints and conference proceedings to uncover prior art before filing patent applications.

***

### ✨ Enterprise v3.0 Data Enrichment (Included Free)

Every extracted scholarly record is automatically normalized and enriched with **20+ derived high-value fields** at **zero additional cost**:

| Enrichment Capability | What It Delivers | How It Helps Your Research |
|:---|:---|:---|
| 🛡️ **Data Quality Score (0–100%)** | `_dataQualityScore: 98` | Quantifies record completeness across DOI, abstract, citations, and authors. |
| 🔑 **Deduplication Fingerprint** | `_deduplicationFingerprint: "sha256:..."` | Cryptographic SHA-256 hash for 100% idempotent database upserts. |
| 🏆 **Citation Impact Tier** | `citationImpactTier: "Monumental Landmark (>500 citations)"` | Instant heuristic filter to separate landmark papers from recent preprints. |
| 🔗 **Canonical DOI Resolver** | `directDoiResolverUrl: "https://doi.org/10.1145/..."` | Direct clickable permalink resolving through standard Crossref / DOI foundation. |
| 📖 **Reconstructed Abstract** | `abstract: "The dominant sequence transduction models..."` | Converts cryptic inverted indices into clean, continuous reading text. |
| 🌐 **Author ORCID & Affiliation Graph** | Complete author lists with institutional RORs | Maps scientific collaboration networks and researcher affiliations. |
| 🏷️ **Field & Subfield Taxonomy** | `academicFieldTaxonomy: { domain, field, subfield, primaryTopic }` | Categorizes research across standard UNESCO / OECD scientific disciplines. |
| 🧠 **AI Vector & RAG Chunking** | `_rag: { estimatedTokens, chunksCount, chunks }` | Pre-chunked into semantic chunks ready for LangChain, LlamaIndex & Vector DBs. |
| ⚡ **3-Tier Configurable Depth** | `Enriched` (Default), `Standard`, `Basic` | Choose full enterprise enrichment, clean standard fields, or ultra-fast raw extract. |

***

### 📥 Input Parameters

| Parameter | Type | Required | Default / Prefill | Description |
|:---|:---|:---:|:---:|:---|
| **Academic Search Query** (`searchQuery`) | `string` | No | `"artificial intelligence"` | Topic, keyword, title, or author name to search across the OpenAlex catalog |
| **Target Entity Type** (`entityType`) | `string` | No | `"works"` | Choose whether to extract scholarly publications (`works`) or researcher profiles (`authors`) |
| **Minimum Publication Year** (`minYear`) | `integer` | No | `2020` | Filter scholarly works published from this year onwards |
| **Maximum Results Count** (`maxResults`) | `integer` | No | `20` | Number of scholarly records to extract (1 to 100) |
| **Include Keywords (Filter)** (`includeKeywords`) | `string` | No | `""` | Filter results to only include items containing these comma-separated keywords |
| **Exclude Keywords (Filter)** (`excludeKeywords`) | `string` | No | `""` | Filter out results containing these comma-separated keywords |
| **Enable AI / RAG Token Chunking** (`enableRagEnrichment`) | `boolean` | No | `true` | Compute OpenAI token counts and generate semantic vector chunks for RAG pipelines |
| **Data Enrichment Tier** (`enrichmentMode`) | `string` | No | `"Enriched"` | Enrichment depth: `Enriched` (20+ fields), `Standard` (core clean), `Basic` (raw) |

***

### 📤 Sample Output Data

#### Scholarly Work (Paper Record)

```json
{
  "query": "artificial intelligence",
  "entityType": "works",
  "totalResults": 20,
  "minYear": 2020,
  "works": [
    {
      "id": "https://openalex.org/W3028248512",
      "openAlexId": "W3028248512",
      "doi": "https://doi.org/10.48550/arxiv.2005.14165",
      "directDoiResolverUrl": "https://doi.org/10.48550/arxiv.2005.14165",
      "title": "Language Models are Few-Shot Learners",
      "publicationYear": 2020,
      "publicationDate": "2020-05-28",
      "citedByCount": 38200,
      "citationImpactTier": "Monumental Landmark (>500 citations)",
      "academicFieldTaxonomy": {
        "primaryTopic": "Large Language Models & Few-Shot Learning",
        "subfield": "Artificial Intelligence",
        "field": "Computer Science",
        "domain": "Physical Sciences",
        "topicsList": [
          "Generative Pre-trained Transformers",
          "Prompt Engineering",
          "In-Context Learning",
          "GPT-3"
        ]
      },
      "authors": [
        {
          "name": "Tom B. Brown",
          "orcid": null,
          "openAlexAuthorId": "https://openalex.org/A5043829101",
          "institutions": [
            {
              "name": "OpenAI",
              "countryCode": "US",
              "ror": "https://ror.org/033eqas34"
            }
          ],
          "isCorresponding": true
        }
      ],
      "venue": {
        "name": "Advances in Neural Information Processing Systems (NeurIPS 2020)",
        "type": "conference",
        "issn": "1049-5258",
        "hostOrganization": "Neural Information Processing Systems Foundation",
        "landingPageUrl": "https://proceedings.neurips.cc/paper/2020/hash/1457c0d6bfcb4967418bfb8ac142f64a-Abstract.html"
      },
      "openAccess": {
        "isOpenAccess": true,
        "status": "green",
        "pdfUrl": "https://arxiv.org/pdf/2005.14165.pdf",
        "license": "cc-by"
      },
      "abstract": "Recent work has demonstrated substantial gains on many NLP tasks by pre-training on a large corpus of text followed by fine-tuning on a specific task. We show that scaling up language models greatly improves task-agnostic, few-shot performance, sometimes even reaching competitiveness with prior state-of-the-art fine-tuning approaches.",
      "fwci": 62.4,
      "type": "article",
      "referencedWorksCount": 76,
      "language": "en",
      "_dataQualityScore": 100,
      "_deduplicationFingerprint": "sha256:7f9b8c2d...",
      "_extractedAt": "2026-10-30T10:20:00.000Z"
    }
  ],
  "_ragMetadata": {
    "estimatedTokens": 1420,
    "wordsCount": 985,
    "chunksCount": 5,
    "chunks": ["..."],
    "ingestionReady": true
  }
}
```

***

### 💻 Developer API & AI Framework Integration

#### Node.js (`apify-client`)

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({
    token: 'YOUR_APIFY_TOKEN',
});

// Run actor with targeted parameters
const run = await client.actor('trusted_tech_spot/openalex-scholarly-citations-academic-scraper').call({
    searchQuery: 'quantum error correction',
    entityType: 'works',
    minYear: 2022,
    maxResults: 15
});

// Fetch structured items from the dataset
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Extracted ${items[0]?.works?.length || 0} research publications:`, items);
```

#### Python (`apify-client`)

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

## Run actor
run = client.actor("trusted_tech_spot/openalex-scholarly-citations-academic-scraper").call(
    run_input={
        "searchQuery": "CRISPR gene editing",
        "entityType": "works",
        "minYear": 2021,
        "maxResults": 20
    }
)

## Fetch dataset items
items = client.dataset(run["defaultDatasetId"]).list_items().items
for work in items[0].get("works", []):
    print(f"[{work['publicationYear']}] {work['title']} ({work['citedByCount']} citations)")
    print(f"DOI: {work['directDoiResolverUrl']} | PDF: {work['openAccess']['pdfUrl']}")
```

#### LangChain Vector Ingestion (AI & RAG)

```python
from apify_client import ApifyClient
from langchain_community.vectorstores import Chroma
from langchain_openai import OpenAIEmbeddings
from langchain_core.documents import Document

## 1. Fetch pre-chunked academic literature from Apify
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("trusted_tech_spot/openalex-scholarly-citations-academic-scraper").call(
    run_input={"searchQuery": "transformer architectures", "maxResults": 25}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items

## 2. Ingest pre-chunked literature chunks into LangChain
docs = []
for result in items:
    for chunk in result.get("_ragMetadata", {}).get("chunks", []):
        docs.append(Document(page_content=chunk, metadata={"source": "openalex-scholarly-scraper"}))

## 3. Build Vector Store
vector_store = Chroma.from_documents(docs, OpenAIEmbeddings())
print(f"Successfully indexed {len(docs)} academic literature chunks into ChromaDB!")
```

#### LlamaIndex Knowledge Ingestion

```python
from apify_client import ApifyClient
from llama_index.core import VectorStoreIndex, Document

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("trusted_tech_spot/openalex-scholarly-citations-academic-scraper").call(
    run_input={"searchQuery": "multimodal vision models", "maxResults": 20}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items

## Extract reconstructed abstracts as knowledge documents
documents = [
    Document(text=f"Title: {w['title']}\nAbstract: {w['abstract']}\nYear: {w['publicationYear']}", extra_info={"doi": w['doi']})
    for w in items[0].get("works", []) if w.get("abstract")
]
index = VectorStoreIndex.from_documents(documents)
query_engine = index.as_query_engine()
response = query_engine.query("What are the key architectural innovations in recent multimodal vision models?")
print(response)
```

#### n8n / Make.com Automated Workflow

```
[Schedule Trigger (Weekly)] 
       ⬇
[Apify Actor: OpenAlex Scraper] 
  Query: "autonomous AI agents" | minYear: 2025
       ⬇
[Filter: citedByCount >= 10 OR isOpenAccess == true]
       ⬇
[Send Email / Slack Digest / Push to Notion Research DB]
```

***

### 🔗 Related Automations (Scientific, Financial & Intelligence Fleet)

Explore other high-speed data tools from the **trusted_tech_spot** fleet:

- [**OpenFDA Drug Approvals, Recalls & Safety Scraper** (`openfda-drug-approvals-recalls-safety-scraper`)](https://apify.com/trusted_tech_spot/openfda-drug-approvals-recalls-safety-scraper) — Extract FDA drug labels, recalls, adverse events, and approval metrics.
- [**SEC EDGAR Company Filings & Financials Scraper** (`sec-edgar-company-filings-financials-scraper`)](https://apify.com/trusted_tech_spot/sec-edgar-company-filings-financials-scraper) — Extract 10-K, 10-Q, 8-K filings and financial reports from the SEC EDGAR system.
- [**Hacker News Scraper** (`hacker-news-scraper`)](https://apify.com/trusted_tech_spot/hacker-news-scraper) — Extract trending tech stories, Ask HN, Show HN, and developer sentiment.
- [**Google News RSS Scraper** (`google-news-rss-scraper`)](https://apify.com/trusted_tech_spot/google-news-rss-scraper) — Real-time multi-topic news feed aggregator with keyword filtering.
- [**GitHub Repo Pulse Analyzer** (`github-repo-pulse-analyzer`)](https://apify.com/trusted_tech_spot/github-repo-pulse-analyzer) — Track GitHub repository stars, commit velocity, contributors, and open PRs.

***

<div align="center">
  <h3>🚀 Ready to extract scholarly research? Test this Actor in under 5 seconds!</h3>
  <a href="https://console.apify.com/actors/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/input">
    <img src="https://img.shields.io/badge/⚡_CLICK_HERE_TO_RUN_THIS_ACTOR_NOW-START_FREE-brightgreen?style=for-the-badge&logo=play&logoColor=white" height="42" alt="Start Run Now" />
  </a>
  <p><strong>🎁 Free Starter Allowance • 📊 1-Click Export to Excel, CSV & JSON</strong></p>
  <p><sub>🌏 免代理 / 免配置 / 默认学术搜索词已填好，直接点击上方按钮立即启动测试运行</sub></p>
</div>

***

### 💬 Technical Support & Custom Demands

Need custom academic taxonomy extraction, batch DOI resolution, high-volume dedicated scraping, or specialized institution mapping?

- 🐛 **Open an Issue**: Open a ticket directly on the [Actor Issues Tab](https://console.apify.com/actors/trusted_tech_spot/openalex-scholarly-citations-academic-scraper/issues) for 24-hour engineer response.
- ✉️ **Direct Email Support**: Reach out to **contact@trustedtechspot.com** for custom data pipelines, enterprise feeds, or custom SLA requirements.
- 💡 **Feature Requests**: Request new endpoints, journal ISSN filters, or citation graph mappings anytime.

***

### 🔒 Privacy & Compliance

- **Public Scientific Open Data**: Strictly accesses publicly indexed academic metadata under CC0 and OpenAlex open licensing terms.
- **No Credentials or Passwords Required**: Executes safely without user logins, authentication cookies, or private credentials.
- **Enterprise Grade Sanitization**: Automatically scrubs any tracking parameters before exporting data.

***

#### 🏷️ Search & Discovery Keywords

`openalex scraper` • `academic paper scraper` • `scholarly citations` • `scientific literature extractor` • `doi resolver` • `research paper api` • `arxiv pdf scraper` • `author orcid lookup` • `rag literature review` • `apify actor`

# Actor input Schema

## `searchQuery` (type: `string`):

Search academic papers, scientific literature, keywords, topics, or authors (e.g. 'artificial intelligence', 'large language models', 'CRISPR-Cas9')

## `entityType` (type: `string`):

Choose whether to extract scholarly works (papers, articles, preprints) or author researcher profiles

## `minYear` (type: `integer`):

Filter scholarly works published from this year onwards (e.g. 2020)

## `maxResults` (type: `integer`):

Maximum number of scholarly records to extract (1-100)

## `includeKeywords` (type: `string`):

Filter results to only include items containing these comma-separated keywords

## `excludeKeywords` (type: `string`):

Filter out results containing these comma-separated keywords

## `enableRagEnrichment` (type: `boolean`):

Automatically compute OpenAI token counts and generate semantic vector chunks for RAG pipelines

## `enrichmentMode` (type: `string`):

Choose enrichment depth: 'Enriched' adds 20+ derived fields (quality score, sentiment, citation tiers, taxonomy, deduplication hashes), 'Standard' includes core clean fields, 'Basic' is raw extract.

## Actor input object example

```json
{
  "searchQuery": "artificial intelligence",
  "entityType": "works",
  "minYear": 2020,
  "maxResults": 20,
  "includeKeywords": "",
  "excludeKeywords": "",
  "enableRagEnrichment": true,
  "enrichmentMode": "Enriched"
}
```

# Actor output Schema

## `dataset` (type: `string`):

Structured scholarly works and academic citation records from OpenAlex catalog

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchQuery": "artificial intelligence",
    "entityType": "works",
    "minYear": 2020,
    "maxResults": 20,
    "includeKeywords": "",
    "excludeKeywords": "",
    "enableRagEnrichment": true,
    "enrichmentMode": "Enriched"
};

// Run the Actor and wait for it to finish
const run = await client.actor("trusted_tech_spot/openalex-scholarly-citations-academic-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchQuery": "artificial intelligence",
    "entityType": "works",
    "minYear": 2020,
    "maxResults": 20,
    "includeKeywords": "",
    "excludeKeywords": "",
    "enableRagEnrichment": True,
    "enrichmentMode": "Enriched",
}

# Run the Actor and wait for it to finish
run = client.actor("trusted_tech_spot/openalex-scholarly-citations-academic-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQuery": "artificial intelligence",
  "entityType": "works",
  "minYear": 2020,
  "maxResults": 20,
  "includeKeywords": "",
  "excludeKeywords": "",
  "enableRagEnrichment": true,
  "enrichmentMode": "Enriched"
}' |
apify call trusted_tech_spot/openalex-scholarly-citations-academic-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,trusted_tech_spot/openalex-scholarly-citations-academic-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/dWaVhdu58fJjyvWtF/builds/jDeJRXEWnEI6dS5hC/openapi.json
