---
type: "firecrawl-provider"
description: "NASA JPL's Horizons system: where planets, moons, spacecraft, asteroids and comets are and how they move. Observer ephemerides (RA/Dec, azimuth/elevation from any site, magnitude, illumination, distance, constellation), Cartesian state vectors, osculating orbital elements and object physical data, computed on request from JPL's DE441 planetary ephemeris and spacecraft and small-body solutions, plus name-to-ID lookup for 1.5 million objects."
use_when: "NASA JPL's Horizons system: where planets, moons, spacecraft, asteroids and comets are and how they move. Observer ephemerides (RA/Dec, azimuth/elevation from any site, magnitude, illumination, distance, constellation), Cartesian state vectors, osculating orbital elements and object physical data, computed on request from JPL's DE441 planetary ephemeris and spacecraft and small-body solutions, plus name-to-ID lookup for 1.5 million objects."
categories: "Research"
capabilities: 5
credits_per_call: 5
---
# JPL Horizons ephemerides on Firecrawl Alexandria

NASA JPL's Horizons system: where planets, moons, spacecraft, asteroids and comets are and how they move. Observer ephemerides (RA/Dec, azimuth/elevation from any site, magnitude, illumination, distance, constellation), Cartesian state vectors, osculating orbital elements and object physical data, computed on request from JPL's DE441 planetary ephemeris and spacecraft and small-body solutions, plus name-to-ID lookup for 1.5 million objects.

- Categories: Research
- Category index: [Research category](https://alexandria.firecrawl.dev/agents/categories/research)
- Provider key: `ssd-jpl-nasa-gov`
- Access: Firecrawl credits
- Cost: 5 credits per call

## More

- [Human guide](https://www.firecrawl.dev/app/alexandria/ssd-jpl-nasa-gov)
- [OpenAPI spec](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/openapi.json)

## Capabilities

- [Lookup object](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/lookup_object): Resolve a name, designation, SPK ID or alias to the objects Horizons knows (planets, moons, spacecraft, asteroids, comets, barycenters) with each one's SPK ID, type, primary designation and aliases. Source: JPL Horizons Lookup API (horizons_lookup.api). Up to 50 results.
- [Object data](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/object_data): Horizons' object summary for one target: physical data for planets and moons (radius, mass, density, GM, rotation, gravity, albedo, escape speed), mission timeline and trajectory notes for spacecraft, and orbit solution, osculating elements and physical parameters (H, diameter, albedo, rotation) for asteroids and comets. Returns the summary text and best-effort label/value fields parsed from it.
- [Observer ephemeris](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/observer_ephemeris): Where a body appears in the sky: RA/Dec (ICRF, degrees), azimuth and elevation for a site on Earth, magnitude, illumination, distance from the observer and the Sun with range rates, solar elongation, morning/evening sky, constellation, and day/twilight/night at the site. Geocentric by default, or from latitude/longitude, or from any center body. Source: JPL Horizons observer table (EPHEM_TYPE=OBSERVER), one row per step, at most 500.
- [Osculating elements](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/osculating_elements): Osculating Keplerian orbital elements of a body about a center (Sun by default) at each epoch: eccentricity, periapsis distance, inclination, longitude of ascending node, argument of periapsis, time of periapsis, mean motion, mean and true anomaly, semi-major axis, apoapsis and period. Source: JPL Horizons element table (EPHEM_TYPE=ELEMENTS), at most 500 epochs.
- [State vectors](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/state_vectors): Cartesian position and velocity of a body relative to a center (Sun by default), with light time, range and range rate: the geometric state from JPL ephemerides (DE441, spacecraft and small-body solutions). Source: JPL Horizons vector table (EPHEM_TYPE=VECTORS, table 3), one row per step, at most 500.

## 1. Choose this provider when

NASA JPL's Horizons system: where planets, moons, spacecraft, asteroids and comets are and how they move. Observer ephemerides (RA/Dec, azimuth/elevation from any site, magnitude, illumination, distance, constellation), Cartesian state vectors, osculating orbital elements and object physical data, computed on request from JPL's DE441 planetary ephemeris and spacecraft and small-body solutions, plus name-to-ID lookup for 1.5 million objects.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "ssd-jpl-nasa-gov",
  "capability": "ephemerides/lookup_object",
  "options": {
    "group": "sct",
    "query": "voyager"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `group` (string): Limit to one group: ast asteroids, com comets, pln planets, sat natural satellites, sct spacecraft, mb major bodies, sb small bodies. Example: `ast`
- `query` (string, required): Name, designation (2004 MN4, 1P), SPK ID or MPC packed designation. Space sensitive. Example: `<query>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "ssd-jpl-nasa-gov",
    capability: "ephemerides/lookup_object",
    options: {
      group: "sct",
      query: "voyager",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "ssd-jpl-nasa-gov",
  "capability": "ephemerides/lookup_object",
  "options": {
    "group": "sct",
    "query": "voyager"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "ssd-jpl-nasa-gov",
    "capability": "ephemerides/lookup_object",
    "options": {
      "group": "sct",
      "query": "voyager"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'ssd-jpl-nasa-gov/ephemerides/lookup_object' \
  --options '{"group":"sct","query":"voyager"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "ssd-jpl-nasa-gov",
  "capability": "ephemerides/lookup_object",
  "options": {
    "group": "sct",
    "query": "voyager"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "ssd-jpl-nasa-gov",
  "capability": "ephemerides/lookup_object",
  "options": {
    "group": "sct",
    "query": "voyager"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "group": "sct",
  "observed_at_ms": 1794421800000,
  "query": "voyager",
  "results": [
    {
      "aliases": [],
      "designation": "1977-084A",
      "name": "Voyager 1 (spacecraft)",
      "spkid": "-31",
      "type": "spacecraft"
    },
    {
      "aliases": [],
      "designation": "1977-076A",
      "name": "Voyager 2 (spacecraft)",
      "spkid": "-32",
      "type": "spacecraft"
    }
  ],
  "returned": 2,
  "source_url": "https://ssd.jpl.nasa.gov/api/horizons_lookup.api?sstr=voyager&group=sct",
  "total": 2,
  "truncated": false
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Lookup object

- Capability: `ephemerides/lookup_object`
- Description: Resolve a name, designation, SPK ID or alias to the objects Horizons knows (planets, moons, spacecraft, asteroids, comets, barycenters) with each one's SPK ID, type, primary designation and aliases. Source: JPL Horizons Lookup API (horizons_lookup.api). Up to 50 results.
- Instructions: First step when you have a name (Mars, Voyager, Apophis, Halley, JWST) and need the exact Horizons target ID for object_data or an ephemeris. Mars alone matches the planet, its barycenter and Mars spacecraft; pick 499 for the planet.
- Cost: 5 credits per call
- Capability file: [Lookup object](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/lookup_object)

Accepted options:
- `group` (string): Limit to one group: ast asteroids, com comets, pln planets, sat natural satellites, sct spacecraft, mb major bodies, sb small bodies. Example: `ast`
- `query` (string, required): Name, designation (2004 MN4, 1P), SPK ID or MPC packed designation. Space sensitive. Example: `<query>`

Response schema example:
```json
{
  "group": "sct",
  "observed_at_ms": 1794421800000,
  "query": "voyager",
  "results": [
    {
      "aliases": [],
      "designation": "1977-084A",
      "name": "Voyager 1 (spacecraft)",
      "spkid": "-31",
      "type": "spacecraft"
    },
    {
      "aliases": [],
      "designation": "1977-076A",
      "name": "Voyager 2 (spacecraft)",
      "spkid": "-32",
      "type": "spacecraft"
    }
  ],
  "returned": 2,
  "source_url": "https://ssd.jpl.nasa.gov/api/horizons_lookup.api?sstr=voyager&group=sct",
  "total": 2,
  "truncated": false
}
```

### Object data

- Capability: `ephemerides/object_data`
- Description: Horizons' object summary for one target: physical data for planets and moons (radius, mass, density, GM, rotation, gravity, albedo, escape speed), mission timeline and trajectory notes for spacecraft, and orbit solution, osculating elements and physical parameters (H, diameter, albedo, rotation) for asteroids and comets. Returns the summary text and best-effort label/value fields parsed from it.
- Instructions: Facts about a body: mass or radius of a planet or moon, an asteroid's size and orbit solution, a spacecraft's mission notes. Read text for anything fields did not split cleanly.
- Cost: 5 credits per call
- Capability file: [Object data](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/object_data)

Accepted options:
- `target` (string, required): Horizons target: an ID (499 Mars, 301 Moon, 399 Earth, 10 Sun, -31 Voyager 1, -170 JWST), an SPK ID from lookup_object (20099942 Apophis, 1000036 Halley), or a name/designation (Apophis, 2004 MN4). Ambiguous names fail with the candidates; resolve them with lookup_object. Example: `<target>`

Response schema example:
```json
{
  "fields": {
    "Atmos. pressure (bar)": "0.0056",
    "Core radius (km)": "~1700",
    "Density (g/cm^3)": "3.933(5+-4)",
    "Equatorial radius (km)": "3396.19",
    "Escape speed, km/s": "5.027",
    "Flattening, f": "1/169.779",
    "GM (km^3/s^2)": "42828.375662",
    "GM 1-sigma (km^3/s^2)": "+- 0.00028",
    "Geometric Albedo": "0.150",
    "Hill's sphere rad. Rp": "319.8",
    "Mass of atmosphere, kg": "~ 2.5 x 10^16",
    "Mass ratio (Sun/Mars)": "3098703.59",
    "Mass x10^23 (kg)": "6.4171",
    "Max. angular diam.": "17.9\"",
    "Mean sidereal orb per": "1.88081578 y Visual mag. | 686.98 d",
    "Mean solar day (sol)": "88775.24415 s Polar gravity",
    "Mean temperature (K)": "210",
    "Obliquity to orbit": "25.19 deg",
    "Sid. rot. rate, rad/s": "0.0000708822",
    "Sidereal rot. period": "24.622962 hr",
    "V(1,0)": "-1.52",
    "Vol. mean radius (km)": "3389.92+-0.04",
    "Volume (x10^10 km^3)": "16.318",
    "km/s": "24.13",
    "m/s^2": "3.758 | 3.71"
  },
  "kind": "major_body",
  "observed_at_ms": 1794421800000,
  "source_url": "https://ssd.jpl.nasa.gov/api/horizons.api?format=json&COMMAND=%27499%27&OBJ_DATA=YES&MAKE_EPHEM=NO",
  "text": "Revised: June 02, 2025                 Mars                            499 / 4\n\n PHYSICAL DATA (updated 2025-Jun-02):\n  Vol. mean radius (km) = 3389.92+-0.04   Density (g/cm^3)      =  3.933(5+-4)\n  Mass x10^23 (kg)      =    6.4171       Flattening, f         =  1/169.779\n  Volume (x10^10 km^3)  =   16.318        Equatorial radius (km)=  3396.19\n  Sidereal rot. period  =   24.622962 hr  Sid. rot. rate, rad/s =  0.0000708822\n  Mean solar day (sol)  =   88775.24415 s Polar gravity m/s^2   =  3.758\n  Core radius (km)      = ~1700           Equ. gravity  m/s^2   =  3.71\n  Geometric Albedo      =    0.150\n\n  GM (km^3/s^2)         = 42828.375662    Mass ratio (Sun/Mars) = 3098703.59\n  GM 1-sigma (km^3/s^2) = +- 0.00028      Mass of atmosphere, kg= ~ 2.5 x 10^16\n  Mean temperature (K)  =  210            Atmos. pressure (bar) =    0.0056\n  Obliquity to orbit    =   25.19 deg     Max. angular diam.    =  17.9\"\n  Mean sidereal orb per =    1.88081578 y Visual mag. V(1,0)    =  -1.52\n  Mean sidereal orb per =  686.98 d       Orbital speed,  km/s  =  24.13\n  Hill's sphere rad. Rp =  319.8          Escape speed, km/s    =   5.027\n                                 Perihelion  Aphelion    Mean\n  Solar Constant (W/m^2)         717         493         589\n  Maximum Planetary IR (W/m^2)   470         315         390\n  Minimum Planetary IR (W/m^2)    30          30          30",
  "title": "Revised: June 02, 2025 Mars 499 / 4"
}
```

### Observer ephemeris

- Capability: `ephemerides/observer_ephemeris`
- Description: Where a body appears in the sky: RA/Dec (ICRF, degrees), azimuth and elevation for a site on Earth, magnitude, illumination, distance from the observer and the Sun with range rates, solar elongation, morning/evening sky, constellation, and day/twilight/night at the site. Geocentric by default, or from latitude/longitude, or from any center body. Source: JPL Horizons observer table (EPHEM_TYPE=OBSERVER), one row per step, at most 500.
- Instructions: Where is Mars tonight from my city, is Jupiter above the horizon, how bright is a comet this week, how far is the Moon right now, which constellation is Saturn in. For positions in space use state_vectors.
- Cost: 5 credits per call
- Capability file: [Observer ephemeris](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/observer_ephemeris)

Accepted options:
- `center` (string): Observer body instead of a site: 399 Earth center (default), 301 Moon, 499 Mars, -170 JWST, or site@body such as 675@399 (an MPC observatory code). Not with latitude/longitude. Example: `<center>`
- `elevation_km` (number): Observer height above the reference ellipsoid, km (default 0). Example: `10`
- `latitude` (number): Observer geodetic latitude, degrees north. With longitude, gives azimuth, elevation and day/night. Example: `10`
- `longitude` (number): Observer longitude, degrees east (negative west). Example: `10`
- `start` (string): Start time (or the single instant when stop is omitted; default now). UTC for observer tables, TDB for vectors and elements: YYYY-MM-DD, YYYY-MM-DD HH:MM or YYYY-MM-DDTHH:MM:SSZ, years 1000 to 3000. Example: `<start>`
- `step` (string): Step between rows: 30 m, 1 h, 6 h, 1 d, 1 mo, 1 y (default 1 d). At most 500 rows per call. Example: `<step>`
- `stop` (string): Stop time. Omit for one row at start. UTC for observer tables, TDB for vectors and elements: YYYY-MM-DD, YYYY-MM-DD HH:MM or YYYY-MM-DDTHH:MM:SSZ, years 1000 to 3000. Example: `<stop>`
- `target` (string, required): Horizons target: an ID (499 Mars, 301 Moon, 399 Earth, 10 Sun, -31 Voyager 1, -170 JWST), an SPK ID from lookup_object (20099942 Apophis, 1000036 Halley), or a name/designation (Apophis, 2004 MN4). Ambiguous names fail with the candidates; resolve them with lookup_object. Example: `<target>`

Response schema example:
```json
{
  "center": {
    "id": "399",
    "name": "Earth",
    "site": "(user defined site below)"
  },
  "observed_at_ms": 1794421800000,
  "observer": {
    "elevation_km": 0.3,
    "latitude": 34.2,
    "longitude": -118.17
  },
  "returned": 4,
  "rows": [
    {
      "apparent_magnitude": 0.711,
      "azimuth_deg": 31.133824,
      "constellation": "Leo",
      "dec_deg": 15.37485,
      "distance_au": 1.33992428400434,
      "distance_km": 200449820,
      "elevation_deg": -34.635222,
      "illuminated_percent": 89.43381,
      "moon_up": false,
      "nuclear_magnitude": null,
      "ra_deg": 146.60313,
      "range_rate_km_s": -14.8008182,
      "solar_elongation_deg": 85.7519,
      "sun": "night",
      "sun_distance_au": 1.605992318533,
      "sun_range_rate_km_s": 1.7448443,
      "sun_relation": "leads",
      "surface_brightness": 4.549,
      "time_utc": "2026-11-12T04:00:00Z"
    },
    {
      "apparent_magnitude": 0.664,
      "azimuth_deg": 75.293378,
      "constellation": "Leo",
      "dec_deg": 15.35318,
      "distance_au": 1.33848672336756,
      "distance_km": 200234764,
      "elevation_deg": 5.477418,
      "illuminated_percent": 89.43411,
      "moon_up": false,
      "nuclear_magnitude": null,
      "ra_deg": 146.68066,
      "range_rate_km_s": -15.0146181,
      "solar_elongation_deg": 85.8434,
      "sun": "night",
      "sun_distance_au": 1.60616018739,
      "sun_range_rate_km_s": 1.7428737,
      "sun_relation": "leads",
      "surface_brightness": 4.504,
      "time_utc": "2026-11-12T08:00:00Z"
    },
    {
      "apparent_magnitude": 0.691,
      "azimuth_deg": 113.675327,
      "constellation": "Leo",
      "dec_deg": 15.33156,
      "distance_au": 1.3370462451804,
      "distance_km": 200019271,
      "elevation_deg": 54.26588,
      "illuminated_percent": 89.43524,
      "moon_up": false,
      "nuclear_magnitude": null,
      "ra_deg": 146.7565,
      "range_rate_km_s": -14.8570772,
      "solar_elongation_deg": 85.9365,
      "sun": "night",
      "sun_distance_au": 1.606327866431,
      "sun_range_rate_km_s": 1.7409002,
      "sun_relation": "leads",
      "surface_brightness": 4.533,
      "time_utc": "2026-11-12T12:00:00Z"
    },
    {
      "apparent_magnitude": 0.736,
      "azimuth_deg": 237.930544,
      "constellation": "Leo",
      "dec_deg": 15.30962,
      "distance_au": 1.33563351890687,
      "distance_km": 199807930,
      "elevation_deg": 59.543036,
      "illuminated_percent": 89.43678,
      "moon_up": false,
      "nuclear_magnitude": null,
      "ra_deg": 146.83134,
      "range_rate_km_s": -14.4931189,
      "solar_elongation_deg": 86.0288,
      "sun": "day",
      "sun_distance_au": 1.606495355203,
      "sun_range_rate_km_s": 1.738924,
      "sun_relation": "leads",
      "surface_brightness": 4.581,
      "time_utc": "2026-11-12T16:00:00Z"
    }
  ],
  "source_url": "https://ssd.jpl.nasa.gov/api/horizons.api?format=json&COMMAND=%27499%27&OBJ_DATA=NO&MAKE_EPHEM=YES&EPHEM_TYPE=OBSERVER&CSV_FORMAT=YES&CENTER=%27coord%40399%27&START_TIME=%272026-11-12%2004%3A00%3A00%27&STOP_TIME=%272026-11-12%2016%3A00%3A00%27&STEP_SIZE=%274%20h%27&TIME_DIGITS=SECONDS&ANG_FORMAT=DEG&QUANTITIES=%271%2C4%2C9%2C10%2C19%2C20%2C23%2C29%27&COORD_TYPE=GEODETIC&SITE_COORD=%27-118.17%2C34.2%2C0.3%27",
  "target": {
    "id": "499",
    "name": "Mars"
  },
  "times": {
    "start": "2026-11-12 04:00:00",
    "step": "4 h",
    "stop": "2026-11-12 16:00:00"
  }
}
```

### Osculating elements

- Capability: `ephemerides/osculating_elements`
- Description: Osculating Keplerian orbital elements of a body about a center (Sun by default) at each epoch: eccentricity, periapsis distance, inclination, longitude of ascending node, argument of periapsis, time of periapsis, mean motion, mean and true anomaly, semi-major axis, apoapsis and period. Source: JPL Horizons element table (EPHEM_TYPE=ELEMENTS), at most 500 epochs.
- Instructions: Keplerian orbital elements of a planet, moon (center its planet, e.g. 599 for a Jupiter moon), asteroid, comet or spacecraft at a date. Default units au and days.
- Cost: 5 credits per call
- Capability file: [Osculating elements](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/osculating_elements)

Accepted options:
- `center` (string): Central body: 10 Sun (default), 399 Earth (for the Moon or Earth satellites), 599 Jupiter, or site@body. Example: `<center>`
- `reference_plane` (string): ecliptic (J2000 ecliptic, default) or equator (ICRF equatorial). Example: `ecliptic`
- `start` (string): Start time (or the single instant when stop is omitted; default now). UTC for observer tables, TDB for vectors and elements: YYYY-MM-DD, YYYY-MM-DD HH:MM or YYYY-MM-DDTHH:MM:SSZ, years 1000 to 3000. Example: `<start>`
- `step` (string): Step between rows: 30 m, 1 h, 6 h, 1 d, 1 mo, 1 y (default 1 d). At most 500 rows per call. Example: `<step>`
- `stop` (string): Stop time. Omit for one row at start. UTC for observer tables, TDB for vectors and elements: YYYY-MM-DD, YYYY-MM-DD HH:MM or YYYY-MM-DDTHH:MM:SSZ, years 1000 to 3000. Example: `<stop>`
- `target` (string, required): Horizons target: an ID (499 Mars, 301 Moon, 399 Earth, 10 Sun, -31 Voyager 1, -170 JWST), an SPK ID from lookup_object (20099942 Apophis, 1000036 Halley), or a name/designation (Apophis, 2004 MN4). Ambiguous names fail with the candidates; resolve them with lookup_object. Example: `<target>`
- `units` (string): km_s or au_d. Example: `km_s`

Response schema example:
```json
{
  "center": {
    "id": "10",
    "name": "Sun",
    "site": "BODY CENTER"
  },
  "observed_at_ms": 1794421800000,
  "reference_plane": "ecliptic",
  "returned": 3,
  "rows": [
    {
      "apoapsis_distance": 1.666051517984993,
      "argument_of_periapsis_deg": 286.6667464775244,
      "ascending_node_deg": 49.48022269325916,
      "eccentricity": 0.09339685133323808,
      "inclination_deg": 1.847433750607932,
      "jd_tdb": 2461355.5,
      "mean_anomaly_deg": 120.3337257029897,
      "mean_motion_deg": 0.5240083801075701,
      "orbital_period": 687.0119136760715,
      "periapsis_distance": 1.381426652367311,
      "periapsis_time_jd_tdb": 2461125.859157847,
      "semi_major_axis": 1.523739085176152,
      "time_tdb": "2026-11-11T00:00:00",
      "true_anomaly_deg": 129.022517618695
    },
    {
      "apoapsis_distance": 1.666052471495122,
      "argument_of_periapsis_deg": 286.6673936809458,
      "ascending_node_deg": 49.48019360912669,
      "eccentricity": 0.09339625456814873,
      "inclination_deg": 1.847433116573112,
      "jd_tdb": 2461356.5,
      "mean_anomaly_deg": 120.8571023224564,
      "mean_motion_deg": 0.5240075012618997,
      "orbital_period": 687.013065906611,
      "periapsis_distance": 1.381429106266732,
      "periapsis_time_jd_tdb": 2461125.859976658,
      "semi_major_axis": 1.523740788880927,
      "time_tdb": "2026-11-12T00:00:00",
      "true_anomaly_deg": 129.4919351600588
    },
    {
      "apoapsis_distance": 1.666053407920526,
      "argument_of_periapsis_deg": 286.6680340070907,
      "ascending_node_deg": 49.48016367011985,
      "eccentricity": 0.09339565984049572,
      "inclination_deg": 1.847432475132771,
      "jd_tdb": 2461357.5,
      "mean_anomaly_deg": 121.3804853027852,
      "mean_motion_deg": 0.5240066319426034,
      "orbital_period": 687.0142056511839,
      "periapsis_distance": 1.381431540325143,
      "periapsis_time_jd_tdb": 2461125.860784189,
      "semi_major_axis": 1.523742474122835,
      "time_tdb": "2026-11-13T00:00:00",
      "true_anomaly_deg": 129.9607705175832
    }
  ],
  "source_url": "https://ssd.jpl.nasa.gov/api/horizons.api?format=json&COMMAND=%27499%27&OBJ_DATA=NO&MAKE_EPHEM=YES&EPHEM_TYPE=ELEMENTS&CSV_FORMAT=YES&CENTER=%27500%4010%27&START_TIME=%272026-11-11%2000%3A00%3A00%27&STOP_TIME=%272026-11-13%2000%3A00%3A00%27&STEP_SIZE=%271%20d%27&OUT_UNITS=%27AU-D%27&REF_PLANE=%27ECLIPTIC%27",
  "target": {
    "id": "499",
    "name": "Mars"
  },
  "times": {
    "start": "2026-11-11 00:00:00",
    "step": "1 d",
    "stop": "2026-11-13 00:00:00"
  },
  "units": {
    "distance": "au",
    "time": "d"
  }
}
```

### State vectors

- Capability: `ephemerides/state_vectors`
- Description: Cartesian position and velocity of a body relative to a center (Sun by default), with light time, range and range rate: the geometric state from JPL ephemerides (DE441, spacecraft and small-body solutions). Source: JPL Horizons vector table (EPHEM_TYPE=VECTORS, table 3), one row per step, at most 500.
- Instructions: How far Voyager 1 is from the Sun or Earth, a spacecraft's speed, a planet's heliocentric or barycentric position for plotting or orbit work. Use center 399 for distance from Earth.
- Cost: 5 credits per call
- Capability file: [State vectors](https://alexandria.firecrawl.dev/agents/providers/ssd-jpl-nasa-gov/ephemerides/state_vectors)

Accepted options:
- `center` (string): Coordinate origin: 10 Sun center (default), 0 solar system barycenter, 399 Earth, 301 Moon, 5 Jupiter barycenter, or site@body (500@399). Example: `<center>`
- `reference_plane` (string): ecliptic (J2000 ecliptic, default) or equator (ICRF equatorial). Example: `ecliptic`
- `start` (string): Start time (or the single instant when stop is omitted; default now). UTC for observer tables, TDB for vectors and elements: YYYY-MM-DD, YYYY-MM-DD HH:MM or YYYY-MM-DDTHH:MM:SSZ, years 1000 to 3000. Example: `<start>`
- `step` (string): Step between rows: 30 m, 1 h, 6 h, 1 d, 1 mo, 1 y (default 1 d). At most 500 rows per call. Example: `<step>`
- `stop` (string): Stop time. Omit for one row at start. UTC for observer tables, TDB for vectors and elements: YYYY-MM-DD, YYYY-MM-DD HH:MM or YYYY-MM-DDTHH:MM:SSZ, years 1000 to 3000. Example: `<stop>`
- `target` (string, required): Horizons target: an ID (499 Mars, 301 Moon, 399 Earth, 10 Sun, -31 Voyager 1, -170 JWST), an SPK ID from lookup_object (20099942 Apophis, 1000036 Halley), or a name/designation (Apophis, 2004 MN4). Ambiguous names fail with the candidates; resolve them with lookup_object. Example: `<target>`
- `units` (string): km_s or au_d. Example: `km_s`

Response schema example:
```json
{
  "center": {
    "id": "10",
    "name": "Sun",
    "site": "BODY CENTER"
  },
  "observed_at_ms": 1794421800000,
  "reference_plane": "ecliptic",
  "returned": 3,
  "rows": [
    {
      "jd_tdb": 2461355.5,
      "light_time": 85986.92802544481,
      "range": 25778232508.61718,
      "range_rate": 16.8815895805244,
      "time_tdb": "2026-11-11T00:00:00",
      "vx": -2.069516807756883,
      "vy": -13.61133690699578,
      "vz": 9.831556249047358,
      "x": -4818851488.166903,
      "y": -20516885249.81059,
      "z": 14844304000.16868
    },
    {
      "jd_tdb": 2461356.5,
      "light_time": 85991.79328888212,
      "range": 25779691077.90188,
      "range_rate": 16.88158830419631,
      "time_tdb": "2026-11-12T00:00:00",
      "vx": -2.06950524137262,
      "vy": -13.61134004788378,
      "vz": 9.831546329377662,
      "x": -4819030293.920814,
      "y": -20518061269.45474,
      "z": 14845153446.20016
    },
    {
      "jd_tdb": 2461357.5,
      "light_time": 85996.65855194956,
      "range": 25781149647.07567,
      "range_rate": 16.88158701143424,
      "time_tdb": "2026-11-13T00:00:00",
      "vx": -2.069493482118305,
      "vy": -13.61134322275723,
      "vz": 9.831536397802122,
      "x": -4819209098.667056,
      "y": -20519237289.37185,
      "z": 14846002891.37405
    }
  ],
  "source_url": "https://ssd.jpl.nasa.gov/api/horizons.api?format=json&COMMAND=%27-31%27&OBJ_DATA=NO&MAKE_EPHEM=YES&EPHEM_TYPE=VECTORS&CSV_FORMAT=YES&CENTER=%27500%4010%27&START_TIME=%272026-11-11%2000%3A00%3A00%27&STOP_TIME=%272026-11-13%2000%3A00%3A00%27&STEP_SIZE=%271%20d%27&OUT_UNITS=%27KM-S%27&REF_PLANE=%27ECLIPTIC%27&VEC_TABLE=%273%27",
  "target": {
    "id": "-31",
    "name": "Voyager 1 (spacecraft)"
  },
  "times": {
    "start": "2026-11-11 00:00:00",
    "step": "1 d",
    "stop": "2026-11-13 00:00:00"
  },
  "units": {
    "distance": "km",
    "time": "s"
  }
}
```
