Loading...
Loading...
Query the OpenAlex scholarly database for research papers, authors, institutions, topics, sources, publishers, funders, geo-locations, and keywords. Use when searching academic papers, resolving DOIs, downloading open-access PDFs, finding an author's publications, aggregating bibliometric data (citation counts, h-index, impact factor), exploring the research taxonomies, or performing DOI lookups.
npx skill4agent add google-deepmind/science-skills literature-search-openalexuvuvuv.env.envOPENALEX_API_KEY.envENV_FILE.envprintf "Enter OpenAlex API key (typing hidden): " && read -s key && echo && echo "OPENALEX_API_KEY=$key" >> "ENV_FILE" && echo "Saved."dotenv.envcatgrepechoprintenvos.environ.getresolve--filtercurlurllibresolvegetOPENALEX_API_KEY.env--select--per-page 5–10filter> results.jsonjq| Operation | Cost |
|---|---|
Singleton | Free |
| $0.0001 |
| $0.001 |
| $0.01 |
uv run scripts/openalex_cli.py [--api-key KEY] <command> [flags]worksauthorssourcesinstitutionstopicsdomainsfieldssubfieldssdgscountriescontinentslanguageskeywordspublishersfunderswork-typessource-typesinstitution-typeslicenses<entity> <query>iddisplay_namehint--per-page N<entity> <id>W2741809807--select<entity>--search <query>--filter--filter <expr>,|--sort <field:dir>cited_by_count:desc--select <fields>--group-by <field>--per-page <N>--page <N>--sample <N>--seed <N><work-id> <output-path>pdf_urlresolve--searchresolvedisplay_namehintreferences/# Author's works (resolve → filter)
uv run scripts/openalex_cli.py resolve authors "Geoffrey Hinton"
uv run scripts/openalex_cli.py filter works \
--filter "authorships.author.id:A5108093963" \
--sort "cited_by_count:desc" --per-page 10 > papers.json
cat papers.json | jq '[.results[] | {id, title: .display_name, year: .publication_year, citations: .cited_by_count}]'
# DOI lookup
uv run scripts/openalex_cli.py get works "https://doi.org/10.1038/s41586-021-03819-2"
# Bulk DOI lookup (up to 100)
uv run scripts/openalex_cli.py filter works \
--filter "doi:10.1234/a|10.1234/b|10.1234/c" --per-page 100 > results.json
# Institutional impact by year
uv run scripts/openalex_cli.py resolve institutions "MIT"
uv run scripts/openalex_cli.py filter works \
--filter "authorships.institutions.id:I63966007" \
--group-by "publication_year" > mit_by_year.json
# Random sample
uv run scripts/openalex_cli.py filter works \
--filter "publication_year:2023,is_oa:true" \
--sample 100 --seed 42 > results.json| Code | Meaning | Action |
|---|---|---|
| 401 | Unauthorized | Help user add API key to |
| 403 | Plan upgrade needed | Inform user; see https://openalex.org/pricing |
| 404 | Not found | Verify ID; try |
| 429 | Rate limited | Wait and retry; suggest adding API key to |
from_updated_dateto_updated_date