PubMed Search

Search 4.5M+ medical research papers with full-text semantic search. Pre-indexed PubMed database for health and biotech apps.

4 subscribers
32 endpoints
The in-depth APIMemo review for this API hasn't been published yet — the data below comes straight from the public marketplace listing.

PubMed Search endpoints

MethodEndpointDescription
stripe
POST stripe_webhook_stripe_webhook_post
/stripe/webhook
Handle Stripe webhook events using SDK handler
POST create_portal_session_stripe_portal_post
/stripe/portal
Create a Stripe customer portal session
POST create_checkout_session_stripe_checkout_post
/stripe/checkout
Create a Stripe checkout session for Pro subscription with 14-day trial
Authentication
POST regenerate_api_key_auth_regenerate_key_post
/auth/regenerate-key
Regenerate API key for the current user. Limited to 1 regeneration per month for free users.
GET google_callback_auth_google_callback_get
/auth/google/callback
Handle Google OAuth callback. SECURITY: Validates the state parameter to prevent CSRF attacks. State tokens are single-use and expire after 10 minutes. SECURITY: Returns a…
POST exchange_token_auth_exchange_token_post
/auth/exchange-token
Exchange one-time auth token for API key and email. SECURITY: This endpoint allows secure API key exchange via POST body instead of URL parameters. The auth_token is single-use…
GET logout_auth_logout_get
/auth/logout
Logout user.
GET get_current_user_auth_me_get
/auth/me
Get current user information from API key.
GET google_login_auth_google_login_get
/auth/google/login
Initiate Google OAuth login flow. SECURITY: Generates and stores a state token for CSRF protection. The state is validated when the callback is received.
GET get_usage_stats_auth_usage_get
/auth/usage
Get usage statistics for an API key. Shows monthly usage, limits, and remaining requests.
Contact
POST contact_form_contact_post
/contact
Handle contact form submissions - sends email via SMTP. SECURITY: Credentials loaded from environment variables via config. See config.py for SMTP_* environment variable names.
search
POST search_search_post
/search
Search across all 4.48M PubMed vectors with full metadata. @function search @purpose Semantic + keyword search using hybrid backend @context Primary search endpoint - uses hybrid…
GET search_stream_search_stream_get
/search/stream
Streaming GPU vector search with Server-Sent Events. Provides progressive feedback during search: 1. Status: Starting search 2. Partial: GPU encoding complete 3. Complete: Final…
hybrid-search
POST hybrid_search_stream_hybrid_search_stream_post
/hybrid-search/stream
Streaming hybrid search - returns vector results immediately, then ES results
POST hybrid_search_hybrid_search_post
/hybrid-search
Hybrid search combining GPU vectors and Elasticsearch in parallel. @function hybrid_search @purpose Combined semantic + keyword search for best results @context Recommended…
elasticsearch-test
GET elasticsearch_test_elasticsearch_test_get
/elasticsearch-test
Test Elasticsearch connectivity
metadata
POST get_metadata_metadata_post
/metadata
Get metadata for specific PMIDs or PMC IDs from PostgreSQL. PERFORMANCE: Limited to 100 PMIDs per request to prevent slow queries. Requests exceeding this limit will return a 400…
full_text
POST get_full_text_full_text_post
/full_text
Get full text of a specific article
article
GET get_article_full_text_article__pmid__full_text_get
/article/{pmid}/full_text
Get full text for a single article - endpoint for UI
legal
GET legal_refund_legal_refund_get
/legal/refund
Serve refund policy (cached at startup).
GET legal_terms_legal_terms_get
/legal/terms
Serve terms of service (cached at startup).
GET legal_privacy_legal_privacy_get
/legal/privacy
Serve privacy policy (cached at startup).
health
GET health_check_health_get
/health
Health check endpoint for monitoring and load balancers. Checks: - GPU availability and vector loading status - PostgreSQL connectivity (quick ping query) Returns degraded status…
status
GET get_status_status_get
/status
usage
GET get_usage_usage_get
/usage
es-cache-stats
GET es_cache_stats_es_cache_stats_get
/es-cache-stats
Get Elasticsearch cache monitor statistics. Shows query latency history, cold query detection, and prewarm activity. Useful for diagnosing slow searches and monitoring adaptive…
es-cache-prewarm
POST es_cache_prewarm_es_cache_prewarm_post
/es-cache-prewarm
Manually trigger ES cache prewarm. Use when you know ES cache is cold and want to warm it immediately.
favicon.ico
GET favicon_favicon_ico_get
/favicon.ico
Serve favicon
sitemap.xml
GET sitemap_sitemap_xml_get
/sitemap.xml
Dynamic sitemap for SEO. Returns XML sitemap with all public pages for search engine crawlers.
robots.txt
GET robots_robots_txt_get
/robots.txt
Robots.txt for search engine crawlers
llms.txt
GET llms_txt_llms_txt_get
/llms.txt
LLMs.txt for AI agents and crawlers
Other endpoints
GET index__get
/

PubMed Search pricing

PlanPriceRate limitQuotas
BASIC Free
  • Requests: 100 / monthly
PRO $9 / month
  • Requests: 1,000 / monthly
ULTRA $29 / month
  • Requests: 10,000 / monthly
MEGA $99 / month
  • Requests: 1,000,000 / monthly

More Data APIs

View all →
  • This is a VIN (Vehicle Identification Number) decoder that designed to work within North America, Asia and…

    DataFreemium139 subscribers
  • Currency Exchange is a live foreign exchange rate API that lets developers retrieve real-time conversion…

    ReviewedDataFreemium23k subscribers
  • Words API lets you retrieve information about English words, including definitions, synonyms, rhymes,…

    DataFreemium1.5k subscribers
  • Whois Lookup API in Json or Xml. Our infrastructure uses thousands of SOCKS proxies to avoid quota…

    DataFreemium3.8k subscribers
  • The Weatherbit Weather API gives developers access to current conditions, multi-day forecasts, minutely…

    ReviewedDataFreemium25k subscribers
  • GeoDB Cities is a RESTful API covering more than 800,000 towns, cities, counties, and islands worldwide,…

    ReviewedDataFreemium49.8k subscribers