NASA Asteroid Close Approaches, NEO Lookup & Impact Risk avatar

NASA Asteroid Close Approaches, NEO Lookup & Impact Risk

Pricing

from $1.40 / 1,000 asteroid data rows

Go to Apify Store
NASA Asteroid Close Approaches, NEO Lookup & Impact Risk

NASA Asteroid Close Approaches, NEO Lookup & Impact Risk

Asteroid and comet close approaches to Earth or another planet as rows: date in UTC, distance in lunar distances and km, speed, magnitude and estimated size. Plus object lookup by designation with orbit and physical data, the Sentry impact-risk table and recorded fireballs. Keyless NASA JPL data.

Pricing

from $1.40 / 1,000 asteroid data rows

Rating

0.0

(0)

Developer

Samat Makatov

Samat Makatov

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 hours ago

Last modified

Share

Asteroid and comet close approaches to Earth or another planet as rows: date in UTC, distance in lunar distances and km, speed, magnitude and estimated size. Plus object lookup by designation with orbit and physical data, the Sentry impact-risk table and recorded fireballs. Keyless NASA JPL data.

Four questions, one actor. Which objects pass a planet, when and how close (close-approach table). What is known about one object — orbit, size, albedo, rotation, discovery (small-body database). Which objects carry a computed chance of hitting Earth, with the probability, the Palermo and Torino values and the years watched (Sentry table). Which bright meteors actually entered the atmosphere, where and with how much energy (fireball record). The data comes from NASA JPL's Solar System Dynamics service, is US government public domain, and needs no key, no login, no proxy and no browser — a run is one to four small JSON requests, sent one at a time. Made by Yadroo.

Use cases

  • "What passes Earth this month" for a dashboard or newsletter — dateFrom: "now", dateTo: "+30", maxDistanceLd: 10: every near-Earth object inside ten lunar distances in date order, with the distance already converted to kilometres so nothing has to be recomputed downstream.
  • A size-filtered list for an article or a press desk — maxAbsoluteMagnitude: 22 over the next year keeps only objects of roughly 140 metres and up, which is the population that news stories are actually about.
  • Two centuries of one named object for a lesson or a chart — designations: ["99942"], body: "ALL": every recorded passage of Apophis past Earth, Venus and the Moon, including the 2029 pass at 38 000 km, inside geostationary orbit.
  • An object fact sheet for a catalogue or an agent tool — mode: "object" returns one row per designation with orbit class, eccentricity, perihelion, aphelion, inclination, period, the orbit-to-orbit gap with Earth, the observation count behind the solution, the measured diameter and albedo where they exist, and who discovered it.
  • An impact-risk watchlist — mode: "riskList", minImpactProbability: 0.0001, sorted by probability: the Sentry entries above one in ten thousand, which the source itself publishes in no useful order.
  • A fireball map — mode: "fireballs", onlyWithLocation: true: signed latitude and longitude, altitude, entry velocity, radiated energy in joules and impact energy in kilotons, ready for a tile layer.
  • A scheduled alert — onlyNew: true on any mode: a daily run writes only the approaches, Sentry entries or fireballs that appeared since the previous one, so the alert stays a few rows long.

Input

Nothing is required. With no input at all the actor writes the near-Earth objects passing within ten lunar distances of Earth over the next 60 days.

FieldTypeDefaultAllowed values / notes
modestringapproachesapproaches, object, riskList, fireballs. See Modes
designationsstring[]—e.g. ["99942", "Bennu", "2024 YR4"]. Required in object mode; in approaches mode it switches the run to the approach history of those objects. See Designations
includePhysicalParamsbooleantrueobject mode: add measured diameter, rotation period, albedo, spectral type, density
includeDiscoverybooleantrueobject mode: add discovery date, site, credited discoverers and the name citation
bodystringEarth10 bodies plus ALL. See Target bodies
maxDistanceLdnumber100.001–2000 lunar distances. 1 LD = 384 400 km
minDistanceLdnumber—0–2000. Lower bound, for cutting one distance band out
objectKindstringneoneo, nea, comet, neaAndComet. See Object kinds
orbitClassstringall15 codes. See Orbit classes
onlyPotentiallyHazardousbooleanfalseKeep only objects the source flags as potentially hazardous
minRelativeVelocityKmsnumber—0–100 km/s at closest approach
maxRelativeVelocityKmsnumber—0–100 km/s
maxAbsoluteMagnitudenumber—−10…40. Upper bound on H, so a lower bound on size. Applies to approaches and riskList. See Brightness and size
minAbsoluteMagnitudenumber—−10…40. Keeps the smaller objects
dateFromstringsee notes2026-01-01, 2026-01-01T12:00:00, now, or days from the run start (+30, -365). UTC. See Time window
dateTostringsee notesSame notation
onlyNewbooleanfalseRemember written rows between runs and write only what is new
minImpactProbabilitynumber—1e-10…1. riskList: cumulative chance as a fraction, 0.0001 = one in ten thousand
minPalermoScaleinteger—−20…20. riskList. See Risk scales
observedWithinDaysinteger—7–36500. riskList: keep entries whose newest observation is younger than this
minImpactEnergyKtnumber—0–1000. fireballs: total impact energy in kilotons
onlyWithLocationbooleanfalsefireballs: drop events with no published coordinates
sortBystringdatedate, distance, velocity, size, impactProbability, palermoScale, energy, designation. See Sort orders
sortDescendingbooleanfalseReverse the order
maxItemsinteger501–2000 rows. The cost brake, applied after sorting
fieldsstring[]allKeep only these output fields, in this order

Sent to the source, so rows outside them are never fetched or paid for: designations, body, maxDistanceLd, minDistanceLd, objectKind, orbitClass, onlyPotentiallyHazardous, the velocity bounds, maxAbsoluteMagnitude, minAbsoluteMagnitude (approaches), dateFrom/dateTo, minImpactProbability, minPalermoScale, observedWithinDays, minImpactEnergyKt, onlyWithLocation and sortBy where the endpoint supports it. Applied by the actor: minAbsoluteMagnitude in riskList, the sorting the Sentry and database endpoints do not offer, onlyNew, maxItems and fields.

mode, body, objectKind, orbitClass and sortBy are matched against their value lists: an obvious typo is corrected and the correction is logged ("marss" → Mars, "apolo" → APO, "comets" → comet, "dist" → distance, "Uranus" → Urnus). A value that matches nothing stops the run with the list of valid values — the query is never widened behind your back.

Two things surprise people. Distances are in lunar distances by default, not astronomical units; every row still carries distanceAu and distanceKm. And naming designations in approaches mode changes the default window from the next 60 days to 1900–2100, because the point of naming an object is its whole record.

Reference

Modes

  • approaches (default) — one row per passage of an object near a body. With designations it becomes the approach history of those objects. Use the Close approaches view.
  • object — one row per designation you list, with the orbit solution, the physical parameters that have been published and the discovery circumstances. One request per designation, in sequence. Use the Object details view.
  • riskList — one row per entry on the Sentry impact-monitoring table: objects whose orbit is not yet known well enough to rule an Earth impact out. Use the Impact risk view.
  • fireballs — one row per bright meteor recorded entering the atmosphere, with time, location, altitude, velocity and energy. Use the Fireballs view.

Designations

Write objects the way the source names them: a number (99942, 433), a name (Apophis, Bennu, case-insensitive), a provisional designation (2024 YR4, also accepted as 2024YR4), a comet designation (1P, 141P) or an SPK-id (20099942). Matching is done by the source, not by us.

  • A designation nobody knows yields one row with found: false and notFoundReason, never an empty success.
  • A designation that matches several objects yields one row with found: false and the candidates in matchedObjects, so 1P and 141P never turn into a silently wrong row. 141P alone matches five objects (141P, 141P-A, 141P-D, 141P-H, 141P-I) — ask for one of them.
  • A designation that exists but has no passage inside your window is reported in the run's status message and in SUMMARY, not as a row.

Target bodies

body takes the source's own abbreviations. The Every body option adds the body name to each row, which is how you see one asteroid pass Venus, Earth and the Moon in the same century.

bodyBodyNote
EarthEarthWhat monitoring and news want
MoonMoonRarer and always inside a few LD of an Earth passage
MercMercury
VenusVenus
MarsMarsMission planning and planetary science
JuptrJupiter
SatrnSaturnVery few entries
UrnusUranusThe source spells it Urnus; Uranus and Uran are corrected to it
NeptnNeptuneVery few entries
PlutoPlutoVery few entries
ALLEvery body the source tracksMixes bodies in one run

Distances to the outer planets are large numbers of lunar distances, so raise maxDistanceLd for them or you will get an empty (but successful) run.

Orbit classes

The dynamical family the source files an object under. Empty = every class.

CodeClassMeaning
IEOAtiraOrbit entirely inside Earth's
ATEAtenEarth-crossing, smaller orbit than Earth's
APOApolloEarth-crossing, larger orbit than Earth's
AMOAmorComes close to Earth from outside without crossing
MCAMars-crossing asteroid
IMBInner main belt
MBAMain belt
OMBOuter main belt
TJNJupiter trojan
CENCentaurBetween the giant planets
TNOTrans-Neptunian object
HTCHalley-type cometLong-period returning comet
JFCJupiter-family cometShort-period comet
PARParabolic comet
HYPHyperbolic cometPassing through once

Most impact-risk objects are Atens and Apollos. The classes that never come near a planet (MBA, IMB, OMB, TJN, CEN, TNO, MCA) hold no close-approach rows at all — they were all queried on 2026-09-30 and answered with an empty table, which is the physics, not a bug. In a two-century window the classes with rows were IEO, ATE, APO, AMO, HTC and JFC.

Object kinds

objectKindPopulation
neoNear-Earth objects: asteroids and comets whose orbit comes within 1.3 au of the Sun. The source's own default
neaNear-Earth asteroids only
cometComets only — a handful of passages per decade
neaAndCometNear-Earth asteroids together with all comets

objectKind is not applied when you list designations: the named objects are the filter, and adding a population switch would silently drop an object you asked for by name.

Brightness and size

Absolute magnitude H is how bright an object would look at a standard distance. It counts down as objects grow, so maxAbsoluteMagnitude is an upper bound on H and a lower bound on size. A diameter follows from H only once you assume how reflective the surface is, so every row carries a range computed for the conventional reflectivity span 0.25 (dark end of the range gives the smaller figure) to 0.05:

diameter_km = 1329 / sqrt(albedo) × 10^(−0.2 H)

HestimatedDiameterMinMestimatedDiameterMaxM
144 213 m9 420 m
171 058 m2 366 m
20266 m594 m
22106 m237 m
2442 m94 m
2617 m38 m
287 m15 m
303 m6 m

The public hazard threshold of "about 140 metres" corresponds to H 22 at a middling reflectivity of 0.14, which is why maxAbsoluteMagnitude: 22 is the useful filter for "big enough to matter". These are estimates and are never presented as measurements: diameterKm is filled only when the object was actually sized by radar, spacecraft or thermal infrared, which is a small minority.

Risk scales

  • Impact probability — the cumulative computed chance that the object strikes Earth at some point in the monitored span. impactProbabilityOneIn is the same number as "one chance in N", which is the form people read.
  • Palermo technical scale — compares one object's hazard with the ordinary background risk from objects of the same size, on a base-10 log scale. −2 means a hundred times less worrying than the background; 0 would mean comparable to it. Rows carry the cumulative (palermoScaleCum) and the largest single value (palermoScaleMax). The source accepts whole numbers in minPalermoScale.
  • Torino scale — the 0–10 public communication scale. Almost every Sentry entry is 0 or has no value at all; torinoScaleMax keeps a published 0 apart from a missing value (null).

Time window

dateFrom and dateTo accept a date, a date and time, the word now, or an offset in days from the moment the run starts (+30, -365). Everything is resolved to an absolute UTC instant before the request goes out, so a scheduled task keeps moving with the clock. Defaults depend on the mode:

ModeEmpty dateFromEmpty dateTo
approachesnow (1900-01-01 when designations are listed and both ends are empty)60 days after the start (2100-01-01 in the same case)
fireballsone year before the endnow
objectnot usednot used
riskListnot used — the table is a current snapshot; use observedWithinDaysnot used

Sort orders

The order is applied before maxItems, so it decides which rows you keep. Not every key fits every mode; a key that does not apply falls back to date and says so in the run's status message and in SUMMARY, rather than failing or reordering silently.

sortByOrdered byModes
dateApproach time / discovery date / last observation / event timeall
distanceApproach distanceapproaches
velocityRelative velocity, entry velocity for fireballsapproaches, fireballs
sizeAbsolute magnitude, biggest object firstapproaches, object, riskList
impactProbabilityCumulative impact probabilityriskList
palermoScaleCumulative Palermo valueriskList
energyTotal impact energyfireballs
designationDesignation, as textapproaches, object, riskList

sortDescending: true reverses whichever order you picked. Rows with no value for the key always sink to the end.

Units

1 lunar distance = 384 400 km (the mean Earth-Moon distance). 1 astronomical unit = 149 597 870.7 km = 389.17 LD. The source's own default close-approach window of 0.05 au is 19.46 LD. Distances are in au, km and LD in every row; velocities in km/s; radiated energy in joules (the source publishes it in units of 10¹⁰ J, kept as radiatedEnergy10e10J); impact energy in kilotons of TNT equivalent; altitudes in km above the geoid.

Examples

What passes Earth in the next 30 days

{ "mode": "approaches", "body": "Earth", "dateFrom": "now", "dateTo": "+30", "maxDistanceLd": 10, "sortBy": "date", "maxItems": 25 }

Only the large ones, over the next year, closest first

{ "mode": "approaches", "dateFrom": "now", "dateTo": "+365", "maxDistanceLd": 20, "maxAbsoluteMagnitude": 22, "sortBy": "distance", "maxItems": 20 }

Two centuries of Apophis and Bennu, past every body

{ "mode": "approaches", "designations": ["99942", "101955"], "body": "ALL", "dateFrom": "1900-01-01", "dateTo": "2100-01-01", "maxDistanceLd": 40, "maxItems": 30 }

Orbit, size and discovery of four well-studied objects

{ "mode": "object", "designations": ["99942", "101955", "433", "162173"], "includePhysicalParams": true, "includeDiscovery": true, "maxItems": 10 }

Asteroids passing Mars in the next year

{ "mode": "approaches", "body": "Mars", "dateFrom": "now", "dateTo": "+365", "maxDistanceLd": 20, "sortBy": "distance", "maxItems": 20 }

Impact-risk watchlist above one in ten thousand

{ "mode": "riskList", "minImpactProbability": 0.0001, "sortBy": "impactProbability", "sortDescending": true, "maxItems": 25 }

The most energetic fireballs of the last five years

{ "mode": "fireballs", "dateFrom": "-1825", "dateTo": "now", "minImpactEnergyKt": 1, "onlyWithLocation": true, "sortBy": "energy", "sortDescending": true, "maxItems": 20 }

Output

A real row from a cloud run (the prefill input: the Earth approaches of Apophis and Bennu within 10 LD between 1900 and 2100 — the 2029 Apophis passage inside geostationary orbit):

{
"designation": "99942",
"fullName": "99942 Apophis (2004 MN4)",
"objectName": "Apophis",
"body": "Earth",
"approachDate": "2029-04-13",
"approachTime": "2029-04-13T21:46:00.000Z",
"approachTimeSource": "2029-Apr-13 21:46",
"julianDate": 2462240.407091969,
"distanceAu": 0.00025409,
"distanceKm": 38011.5,
"distanceLd": 0.0989,
"distanceMinLd": 0.0989,
"distanceMaxLd": 0.0989,
"relativeVelocityKms": 7.4225,
"vInfinityKms": 5.8414,
"timeUncertainty": "< 00:01",
"absoluteMagnitude": 19.09,
"diameterKm": 0.34,
"diameterSigmaKm": 0.04,
"estimatedDiameterMinM": 404.2,
"estimatedDiameterMaxM": 903.7,
"orbitId": "220",
"matchedObjects": [],
"notFoundReason": null,
"found": true,
"url": "https://ssd.jpl.nasa.gov/tools/sbdb_lookup.html#/?sstr=99942",
"fetchedAt": "2026-09-30T19:59:13.943Z"
}

approaches — always filled: designation, body, approachDate, approachTime, approachTimeSource, julianDate, distanceAu, distanceKm, distanceLd, distanceMinLd, distanceMaxLd, relativeVelocityKms, vInfinityKms, timeUncertainty, found, url, fetchedAt.

FieldTypeMeaning
designationstringHow the source names the object
fullNamestring|nullNumber, name and provisional designation together
objectNamestring|nullProper name alone; null for the unnamed majority
bodystringBody it passes; read from the response in ALL runs
approachDate / approachTimestringClosest approach, ISO 8601 UTC
approachTimeSourcestringThe published timestamp as printed, e.g. 2026-Oct-02 19:28
julianDatenumberJulian date of closest approach
distanceAu / distanceKm / distanceLdnumberThe same distance in three units
distanceMinLd / distanceMaxLdnumberBounds of the distance uncertainty, in LD
relativeVelocityKmsnumberSpeed relative to the body at closest approach
vInfinityKmsnumberSpeed relative to the body before its gravity takes hold
timeUncertaintystringUncertainty of the time as published: < 00:01, 00:05, 7_06:25 = days_hours:minutes
absoluteMagnitudenumber|nullH; filled for effectively every approach row in practice
diameterKm / diameterSigmaKmnumber|nullMeasured diameter and its uncertainty; null for most objects
estimatedDiameterMinM / estimatedDiameterMaxMnumber|nullSize range implied by H, see Brightness and size
orbitIdstringWhich orbit solution the prediction came from
matchedObjectsarrayCandidates when the designation was ambiguous; empty otherwise
notFoundReasonstring|nullWhy a found: false row is empty
foundbooleanfalse for a designation that could not be resolved
urlstringThe object in the source's own lookup tool
fetchedAtstringRun time, ISO 8601 UTC

object — designation, fullName, objectName, spkId, objectKindCode, objectKindName, orbitClass, orbitClassCode, isNeo, isPotentiallyHazardous, absoluteMagnitude, magnitudeSlope, diameterKm, extentKm (triaxial extent as published text), albedo, rotationPeriodHours, bulkDensity, spectralType, estimatedDiameterMinM, estimatedDiameterMaxM, eccentricity, semiMajorAxisAu, perihelionAu, aphelionAu, inclinationDeg, orbitalPeriodDays, meanAnomalyDeg, moidAu, moidLd (smallest possible gap between the two orbits — the number that decides hazard status), moidJupiterAu, firstObservation, lastObservation, observationsUsed, dataArcDays, orbitSolutionDate, conditionCode (0 = a well-determined orbit, 9 = poor), discoveryDate, discoveredBy, discoverySite, nameCitation, matchedObjects, notFoundReason, found, url, fetchedAt.

riskList — designation, fullName, objectName, impactProbability, impactProbabilityOneIn, palermoScaleCum, palermoScaleMax, torinoScaleMax, potentialImpacts (how many separate dates are being watched), impactYearRange, impactYearFirst, impactYearLast, diameterKm, estimatedDiameterM, absoluteMagnitude, velocityKms, lastObservation, lastObservationRaw (the published string, sometimes a day with a decimal fraction), sentryId, found, url, fetchedAt.

fireballs — eventTime (peak brightness, UTC), eventDate, latitude, longitude (signed decimals), latitudeRaw, longitudeRaw (degrees plus hemisphere letter, as published), altitudeKm, velocityKms, radiatedEnergyJoules, radiatedEnergy10e10J, impactEnergyKt, found, url, fetchedAt.

Dataset views: Close approaches (approaches), Object details (object), Impact risk (riskList), Fireballs (fireballs). Request the view that matches your mode.

Every run also writes a SUMMARY record to the key-value store: the mode, the filters in one line, how many requests were sent, how many rows were read, matched and written, the designations that could not be resolved and why, the designations with no passage in the window, and every corrected input value.

Use it from code / agents

curl -X POST "https://api.apify.com/v2/acts/yadroo~nasa-asteroid-approaches/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode":"approaches","dateFrom":"now","dateTo":"+30","maxDistanceLd":10,"maxItems":25}'
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('yadroo/nasa-asteroid-approaches').call({
mode: 'riskList', minImpactProbability: 0.0001, sortBy: 'impactProbability', sortDescending: true, maxItems: 25,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("yadroo/nasa-asteroid-approaches").call(run_input={
"mode": "object", "designations": ["99942", "Bennu", "2024 YR4"], "maxItems": 10})
items = client.dataset(run["defaultDatasetId"]).list_items().items

MCP: add https://mcp.apify.com to Claude / Cursor / any MCP client and call the yadroo/nasa-asteroid-approaches tool with the same JSON input. For a model context, cut the row down first: "fields": ["designation","objectName","approachTime","distanceLd","relativeVelocityKms","estimatedDiameterMaxM"]. designation (or eventTime for fireballs) and found are always kept so a row stays identifiable.

On a schedule, set onlyNew: true. The actor remembers what it has written in a named key-value store — one per task, so two schedules with different filters do not blind each other — and writes only rows it has not reported before. The first run writes everything it matches, so start it once by hand before you schedule it.

Pricing

Pay per event: $0.001 per run start + $0.002 per dataset row. The start event is charged on every run, including a run whose filters match nothing. Apify plan tiers discount both prices (Bronze −10 %, Silver −20 %, Gold and above −30 %).

Worked examples at full price:

  • One object lookup, 1 row: $0.001 + $0.002 = $0.003.
  • The next 30 days past Earth within 10 LD, about 10 rows: $0.001 + $0.020 = $0.021.
  • A 25-row Sentry watchlist: $0.001 + $0.050 = $0.051.
  • The default 50 rows: $0.001 + $0.100 = $0.101.
  • The maximum maxItems: 2000: $0.001 + $4.000 = $4.001.

maxItems is both the cost brake and the run-time brake. Each endpoint answers a whole filtered table in one response, so the actor pushes the filters and the sort to the source, reads one bounded page per designation and stops at maxItems. A typical run is 256 MB for well under a minute, so compute is a fraction of a cent.

Limits & FAQ

  • One request at a time, and a named User-Agent. The source's fair-use terms ask for no simultaneous requests, for an application-specific User-Agent, and for backing off rather than retrying hard. The actor sends its requests strictly in sequence with a short pause, identifies itself as yadroo-nasa-asteroid-approaches, and backs off on 429 and 5xx with a bounded number of attempts. A run is one request in the list modes, one per designation in the others. robots.txt on the API host answers 404, so nothing is disallowed.
  • Approach timestamps are barycentric dynamical time, about a minute off UTC. The published clock reading is carried through unchanged into approachTime and kept verbatim in approachTimeSource. TDB runs roughly 69 seconds ahead of UTC; for anything but a spacecraft that is well inside the timing uncertainty the source itself publishes in timeUncertainty, which can be days for a distant prediction.
  • Measured diameters are rare. A published diameterKm exists for the objects that were sized by radar, spacecraft or thermal infrared. Everything else has only brightness, from which the actor computes a range — see Brightness and size. Do not treat estimatedDiameterMaxM as a measurement.
  • Impact probabilities are model output, and the source says so. The published documentation warns that the probabilities can be off by a factor of a few to ten and the probability-weighted diameters by a factor of two. They answer "is this worth watching", not "how likely is this really".
  • The Sentry table shrinks as often as it grows. An object leaves it as soon as new observations rule an impact out, so a designation you saw last month can be gone today. That is why the risk mode has no time window: it is a snapshot. Use observedWithinDays to keep the entries that are still under observation — many entries rest on a handful of measurements from years ago.
  • Fireball rows are often incomplete. Location, altitude and velocity are published for part of the events only; entry velocity was missing for most recent 2026 entries. onlyWithLocation drops the events with no coordinates, which is what you want for a map. The record is updated in batches, not live, so the last few days can be thin.
  • Getting the hemisphere right matters. The source publishes fireball coordinates as degrees plus N/S and E/W. The actor emits signed latitude/longitude and keeps the published pair in latitudeRaw/longitudeRaw so you can check it.
  • Empty is not broken. An outer planet at 10 LD, a main-belt orbit class in the close-approach table, or a Palermo bound of 0 all match nothing. The run succeeds, writes no rows and says in its status message what to widen.
  • An unknown designation is an answer, not a crash. The close-approach table rejects a designation it cannot read with an error and the database answers an unknown one with a "not found" message; either way the actor writes one row with found: false and the reason. An ambiguous designation returns the candidate list instead of a guess.
  • Counting the whole table. The source's "total matches" shortcut is unavailable together with a designation, so for a per-object query the actor reports what it read rather than a matched total. For a window query the status message names the total and tells you to raise maxItems if it exceeds what you asked for.
  • No forecasting, no imagery, no orbital propagation. This is the published record: predicted and past approaches, the orbit solution as it stands, the risk table as it stands, the fireballs that were recorded. It computes no new orbits and renders no positions.
  • Formats may change without notice. The endpoints are best-effort public services and the source reserves the right to change the response shape. Every parser indexes columns by the field list the response itself carries, not by position, so a reordered or added column does not corrupt a row — but a renamed one would need a fix.
  • Licence. NASA/JPL data is US government public domain and nothing in the source's terms forbids automated or commercial use. Check the source's own pages before you republish large extracts.

Made by Yadroo. Sibling actors: nasa-eonet-events · open-meteo-weather · openalex-works · arxiv-papers · osm-geocode