Academic Research Search API
Query peer-reviewed papers and pre-prints across arXiv, PubMed, bioRxiv, and medRxiv from one endpoint. Pre-shaped JSON output ready for LLM tool calling, citation extraction, and RAG over scientific literature.
Try Academic Search Live
Enter your API key and run a real query against the live endpoint.
Don't have an API key?
Sign in to your account to create and manage your API keys.
Integration guide
Copy a snippet, replace your API key, run. Works in any HTTP client — examples below in cURL, JavaScript, and Python.
/api/search/academichttps://www.apipick.comSemantic search across arXiv, PubMed, bioRxiv, and medRxiv. Returns ranked titles, abstracts, and source URLs ready for LLM ingestion.
querystringrequiredNatural-language search query
max_num_resultsintegeroptional1–5, default 5
relevance_thresholdnumberoptional0.0–1.0 quality filter
country_codestringoptionalISO country code (e.g. US, GB)
start_datestringoptionalISO date YYYY-MM-DD
end_datestringoptionalISO date YYYY-MM-DD
curl -X POST "https://www.apipick.com/api/search/academic" \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"query": "Latest breakthroughs in CRISPR gene editing",
"max_num_results": 5,
"country_code": "US",
"start_date": "2026-01-01"
}'{
"query": "Latest breakthroughs in CRISPR gene editing",
"results": [
{
"title": "Example result",
"url": "https://example.com/article",
"snippet": "Short excerpt of the page content…",
"source_type": "web",
"published_at": "2026-04-15",
"score": 0.92
}
],
"result_count": 1,
"credits_used": 5,
"remaining_credits": 99
}Rate limits
Throttling is per API key, sliding 60-second window. Hit the limit and you get a clean 429 with a Retry-After header.
60req/min
Per API key, per endpoint. Sliding 60-second window.
3concurrent
Max simultaneous in-flight requests per API key.
X-RateLimit-LimitMaximum requests allowed per minuteX-RateLimit-RemainingRequests remaining in the current windowX-RateLimit-ResetSeconds until the current window resetsRetry-AfterSeconds to wait before retrying (only on 429)HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12
{
"error": "rate_limit_exceeded",
"message": "Rate limit exceeded: 60 requests/minute per API key. Retry after 12s.",
"retry_after": 12
}Frequently Asked Questions
Which sources are covered?
arXiv (computer science, math, physics, etc.), PubMed (biomedical), bioRxiv (biology pre-prints), and medRxiv (medical pre-prints). All four are queried in parallel with one call.
Why is this cheaper than other vertical search APIs?
Open-access academic indexes (arXiv, PubMed, bioRxiv, medRxiv) are inexpensive to query relative to proprietary financial or legal datasets. The credit price reflects that.
Can I restrict to a date range?
Yes. Pass start_date and end_date in YYYY-MM-DD format to filter by publication date.
Are full paper texts returned?
No — results include title, abstract-style snippet, source URL, and relevance score. Use POST /api/extract on the source URL to fetch full content for any paper.
Tool schema for OpenAI / Claude?
GET /api/search/academic/tool-schema returns ready-to-paste OpenAI function and Claude tool-use definitions.