Search the literature
API · /europepmc-api
Europe PMC API
Europe PMC as an API, powered by EMBL-EBI — an open repository of biomedical and life-sciences literature covering 45 million+ abstracts and 9 million+ full-text articles drawn from PubMed, PubMed Central, preprint servers (bioRxiv and medRxiv), patents and Agricola. Search the literature with rich field syntax (by author, title, journal, MeSH term, publication year or open-access status), ordering results by relevance, date or citation count, and optionally restricting to preprints only; read an article's full metadata and abstract — its authors, journal, volume and pages, DOI, PubMed and PMC identifiers, MeSH terms, keywords, funding grants and links to the free full text; and walk the citation network in both directions: the articles that cite a given paper, and the works that paper itself references. Together these let you measure scholarly impact, build citation graphs, track a research topic across preprints and peer-reviewed papers, and feed evidence into bibliometric, systematic-review and research-intelligence tools. Article identifiers are PubMed ids (numeric), PMC ids (PMC…) or preprint ids (PPR…); the source defaults to PubMed (MED). Data from EMBL-EBI Europe PMC.
API health
healthy- Uptime
- 100.00%
- Server probes · 24h
- Avg latency
- 216 ms
- Server probes · 24h
- Subscribers
- 3,047
- active
- Total calls
- 15
- last 7 days
Pricing
Pick a tier — billed monthly, cancel anytime.
Free
Free
- 500 calls / month
- 2 requests / second
- Hard cap (429 above quota, no overage)
- 500 calls/month
- 2 req/sec
- Search, article & citation lookup
- No credit card
Starter
€7.00 /month
- 20,000 calls / month
- 6 requests / second
- Hard cap (429 above quota, no overage)
- 20k calls/month
- 6 req/sec
- Citation network access
- Email support
Pro
€22.00 /month
- 95,000 calls / month
- 15 requests / second
- Hard cap (429 above quota, no overage)
- 95k calls/month
- 15 req/sec
- Bibliometrics & reviews
- Priority support
Mega
€60.00 /month
- 400,000 calls / month
- 40 requests / second
- Hard cap (429 above quota, no overage)
- 400k calls/month
- 40 req/sec
- High-throughput research intel
- Dedicated SLA
Built by
Related APIs
Other APIs with overlapping tags.
Wikisource API
Wikisource as an API — the Wikimedia free digital library of original source texts. Wikisource collects public-domain and freely-licensed primary texts: classic literature, poetry and plays, historical speeches, treaties and constitutions, religious and philosophical works, landmark court decisions, essays, letters and more, faithfully transcribed. This API wraps the official Wikisource MediaWiki service into clean JSON. /v1/search?q=Gettysburg Address searches the library and returns matching work and page titles with a text snippet and word count. /v1/work?title=Gettysburg Address returns a work's metadata — a short description, a text preview, the total character length and the canonical URL. /v1/text?title=Gettysburg Address (Bliss copy) returns the full plain text of a work (rendered and cleaned from the wiki source, capped at 60,000 characters with a truncated flag when longer) — the actual readable document, including transcribed works that template-based pages assemble. Many works are split into sub-pages or exist in several versions, so use /v1/search to find the exact page title first. Ideal for digital-humanities and literature apps, e-reading and quotation tools, NLP corpora of historical texts, and education. Content is public domain or CC BY-SA. Distinct from book-metadata catalogues and encyclopaedias — this is the actual full text of primary sources and classic works. For free textbooks use the Wikibooks API, for the encyclopaedia the Wikipedia API.
api.oanor.com/wikisource-api
Poetry API
A corpus of 2,500+ classic public-domain poems by 127 authors (Shakespeare, Keats, Dickinson, Whitman, Poe, Frost and many more), via the PoetryDB collection. Look up a poem by title or id and get its full text, line by line; browse every poem by an author (or list all authors); full-text search across titles, authors and lines; or fetch a random poem (optionally by author or capped to a number of lines, perfect for a poem-of-the-day). Ideal for literary apps, education, writing tools, daily-poem widgets and creative projects.
api.oanor.com/poetry-api
Books API
Search millions of books, look up editions by ISBN-10/13 and find authors — with covers, publish years, publishers, page counts and subjects. Powered by Open Library (Internet Archive).
api.oanor.com/books-api
OpenCitations API
Scholarly citations as open data — powered by OpenCitations (COCI), the open citation index. Unlike a metadata lookup, OpenCitations treats every citation as a first-class object: given a DOI you can list the papers that cite it (incoming citations) and the papers it references (outgoing), each annotated with its OpenCitations Identifier (OCI), the date the citation was created, the timespan between the two works, and whether it is a journal- or author-self-citation. Plus quick citation and reference counts for any DOI. It is built for citation-network and bibliometric work — research-impact analysis, self-citation detection, citation-timespan studies and science mapping — and is distinct from scholarly-metadata services (Crossref, OpenAlex). From a single paper to a whole reference graph, ideal for bibliometrics, research-analytics and reference-management tools. Open data from OpenCitations (CC0).
api.oanor.com/opencitations-api
Frequently asked questions
Quick answers about pricing, quotas, and integration.
How do I get an API key for Europe PMC API?
What's the rate limit for Europe PMC API?
How much does Europe PMC API cost?
Can I cancel my subscription anytime?
Is Europe PMC API GDPR-compliant?
Pick an endpoint from the list on the left to see its details and try it.
Code snippets
Sign up to get an API key, then call any path under your slug.
curl https://api.oanor.com/europepmc-api/SOME_PATH \
-H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/europepmc-api/SOME_PATH", {
headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/europepmc-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
"https://api.oanor.com/europepmc-api/SOME_PATH",
headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())
Ratings
Sign in to rate.
No reviews yet.
Discussion
Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.
Sign in to start a thread or reply.
Sign inNew thread
·
-
Provider answer
🔒 This thread is locked — no new replies.
-
·
- No threads yet — start the discussion.
Support
Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.
Sign in to open a support ticket.
Sign inOpen new ticket
Describe what you need help with. The provider team gets an email and replies on the ticket page.
-
·
Urgent - No tickets yet for this API.