ntrs.nasa.gov APIntrs.nasa.gov ↗
Search and retrieve NASA technical reports, preprints, and conference papers via the NTRS API. Access titles, abstracts, authors, keywords, and funding data.
curl -X GET 'https://api.parse.bot/scraper/b52eae0a-bc7f-413a-9031-f8f00bcff8da/search_citations?page=2&query=mars+rover¢er=GSFC&page_size=5' \ -H 'X-API-Key: $PARSE_API_KEY'
Search NASA technical reports by keyword with optional filters for NASA center and date range. Returns paginated results with metadata including title, abstract, authors, keywords, publication info, and more.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number (1-based). |
| query | string | Search query text (e.g., 'mars rover', 'climate change'). Empty string returns all results. |
| center | string | Filter by NASA center code (e.g., 'JPL', 'GSFC', 'KSC', 'ARC', 'LaRC'). Empty string means no filter. |
| year_end | string | Filter by end year in YYYY format (e.g., '2024'). Empty string means no upper bound. |
| page_size | integer | Results per page, between 1 and 100. |
| year_start | string | Filter by start year in YYYY format (e.g., '2020'). Empty string means no lower bound. |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"total": "integer, total number of matching results",
"results": "array of citation objects with id, title, abstract, authors, stiType, keywords, center, publications, meetings, fundingNumbers, downloadsAvailable, and more",
"page_size": "integer, results per page"
},
"sample": {
"data": {
"page": 1,
"total": 2812,
"results": [
{
"id": 20070034695,
"title": "Cassini-Huygens Mars Exploration Rover",
"center": {
"id": "efbc9c123a0f47caafa95d99b7d2e1a1",
"code": "JPL",
"name": "Jet Propulsion Laboratory"
},
"status": "CURATED",
"authors": [
{
"name": "Liepack, Otfrid G.",
"location": "Pasadena, CA, United States",
"organization": "Jet Propulsion Lab., California Inst. of Tech."
}
],
"created": "2013-08-24T00:07:00.0000000+00:00",
"stiType": "PREPRINT",
"abstract": "A viewgraph presentation on the Cassini-Huygens Mars Exploration Rover is shown.",
"keywords": [
"Cassini",
"Mars Exploration Rover (MER)"
],
"meetings": [
{
"name": "Rottery Club, Mallorca",
"country": "Spain",
"endDate": "2006-10-10T00:00:00.0000000+00:00",
"location": "Mallorca",
"startDate": "2006-10-09T00:00:00.0000000+00:00"
}
],
"modified": "2025-08-31T18:39:21.7150190+00:00",
"distribution": "PUBLIC",
"publications": [
{
"publisher": null,
"publicationDate": "2006-10-09T00:00:00.0000000+00:00",
"publicationName": null
}
],
"fundingNumbers": [],
"stiTypeDetails": "Preprint (Draft being sent to journal)",
"distributionDate": "2019-07-12T00:00:00.0000000+00:00",
"subjectCategories": [
"Lunar And Planetary Science And Exploration"
],
"downloadsAvailable": false
}
],
"page_size": 5
},
"status": "success"
}
}About the ntrs.nasa.gov API
The NASA NTRS API gives developers access to NASA's Technical Reports Server through 2 endpoints, covering decades of technical reports, preprints, conference papers, and other scientific publications. The search_citations endpoint accepts keyword queries with filters for NASA center and date range, returning paginated results with titles, abstracts, authors, and keywords. The get_citation endpoint returns complete metadata for a single record by submission ID.
Searching NASA Technical Publications
The search_citations endpoint accepts a query string along with optional filters: center (NASA center code such as JPL, GSFC, KSC, ARC, or LaRC), year_start and year_end for date-bounded searches, and page/page_size for pagination (up to 100 results per page). Passing an empty query string returns all records, useful for bulk traversal by center or date range. Each result in the results array includes the submission id, title, abstract, authors, stiType (e.g., PREPRINT, ABSTRACT, OTHER), keywords, center, publications, meetings, and fundingNumbers.
Full Citation Detail
The get_citation endpoint takes a numeric citation_id (for example, 20140013470) and returns the complete record for that submission. The response includes the center object with code, name, and id; an authors array with each contributor's name, organization, and location; a meetings array with event name, location, country, startDate, and endDate; and a status field indicating curation state. The created timestamp and stiType classification are also returned, along with the full abstract and keywords array.
Coverage and Data Shape
Records span NASA centers and date ranges from early aerospace research through recent missions, with coverage depth varying by center and document type. The stiType field distinguishes between preprints, abstracts, conference papers, and other document classes. Funding traceability is available through the fundingNumbers field on each citation.
- Building a full-text search interface over NASA technical reports filtered by center and year range
- Aggregating author publication histories using the
authorsarray across multiple citation records - Mapping conference paper outputs by meeting location and date using the
meetingsfield - Tracking research funding lineage by extracting
fundingNumbersfrom relevant citations - Compiling keyword co-occurrence networks from the
keywordsarrays across large result sets - Monitoring new document additions from a specific NASA center by querying with a
centerfilter and recentyear_start
| 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 NASA provide an official developer API for the Technical Reports Server?+
What does the `center` filter in `search_citations` accept, and how specific can I get?+
center parameter accepts NASA center codes such as JPL (Jet Propulsion Laboratory), GSFC (Goddard Space Flight Center), KSC (Kennedy Space Center), ARC (Ames Research Center), and LaRC (Langley Research Center). Passing an empty string removes the center filter entirely and returns results across all centers.Can I retrieve the actual PDF or document file through this API?+
get_citation endpoint returns metadata and a download availability indicator, but it does not return binary file content or direct download URLs for document files. The API covers citation metadata. You can fork it on Parse and revise it to add an endpoint that resolves and proxies document download links.Does the API expose citation-level metrics like view counts or download statistics?+
How does pagination work in `search_citations`?+
page parameter. The page_size can be set between 1 and 100. The response includes a total field with the full result count, so you can compute the number of pages needed to traverse a complete result set for a given query or filter combination.