pmc.ncbi.nlm.nih.gov APIpmc.ncbi.nlm.nih.gov ↗
Access full-text biomedical research articles, citations, similar articles, and journal data from PubMed Central via 6 structured endpoints.
curl -X GET 'https://api.parse.bot/scraper/1f817882-9876-4757-9c3e-ddfadc58f9b2/search_articles?sort=relevance&limit=3&query=cancer&offset=0' \ -H 'X-API-Key: $PARSE_API_KEY'
Search PMC for articles by keyword. Returns paginated results with article metadata including PMC IDs, titles, authors, journals, and publication dates.
| Param | Type | Description |
|---|---|---|
| sort | string | Sort order: 'relevance' or 'date' |
| limit | integer | Number of results to return (max 100) |
| queryrequired | string | Search keywords (supports PubMed query syntax) |
| offset | integer | Offset for pagination |
{
"type": "object",
"fields": {
"total": "integer total count of matching articles",
"articles": "array of article summary objects with pmcid, pmid, doi, title, authors, journal, pub_date, url"
},
"sample": {
"data": {
"total": 78714,
"articles": [
{
"doi": "10.1111/ijcp.14364",
"url": "https://pmc.ncbi.nlm.nih.gov/articles/PMC8236907/",
"pmid": "33998108",
"pmcid": "PMC8236907",
"title": "Parents' willingness and attitudes concerning the COVID-19 vaccine: A cross-sectional study.",
"authors": [
"Yılmaz M",
"Sahin MK"
],
"journal": "Int J Clin Pract",
"pub_date": "2021 Sep"
}
]
},
"status": "success"
}
}About the pmc.ncbi.nlm.nih.gov API
The PMC API provides access to PubMed Central's repository of full-text biomedical research through 6 endpoints covering article search, full content retrieval, citation lookup, similar article discovery, and journal browsing. The get_article endpoint returns structured body sections, author affiliations, and reference lists by PMC ID, while search_articles supports the full PubMed query syntax for targeted literature searches.
Article Search and Retrieval
The search_articles endpoint accepts a query parameter using standard PubMed query syntax — Boolean operators, field tags like [Author] or [MeSH Terms], and date filters all work. Results are paginated via offset and limit (up to 100 per request), sortable by relevance or date. Each result object includes pmcid, pmid, doi, title, authors, journal, pub_date, and a direct url. The total field gives the full count of matching records, useful for building pagination UIs.
Full Article Content
get_article takes a pmcid (with or without the PMC prefix) and returns the complete structured article: a sections object mapping section headings (e.g. "Introduction", "Methods", "Results") to their text, the full abstract, an authors array with each author's name and affiliations, and a references array of citation strings. This is the endpoint to use when you need the actual text of a paper, not just its metadata.
Citations and Related Articles
get_article_citations returns up to 50 articles in PMC that cite a given paper, including each citing article's pmcid, title, journal, and pub_date. get_similar_articles uses PubMed's related-article algorithm and filters results to articles available in PMC full text, returning the same summary fields. Both endpoints accept PMC IDs with or without the PMC prefix.
Journal Discovery
list_journals searches the NLM catalog by keyword and returns matching journals with their name, issn, and publisher. Omitting the query parameter returns recently indexed journals. Once you have a journal name, get_journal_articles retrieves its PMC-available articles sorted by publication date, with offset and limit for pagination.
- Build a literature review tool that searches PMC by topic and retrieves full article sections via
get_article - Map citation networks by repeatedly calling
get_article_citationsacross a seed set of PMC IDs - Surface related reading recommendations using
get_similar_articlesalongside an article viewer - Index a journal's entire PMC archive using
get_journal_articleswith pagination for downstream search - Extract author affiliation data from
get_articleto analyze institutional research output - Monitor new publications in a specific journal by querying
get_journal_articlessorted by date - Cross-reference DOIs and PMIDs from
search_articlesresults against other bibliographic databases
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does NCBI offer an official developer API for PubMed Central?+
What does `get_article` return beyond the abstract?+
get_article returns a sections object that maps named section headings — such as Introduction, Methods, Results, and Discussion — to their full text content. It also returns an authors array with per-author name and affiliations, and a references array of citation strings. The response covers the complete article structure, not just the abstract.How many citing articles does `get_article_citations` return?+
total integer indicating the full count of citing articles in PMC. If an article has more than 50 citing papers, the total will reflect that, but the current citing_articles array is capped at 50. You can fork this API on Parse and revise the endpoint to add pagination support for larger citation sets.Does the API expose MeSH term data or keyword tags for articles?+
get_article and search_articles responses cover titles, authors, abstracts, full sections, and references but do not return MeSH headings or author-supplied keywords as discrete fields. You can fork the API on Parse and revise it to add an endpoint that surfaces those fields.Does `search_articles` support date-range filtering?+
query parameter accepts full PubMed query syntax, which includes date range filters using field tags such as 2020:2024[pdat]. There is no separate date parameter, but any valid PubMed search string — including date, author, journal, and MeSH filters — can be passed as the query value.