DEVELOPER TOOLSAI API MCP READY

Google Scholar

Scrape Google Scholar at scale. Search research papers, get citation formats (MLA, APA, Chicago, BibTeX), author profiles with h-index and i10-index, list an author's publications, view per-article citation history, & map co-author networks. Six modes in one for lit reviews, bibliometrics, & agents.

MEDIAN LAGon demand
PARAMETERS14
TOTAL USERS47
MONTHLY ACTIVE25
TOTAL RUNS1,107
RUNS SUCCEEDED99.9%
RATING5.0 (3)

Input parameters

PARAMETERTYPEREQDEFAULTDESCRIPTION
mode enum yes search Which Google Scholar operation to run.
q string no Free-text query for mode=search.
cites string no For mode=search only.
cluster string no For mode=search only.
result_id string no For mode=cite only.
author_id string no For mode=author_profile, author_articles, author_citation, and author_co_authors.
citation_id string no For mode=author_citation only.
hl enum no en Language for the user interface and result display.
lr string no For mode=search only.
as_ylo integer no For mode=search only.
as_yhi integer no For mode=search only.
scisbd enum no 0 For mode=search only.
as_sdt enum no 0 For mode=search only.
safe enum no For mode=search only.

Worked examples

Basic — the required input, with the schema's own example values
{
  "mode": "search"
}

Coverage

29
ui language — en es fr de it +24
6
mode — search cite author_profile author_articles author_citation +1

Tasks

Saved runs with the inputs already filled in — each one a standalone page and a working configuration example.

Request a task →

Code

curl

curl -X POST "https://api.apify.com/v2/acts/johnvc~google-scholar-api/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode": "search"}'

Python

from apify_client import ApifyClient

client = ApifyClient("APIFY_TOKEN")
run = client.actor("johnvc/google-scholar-api").call(
    run_input={'mode': 'search'}
)
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)