openalex-database

Query and analyze scholarly literature using the OpenAlex database. This skill should be used when searching for academic papers, analyzing research trends, finding works by authors or institutions, tracking citations, discovering open access publications, or conducting bibliometric analysis across

By davila7 · 425 installs

npx skills add davila7/claude-code-templates --skill openalex-database

Source repository · Upstream listing

OpenAlex Database Overview OpenAlex is a comprehensive open catalog of 240M+ scholarly works, authors, institutions, topics, sources, publishers, and funders. This skill provides tools and workflows for querying the OpenAlex API to search literature, analyze research output, track citations, and conduct bibliometric studies. Quick Start Basic Setup Always initialize the client with an email address to access the polite pool (10x rate limit boost): Installation Requirements Install required package using uv: No API key required OpenAlex is completely open. Core Capabilities 1. Search for Papers Use for : Finding papers by title, abstract, or topic 2. Find Works by Author Use for : Getting all publications by a specific researcher Use the two step pattern (entity name → ID → works): Manual two step approach : 3. Find Works from Institution Use for : Analyzing research output from universities or organizations 4. Highly Cited Papers Use for : Finding influential papers in a field 5. Open Access Papers Use for : Finding freely available research 6. Publication Trends Analysis Use for : Tracking research output over time 7. Research Output Analysis Use for : Comprehensive analysis of author or institution research 8. Batch Lookups Use for : Getting information for multiple DOIs, ORCIDs, or IDs efficiently 9. Random Sampling Use for : Getting representative samples for analysis 10. Citation Analysis Use for : Finding papers that cite a specific work 11. Topic and Subject Analysis Use for : Understanding research focus areas 12. Large Scale Data Extraction Use for : Downloading large datasets for analysis Critical Best Practices Always Use Email for Polite Pool Add email to get 10x rate limit (1 req/sec → 10 req/sec): Use Two Step Pattern for Entity Lookups Never filter by entity names directly always get ID first: Use Maximum Page Size Always use per page=200 for efficient data retrieval: Batch Multiple IDs Use batch lookup() for multiple IDs instead of individual requests: Use Sample Parameter for Random Data Use sample works() with seed for reproducible random sampling: Select Only Needed Fields Reduce response size by selecting specific fields: Common Filter Patterns Date Ranges Multiple Filters (AND) Multiple Values (OR) Collaboration (AND within attribute) Negation Entity Types OpenAlex provides these entity types: works Scholarly documents (articles, books, datasets) authors Researchers with disambiguated identities institutions Universities and research organizations sources Journals, repositories, conferences topics Subject classifications publishers Publishing organizations funders Funding agencies Access any entity type using consistent patterns: External IDs Use external identifiers directly: Reference Documentation Detailed API Reference See references/api guide.md for: Complete filter syntax All available endpoints Response structures Error handling Performance optimization Rate limiting details Common Query Examples See references/common queries.md for: Complete working examples Real world use cases Complex query patterns Data export workflows Multi step analysis procedures Scripts openalex client.py Main API client with: Automatic rate limiting Exponential backoff retry logic Pagination support Batch operations Error handling Use for direct API access with full control. query helpers.py High level helper functions for common operations: find author works() Get papers by author find institution works() Get papers from institution find highly cited recent papers() Get influential papers get open access papers() Find OA publications get publication trends() Analyze trends over time analyze research output() Comprehensive analysis Use for common research queries with simplified interfaces. Troubleshooting Rate Limiting If encountering 403 errors: 1. Ensure email is added to requests 2. Verify not exceeding 10 req/sec 3. Client automatically implements exponential backoff Empty Results If searches return no results: 1. Check filter syntax (see references/api guide.md ) 2. Use two step pattern for entity lookups (don't filter by names) 3. Verify entity IDs are correct format Timeout Errors For large queries: 1. Use pagination with per page=200 2. Use select= to limit returned fields 3. Break into smaller queries if needed Rate Limits Default : 1 request/second, 100k requests/day Polite pool (with email) : 10 requests/second, 100k requests/day Always use polite pool for production workflows by providing email to client. Notes No authentication required All data is open and free Rate limits apply globally, not per IP Use LitLLM with OpenRouter if LLM based analysis is needed (don't use Perplexity API directly) Client handles pagination, retries, and rate limiting automatically