search_all
Search academic literature across Scopus or OpenAlex and automatically page through results to retrieve up to a specified maximum in a single call.
Instructions
Search Scopus (or OpenAlex with source='openalex') and page through results automatically, returning up to max_results entries in one call. Scopus pages hold SCOPUS_PAGE_SIZE records (default 25) and switch to cursor paging beyond 5,000; OpenAlex pages hold 200. Results over 50 records are written to disk as JSON and CSV. Large max_results values consume significant quota — use conservatively.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort order (e.g., 'coverDate', 'relevancy', 'citedby'). Defaults to 'coverDate' for Scopus, 'relevance' for OpenAlex. | |
| query | Yes | Search query. Scopus: Scopus syntax (e.g., 'TITLE(AI) AND PUBYEAR > 2020'). OpenAlex: plain words matched against title and abstract; quote phrases (e.g., '"organizing vision"'). | |
| scope | No | Restrict to journals, by ISSN: a list of ISSNs, or a basket name ('basket_of_eight' / 'ais8': the AIS Senior Scholars' Basket of Eight). ISSNs are used rather than journal names, which Scopus spells inconsistently. | |
| inline | No | What comes back in the reply when results go to files (over 50 records). 'sample' (default): the first 10. 'compact': every record as one JSON line of key fields (IDs, DOI, year, first author, title, venue, ISSN, citations): use it when the caller cannot read the server's files, e.g. from a cloud session. 'full': every record in full (large). | sample |
| source | No | Data source. 'scopus' (default) needs subscriber entitlement for search, citations and references. 'openalex' needs none: IDs may be DOIs, OpenAlex work IDs (W...), or Scopus IDs (resolved to a DOI via Scopus metadata), and results carry OpenAlex IDs. Never mix sources within one analysis. | scopus |
| max_results | No | Maximum total results to fetch across all pages (default 200). Large values consume quota. |