Openalex Tools#

Configuration File: openalex_tools.json Tool Type: Local Tools Count: 10

This page contains all tools defined in the openalex_tools.json configuration file.

Available Tools#

openalex_get_author (Type: OpenAlexRESTTool)#

Get a single OpenAlex author by Author ID (A…). You can pass either the short ID (e.g., “A50012…

openalex_get_author tool specification

Tool Information:

  • Name: openalex_get_author

  • Type: OpenAlexRESTTool

  • Description: Get a single OpenAlex author by Author ID (A…). You can pass either the short ID (e.g., “A5001226970”) or the full URL (e.g., “https://openalex.org/A5001226970”).

Parameters:

  • author_id (string) (required) OpenAlex Author ID (A…) or full OpenAlex URL.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_get_author",
    "arguments": {
        "author_id": "example_value"
    }
}
result = tu.run(query)

openalex_get_institution (Type: OpenAlexRESTTool)#

Get a single OpenAlex institution by Institution ID (I…). You can pass either the short ID (e.g…

openalex_get_institution tool specification

Tool Information:

  • Name: openalex_get_institution

  • Type: OpenAlexRESTTool

  • Description: Get a single OpenAlex institution by Institution ID (I…). You can pass either the short ID (e.g., “I136199984”) or the full URL (e.g., “https://openalex.org/I136199984”).

Parameters:

  • institution_id (string) (required) OpenAlex Institution ID (I…) or full OpenAlex URL.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_get_institution",
    "arguments": {
        "institution_id": "example_value"
    }
}
result = tu.run(query)

openalex_get_source (Type: OpenAlexRESTTool)#

Fetch the full OpenAlex source (journal) record by Source ID (S…) or by ISSN, returning journal…

openalex_get_source tool specification

Tool Information:

  • Name: openalex_get_source

  • Type: OpenAlexRESTTool

  • Description: Fetch the full OpenAlex source (journal) record by Source ID (S…) or by ISSN, returning journal-level bibliometric impact metrics: display name, ISSN-L and ISSNs, host organization (publisher), works_count, cited_by_count, is_oa / is_in_doaj open-access status, apc (article processing charges), and summary_stats with h_index, i10_index, and 2yr_mean_citedness (an impact-factor-like 2-year mean citedness). Resolve a journal name to its Source ID first using openalex_search_sources. You may also pass an ISSN directly as the source_id (OpenAlex accepts issn:0028-0836).

Parameters:

  • source_id (string) (required) OpenAlex Source ID (e.g. ‘S137773608’), a full OpenAlex URL, or an ISSN expression (e.g. ‘issn:0028-0836’).

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_get_source",
    "arguments": {
        "source_id": "example_value"
    }
}
result = tu.run(query)

openalex_get_work (Type: OpenAlexRESTTool)#

Get a single OpenAlex work (paper) by OpenAlex Work ID (W…). You can pass either the short ID (…

openalex_get_work tool specification

Tool Information:

  • Name: openalex_get_work

  • Type: OpenAlexRESTTool

  • Description: Get a single OpenAlex work (paper) by OpenAlex Work ID (W…). You can pass either the short ID (e.g., “W2626778328”) or the full URL (e.g., “https://openalex.org/W2626778328”).

Parameters:

  • openalex_id (string) (required) OpenAlex Work ID (W…) or full OpenAlex URL.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_get_work",
    "arguments": {
        "openalex_id": "example_value"
    }
}
result = tu.run(query)

openalex_get_work_by_doi (Type: OpenAlexRESTTool)#

Get a single OpenAlex work (paper) by DOI. Provide a DOI string like “10.65215/2q58a426” (you can…

openalex_get_work_by_doi tool specification

Tool Information:

  • Name: openalex_get_work_by_doi

  • Type: OpenAlexRESTTool

  • Description: Get a single OpenAlex work (paper) by DOI. Provide a DOI string like “10.65215/2q58a426” (you can also pass a DOI URL like “https://doi.org/10.65215/2q58a426”).

Parameters:

  • doi (string) (required) DOI identifier (preferred) or DOI URL.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_get_work_by_doi",
    "arguments": {
        "doi": "example_value"
    }
}
result = tu.run(query)

openalex_literature_search (Type: OpenAlexTool)#

Search for academic literature using OpenAlex. Supports optional full-text-index filtering (has_f…

openalex_literature_search tool specification

Tool Information:

  • Name: openalex_literature_search

  • Type: OpenAlexTool

  • Description: Search for academic literature using OpenAlex. Supports optional full-text-index filtering (has_fulltext + fulltext.search) when you need body-only term discovery, but note: OpenAlex full-text indexing is incomplete, and a work can be open-access elsewhere (e.g., PMC) while still having has_fulltext=false in OpenAlex. Returns paper metadata and (when available) OA links/content URLs.

Parameters:

  • search_keywords (string) (optional) Keywords to search for in paper titles/abstracts/etc. For full-text-index-only matching, also use require_has_fulltext/fulltext_terms.

  • query (string) (optional) Alias for search_keywords (recommended when you standardize on query across multiple paper-search tools).

  • max_results (integer) (optional) Maximum number of papers to retrieve (default: 10, maximum: 200).

  • limit (integer) (optional) Alias for max_results (OpenAlex max 200).

  • num_results (integer) (optional) Alias for max_results (OpenAlex max 200).

  • year_from (integer) (optional) Start year for publication date filter (e.g., 2020). Optional parameter to limit search to papers published from this year onwards.

  • start_year (integer) (optional) Alias for year_from.

  • year_to (integer) (optional) End year for publication date filter (e.g., 2023). Optional parameter to limit search to papers published up to this year.

  • end_year (integer) (optional) Alias for year_to.

  • open_access (boolean) (optional) Filter for open access papers only. Set to true for open access papers, false for non-open access, or omit for all papers.

  • require_has_fulltext (boolean) (optional) If true, filters to works where OpenAlex indicates a full-text index is available (has_fulltext:true).

  • fulltext_terms (array) (optional) Optional list of terms that must occur in OpenAlex full-text index (adds fulltext.search:<term> filters and implicitly enables require_has_fulltext).

Example Usage:

query = {
    "name": "openalex_literature_search",
    "arguments": {
    }
}
result = tu.run(query)

openalex_search_authors (Type: OpenAlexRESTTool)#

Search OpenAlex authors. Basic page mode exposes only the first 10,000 matches; for complete deep…

openalex_search_authors tool specification

Tool Information:

  • Name: openalex_search_authors

  • Type: OpenAlexRESTTool

  • Description: Search OpenAlex authors. Basic page mode exposes only the first 10,000 matches; for complete deep retrieval, start with cursor=’*’ and continue with metadata.next_cursor.

Parameters:

  • search (string) (required) Author name search query. Example: “Yann LeCun”.

  • per_page (integer) (optional) Results per page (OpenAlex max 200).

  • page (integer) (optional) Page number (1-indexed).

  • cursor (string) (optional) Official deep-pagination cursor. Start with ‘*’ and continue with metadata.next_cursor.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_search_authors",
    "arguments": {
        "search": "example_value"
    }
}
result = tu.run(query)

openalex_search_institutions (Type: OpenAlexRESTTool)#

Search OpenAlex institutions. Basic page mode exposes only the first 10,000 matches; for complete…

openalex_search_institutions tool specification

Tool Information:

  • Name: openalex_search_institutions

  • Type: OpenAlexRESTTool

  • Description: Search OpenAlex institutions. Basic page mode exposes only the first 10,000 matches; for complete deep retrieval, start with cursor=’*’ and continue with metadata.next_cursor.

Parameters:

  • search (string) (required) Institution name search query. Example: “Harvard University”.

  • per_page (integer) (optional) Results per page (OpenAlex max 200).

  • page (integer) (optional) Page number (1-indexed).

  • cursor (string) (optional) Official deep-pagination cursor. Start with ‘*’ and continue with metadata.next_cursor.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_search_institutions",
    "arguments": {
        "search": "example_value"
    }
}
result = tu.run(query)

openalex_search_sources (Type: OpenAlexRESTTool)#

Search OpenAlex sources (journals, conferences, repositories) by name or ISSN and return journal-…

openalex_search_sources tool specification

Tool Information:

  • Name: openalex_search_sources

  • Type: OpenAlexRESTTool

  • Description: Search OpenAlex sources (journals, conferences, repositories) by name or ISSN and return journal-level bibliometric metrics. Basic page mode exposes only the first 10,000 matches; for complete deep retrieval, start with cursor=’*’ and continue with metadata.next_cursor.

Parameters:

  • search (string) (required) Source/journal name or ISSN to search for. Examples: “nature”, “the lancet”, “0028-0836”.

  • per_page (integer) (optional) Results per page (OpenAlex max 200).

  • page (integer) (optional) Page number (1-indexed).

  • cursor (string) (optional) Official deep-pagination cursor. Start with ‘*’ and continue with metadata.next_cursor.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool.

Example Usage:

query = {
    "name": "openalex_search_sources",
    "arguments": {
        "search": "example_value"
    }
}
result = tu.run(query)

openalex_search_works (Type: OpenAlexRESTTool)#

Search OpenAlex works. Basic page mode exposes only the first 10,000 matches and reports that win…

openalex_search_works tool specification

Tool Information:

  • Name: openalex_search_works

  • Type: OpenAlexRESTTool

  • Description: Search OpenAlex works. Basic page mode exposes only the first 10,000 matches and reports that window in metadata. For complete deep retrieval, pass cursor=’*’ initially and continue with metadata.next_cursor. Full-text filters only match works indexed by OpenAlex and can miss full text available elsewhere.

Parameters:

  • search (string) (optional) Search query for works. Use filter + fulltext_terms/require_has_fulltext when you need full-text-index-only matching.

  • query (string) (optional) Alias for search (recommended when you standardize on query across multiple paper-search tools).

  • filter (string) (optional) OpenAlex filter string (comma-separated). Example: “from_publication_date:2020-01-01,is_oa:true”.

  • require_has_fulltext (boolean) (optional) If true, appends OpenAlex filter has_fulltext:true (keeps only works with full-text index available).

  • fulltext_terms (array) (optional) Optional list of terms to match in OpenAlex full-text index. Adds one or more fulltext.search:<term> filters and implicitly enables require_has_fulltext.

  • per_page (integer) (optional) Results per page (OpenAlex max 200).

  • limit (integer) (optional) Alias for per_page (OpenAlex max 200).

  • page (integer) (optional) Page number (1-indexed).

  • cursor (string) (optional) Official deep-pagination cursor. Start with ‘*’ and continue with metadata.next_cursor; when set, page is omitted.

  • sort (string) (optional) Sort order string, e.g. “cited_by_count:desc”.

  • mailto (string) (optional) Optional contact email for OpenAlex polite pool. If omitted, ToolUniverse uses a default.

Example Usage:

query = {
    "name": "openalex_search_works",
    "arguments": {
    }
}
result = tu.run(query)