126 lines
4.3 KiB
Markdown
126 lines
4.3 KiB
Markdown
---
|
|
title: "NASA Exoplanet Archive API"
|
|
task: ""
|
|
lineage_type: import
|
|
upstream_source: https://github.com/K-Dense-AI/scientific-agent-skills/blob/9c9bd2e9/skills/database-lookup/references/nasa-exoplanet-archive.md
|
|
upstream_sha: 9c9bd2e9
|
|
imported_at: 2026-06-26
|
|
prompt_class: prompt
|
|
upstream_changes: accepted
|
|
author: upstream
|
|
validated: false
|
|
---
|
|
|
|
# NASA Exoplanet Archive API
|
|
|
|
## Base URL
|
|
|
|
```
|
|
https://exoplanetarchive.ipac.caltech.edu
|
|
```
|
|
|
|
## Authentication
|
|
|
|
No API key required. All endpoints are public.
|
|
|
|
## Key Endpoints
|
|
|
|
### 1. TAP Service (recommended — current method)
|
|
|
|
```
|
|
GET /TAP/sync?query={ADQL}&format={format}
|
|
```
|
|
|
|
| Parameter | Type | Description |
|
|
|-----------|--------|-------------|
|
|
| `query` | string | **Required.** ADQL query. |
|
|
| `format` | string | `json`, `csv`, `votable`, `tsv`, `ipac`. Default: `votable`. |
|
|
|
|
**Example — confirmed planets with key parameters:**
|
|
```
|
|
https://exoplanetarchive.ipac.caltech.edu/TAP/sync?query=SELECT pl_name,hostname,sy_dist,pl_orbper,pl_rade,pl_bmasse,disc_year,discoverymethod FROM ps WHERE default_flag=1 ORDER BY disc_year DESC&format=json
|
|
```
|
|
|
|
**Example — planets in habitable zone (rough estimate):**
|
|
```
|
|
https://exoplanetarchive.ipac.caltech.edu/TAP/sync?query=SELECT TOP 50 pl_name,hostname,pl_orbsmax,st_teff,pl_rade FROM ps WHERE default_flag=1 AND pl_orbsmax BETWEEN 0.8 AND 1.5 AND st_teff BETWEEN 4000 AND 7000&format=json
|
|
```
|
|
|
|
**Example — planets discovered by TESS:**
|
|
```
|
|
https://exoplanetarchive.ipac.caltech.edu/TAP/sync?query=SELECT pl_name,pl_rade,pl_orbper,disc_year FROM ps WHERE default_flag=1 AND disc_facility='Transiting Exoplanet Survey Satellite (TESS)'&format=json
|
|
```
|
|
|
|
**Example — count planets by discovery method:**
|
|
```
|
|
https://exoplanetarchive.ipac.caltech.edu/TAP/sync?query=SELECT discoverymethod, COUNT(*) as cnt FROM ps WHERE default_flag=1 GROUP BY discoverymethod ORDER BY cnt DESC&format=json
|
|
```
|
|
|
|
### 2. Legacy API (older, still functional)
|
|
|
|
```
|
|
GET /cgi-bin/nstedAPI/nph-nstedAPI?table={table}&format={format}&where={conditions}&select={columns}
|
|
```
|
|
|
|
**Example:**
|
|
```
|
|
https://exoplanetarchive.ipac.caltech.edu/cgi-bin/nstedAPI/nph-nstedAPI?table=ps&select=pl_name,pl_orbper,pl_rade&where=disc_year=2023&format=json
|
|
```
|
|
|
|
Note: The legacy API is deprecated in favor of TAP. Use TAP for new applications.
|
|
|
|
## Key TAP Tables
|
|
|
|
| Table | Description |
|
|
|--------|-------------|
|
|
| `ps` | **Planetary Systems** — one row per reference per planet. Use `default_flag=1` for the default/best parameter set. |
|
|
| `pscomppars` | **Planetary Systems Composite Parameters** — one row per planet with best-fit values from multiple references. |
|
|
| `stellarhosts` | Stellar properties of host stars. |
|
|
| `td` | Time-series data (transit curves, RV curves). |
|
|
| `keplernames` | Kepler Object of Interest cross-references. |
|
|
| `k2names` | K2 campaign cross-references. |
|
|
| `toi` | TESS Objects of Interest. |
|
|
|
|
## Key Columns (ps table)
|
|
|
|
| Column | Description |
|
|
|------------------|-------------|
|
|
| `pl_name` | Planet name (e.g., "Kepler-22 b"). |
|
|
| `hostname` | Host star name. |
|
|
| `default_flag` | 1 = default parameter set for this planet. |
|
|
| `disc_year` | Discovery year. |
|
|
| `discoverymethod` | `Transit`, `Radial Velocity`, `Imaging`, `Microlensing`, etc. |
|
|
| `pl_orbper` | Orbital period (days). |
|
|
| `pl_orbsmax` | Semi-major axis (AU). |
|
|
| `pl_rade` | Planet radius (Earth radii). |
|
|
| `pl_bmasse` | Planet mass (Earth masses). |
|
|
| `pl_eqt` | Equilibrium temperature (K). |
|
|
| `sy_dist` | Distance to system (parsecs). |
|
|
| `st_teff` | Stellar effective temperature (K). |
|
|
| `st_rad` | Stellar radius (solar radii). |
|
|
| `st_mass` | Stellar mass (solar masses). |
|
|
| `disc_facility` | Discovery facility name. |
|
|
|
|
## Response Format (TAP JSON)
|
|
|
|
```json
|
|
{
|
|
"metadata": [
|
|
{"name": "pl_name", "datatype": "char"},
|
|
{"name": "pl_orbper", "datatype": "double"}
|
|
],
|
|
"data": [
|
|
["Kepler-22 b", 289.8623]
|
|
]
|
|
}
|
|
```
|
|
|
|
## Rate Limits
|
|
|
|
No API key or authentication required. No formal rate limits documented, but the archive requests that users avoid excessive automated queries. Large result sets may cause timeouts; use `TOP N` in ADQL or paginate with `OFFSET` and `MAXREC`.
|
|
|
|
For very large downloads, use the bulk download interface at:
|
|
```
|
|
https://exoplanetarchive.ipac.caltech.edu/cgi-bin/TblView/nph-tblView?app=ExoTbls&config=PS
|
|
```
|