springer.com APIspringer.com ↗
Search and retrieve metadata for Springer Nature articles, books, and journals. DOI lookups, paginated search, impact factors, abstracts, and chapter lists.
curl -X GET 'https://api.parse.bot/scraper/f3eb737d-a0c5-47a2-9dec-11b5ce5fae8c/search_articles?query=machine+learning' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for articles, chapters, and other content on Springer Nature Link. Returns paginated results with up to 20 items per page.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| sort | string | Sort order. Accepted values: Relevance, newestFirst, oldestFirst. |
| queryrequired | string | Search query keywords. |
| end_year | integer | End year for date range filter. Must be used together with start_year. |
| start_year | integer | Start year for date range filter. Must be used together with end_year. |
| content_type | string | Type of content to filter by. Accepted values: Article, Research article, Review article, Chapter, News article. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"results": "array of search result objects, each containing title, url, doi, authors, publication_date, content_type, snippet, and journal",
"total_count": "integer total number of matching results"
},
"sample": {
"data": {
"page": 1,
"results": [
{
"doi": "10.1007/s44379-025-00016-0",
"url": "https://link.springer.com/article/10.1007/s44379-025-00016-0",
"title": "When physics meets machine learning: a survey of physics-informed machine learning",
"authors": [
"Chuizheng Meng",
"Sam Griesemer",
"... Yan Liu"
],
"journal": null,
"snippet": "Physics-informed machine learning (PIML), the combination of prior physics knowledge with data-driven machine learning models, has emerged as an...",
"content_type": "Article",
"publication_date": null
}
],
"total_count": 386094
},
"status": "success"
}
}About the springer.com API
The Springer Nature Link API provides 4 endpoints for searching and retrieving structured metadata from Springer's research library. Use search_articles to run keyword queries across articles and chapters with date-range and content-type filters, or use get_article_details to fetch full bibliographic metadata—including abstract, authors, and references—for any DOI. Books and journals each have dedicated endpoints returning chapter lists and impact metrics respectively.
Search and Discovery
The search_articles endpoint accepts a required query string plus optional filters: content_type (Article, Review article, Chapter, etc.), start_year/end_year for date ranges, and sort (Relevance, newestFirst, oldestFirst). Results are paginated at up to 20 items per page via the page parameter. Each result object in the results array includes title, url, doi, authors, publication_date, content_type, snippet, and journal. The total_count field tells you how many matching records exist across all pages.
Article and Book Metadata
get_article_details takes a single doi parameter and returns the full record: title, authors array, journal name, abstract (or null when unavailable), a references array of citation strings, and a bibliographic_info object containing dates like Received, Accepted, and Published alongside the DOI. get_book_details accepts either a DOI or an ISBN (e.g. 978-3-319-10696-0) and returns title, authors, a description, and a chapters array where each entry carries a title, url, and doi—useful for drilling into individual chapter records via get_article_details.
Journal Metadata and Metrics
get_journal_info takes a numeric Springer journal ID (e.g. 12879) and returns title, issn, description, and a metrics object whose keys are metric labels—including Journal Impact Factor and Downloads—with string values. This endpoint covers journal-level scope and performance data without requiring a search query.
- Build a DOI resolver that returns full article abstracts, author lists, and references for citation management tools.
- Power an academic search interface with
search_articlesfiltering by content_type and year range. - Aggregate journal impact factors and download counts from
get_journal_infoto compare publications in a research domain. - Enumerate all chapters of a textbook via
get_book_detailsand batch-fetch their abstracts usingget_article_details. - Track publication trends by querying
search_articleswithstart_year/end_yearand sorting bynewestFirst. - Seed a research database with structured bibliographic metadata including Received and Accepted dates from
bibliographic_info. - Cross-reference ISBN-identified books with chapter-level DOIs to build library catalog enrichment pipelines.
| 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 Springer Nature have an official developer API?+
What does `search_articles` return and how granular are the filters?+
results array includes title, url, doi, authors, publication_date, content_type, snippet, and journal. You can filter by content_type values such as Article, Review article, Research article, Chapter, or News article, and narrow by date using start_year and end_year together. Sorting options are Relevance, newestFirst, and oldestFirst.Is full article text available through `get_article_details`?+
abstract, authors, references, bibliographic_info, and the journal name, but not the full body text of articles. Full text is often behind Springer's access controls. You can fork this API on Parse and revise it to add an endpoint that retrieves open-access full text where Springer makes it publicly available.Does the API support searching by author name or ISSN rather than keyword?+
search_articles takes a keyword query string. Structured filters are limited to content_type and year range. Author-name search and ISSN-based search are not dedicated parameters. You can fork this API on Parse and revise it to expose author or ISSN query parameters as additional filters.How does pagination work in `search_articles`, and is there a known coverage limit?+
page integer parameter selects the page, and total_count tells you the total number of matching records. Very large result sets with high page numbers may return fewer results depending on how Springer indexes deep pages—test with total_count to verify coverage at depth.