Create a new PubMed client with default configuration
Check if a PubMed article has full-text available in PMC
PubMed ID
PMC ID if available, null otherwise
Download a PMC article's Open Access files to a directory
Downloads each of the article's files individually from the PMC OA Cloud (AWS S3) service for the given PMC ID, returning the list of downloaded file paths.
PMC ID (e.g., "PMC7906746")
Directory to download files into
Array of downloaded file paths
Upload a list of PMIDs to the NCBI History server using EPost
Stores UIDs on the server and returns WebEnv/query_key identifiers that can be used with subsequent API calls.
Array of PubMed IDs as strings
EPostResult containing webenv and query_key
Download a Europe PMC record's supplementary-files ZIP archive
Europe PMC returns supplementary materials as a single ZIP; unpacking is left to the caller.
Record id, bare or fully qualified
Full path of the ZIP file to write
Optionalsource: string | null
Source database (MED, PMC, PPR, AGR, CBA, PAT)
The written path
Fetch and parse the full text of a Europe PMC record
Parsing into an article requires a PMC id, so this supports PMC-sourced
records only; use europePmcFetchFullTextXml for other sources.
Record id, bare or fully qualified
Optionalsource: string | null
Source database (MED, PMC, PPR, AGR, CBA, PAT)
Structured full-text article
Fetch the raw JATS XML full text of a Europe PMC record
Record id, bare or fully qualified
Optionalsource: string | null
Source database (MED, PMC, PPR, AGR, CBA, PAT)
JATS XML
List the articles citing a Europe PMC record
Broader coverage than getCitations, which is PubMed-only: includes
preprints and other non-PubMed sources.
Record id, bare or fully qualified
Optionalsource: string | null
Source database (MED, PMC, PPR, AGR, CBA, PAT)
Array of citing articles
List cross-references from a Europe PMC record to external databases
Record id, bare or fully qualified
Optionalsource: string | null
Source database (MED, PMC, PPR, AGR, CBA, PAT)
Array of per-database cross-reference groups
List the works cited by a Europe PMC record
Record id, bare or fully qualified
Optionalsource: string | null
Source database (MED, PMC, PPR, AGR, CBA, PAT)
Array of cited works
Search Europe PMC across every source it indexes
Europe PMC query (e.g., "TITLE:CRISPR AND SRC:PPR")
Optionallimit: number | null
Maximum number of records to return (default: 10)
OptionalresultType: string | null
"idlist", "lite" (default) or "core"
Optionalsort: string | null
Europe PMC sort expression (e.g., "CITED desc")
Array of Europe PMC records
Fetch a single page of Europe PMC search results
Pass the returned nextCursorMark back as cursorMark to page through
a result set; Europe PMC signals the end by returning the same cursor.
Europe PMC query
OptionalresultType: string | null
"idlist", "lite" (default) or "core"
OptionalpageSize: number | null
Records per page, 1-1000 (default: 25)
OptionalcursorMark: string | null
Cursor for the page to fetch; "*" (default) is the first page
Optionalsort: string | null
Europe PMC sort expression
One page of records, with the total hit count and next cursor
Execute a search query and return articles
SearchQuery instance
Array of article metadata
Export articles as BibTeX
Fetches the given PMIDs and formats them as a BibTeX bibliography.
Array of PubMed IDs as strings
BibTeX string
Export articles as CSL-JSON
Array of PubMed IDs as strings
CSL-JSON string (array of items)
Export articles in MEDLINE/NBIB format
Array of PubMed IDs as strings
NBIB string
Export articles in RIS format
Array of PubMed IDs as strings
RIS string
Extract figures with their captions from a PMC article
Downloads the Open Access package, extracts figure image files, and associates them with caption metadata from the article XML.
PMC ID (e.g., "PMC7906746")
Directory to extract figure files into
Array of extracted figures with file metadata
Fetch all articles for a list of PMIDs using EPost and the History server
Uploads the PMID list via EPost (HTTP POST), then fetches articles in paginated batches. Recommended for large PMID lists (hundreds or thousands).
Array of PubMed IDs as strings
Array of article metadata
Fetch a single article by PMID
PubMed ID
Article metadata
Fetch multiple articles by PMIDs in a single batch request
This is significantly more efficient than fetching articles one by one. For large numbers of PMIDs, requests are automatically batched (200 per request).
Array of PubMed IDs
Array of article metadata
Fetch full-text article from PMC
PMC ID (e.g., "PMC7906746")
Full-text article data
Fetch PMC article and convert to Markdown
PMC ID (e.g., "PMC7906746")
Optionaloptions: MarkdownOptions | null
Markdown conversion options
Markdown string
Fetch lightweight article summaries by PMIDs using the ESummary API
Returns basic metadata (title, authors, journal, dates, DOI) without abstracts, MeSH terms, or chemical lists. Faster than fetchArticles().
Array of PubMed IDs
Array of article summaries
Get citing articles for the given PMIDs using the ELink API
Array of PubMed IDs
Citing articles
Get detailed information about a specific NCBI database using the EInfo API
Database name (e.g., "pubmed", "pmc")
Database information
List all available NCBI databases using the EInfo API
Array of database names
Get PMC links for the given PMIDs (check full-text availability)
Array of PubMed IDs
PMC links
Get related articles for the given PMIDs using the ELink API
Array of PubMed IDs
Related articles
Query all NCBI databases for record counts using the EGQuery API
Search term
Per-database record counts
Check if a PMC article is in the OA (Open Access) subset
The OA subset contains articles with programmatic access to full-text XML. Some publishers restrict programmatic access even though the article may be viewable on the PMC website.
PMC ID (e.g., "PMC7906746")
OaSubsetInfo containing detailed information about OA availability
Match citations to PMIDs using the ECitMatch API
Array of citation queries
Array of citation match results
Search PubMed and fetch article metadata
Search query string (PubMed syntax supported)
Optionallimit: number | null
Maximum number of results to return
Array of article metadata
Search PubMed and fetch lightweight summaries
Combines search and ESummary fetch. Faster than search() when you only need basic metadata.
Search query string
Optionallimit: number | null
Maximum number of results
Array of article summaries
Check spelling of a search term using the ESpell API
Provides spelling suggestions for terms within a single text query. Uses the PubMed database by default.
The search term to spell-check
Spelling suggestions with corrected query
Check spelling of a search term against a specific database using the ESpell API
Spelling suggestions are database-specific, so use the same database you plan to search.
The search term to spell-check
The NCBI database to check against (e.g., "pubmed", "pmc")
Spelling suggestions with corrected query
StaticwithCreate a new PubMed client with custom configuration
Client configuration
PubMed/PMC API client