Reference · Tools
NASA integration
Retrieve data from NASA's open APIs including astronomy images, asteroid tracking, space weather events, and Earth satellite imagery.
The NASA node pulls data from NASA's public APIs: astronomy pictures, asteroid feeds, space weather events and satellite imagery, optionally downloading images as binary. A typical build is posting the astronomy picture of the day to a channel each morning with its explanation.
What you can build with NASA
- Get today's Astronomy Picture of the Day with image download.
- Retrieve near-Earth asteroid feed for a date range.
- Look up asteroid details by SPK-ID.
- Get DONKI coronal mass ejection events for the past 30 days.
- Download Earth satellite imagery for given coordinates.
Overview
The NASA tool provides access to multiple NASA open APIs: Astronomy Picture of the Day (APOD) with optional image download, Near-Earth Object (NEO) asteroid tracking via feed/lookup/browse endpoints, nine DONKI space weather event types (CME, HSS, IPS, MPC, notifications, RBE, SEP, solar flare, WSA+Enlil), Earth Assets metadata, and Earth Imagery satellite image download. Binary data is produced for APOD image downloads and Earth Imagery. All endpoints are read-only GET requests authenticated via api_key query parameter.
Node Type
Action (Binary) — handles file/binary data operations
Input / Output
| Direction | Port(s) |
|---|---|
| Input | Input |
| Output | Output, Error |
Credentials
This tool requires NASA API credentials. See the Credentials Guide for setup instructions.
Resources
| Resource | Value |
|---|---|
| Asteroid Neo-Browse | asteroidNeoBrowse |
| Asteroid Neo-Feed | asteroidNeoFeed |
| Asteroid Neo-Lookup | asteroidNeoLookup |
| Astronomy Picture of the Day | astronomyPictureOfTheDay |
| DONKI Coronal Mass Ejection | donkiCoronalMassEjection |
| DONKI High Speed Stream | donkiHighSpeedStream |
| DONKI Interplanetary Shock | donkiInterplanetaryShock |
| DONKI Magnetopause Crossing | donkiMagnetopauseCrossing |
| DONKI Notification | donkiNotifications |
| DONKI Radiation Belt Enhancement | donkiRadiationBeltEnhancement |
| DONKI Solar Energetic Particle | donkiSolarEnergeticParticle |
| DONKI Solar Flare | donkiSolarFlare |
| DONKI WSA+Enlil Simulation | donkiWsaEnlilSimulation |
| Earth Asset | earthAssets |
| Earth Imagery | earthImagery |
Operations
| Operation | Value | Description |
|---|---|---|
| Get | get | Retrieve data from the selected resource — offered by every resource except Asteroid Neo-Browse |
| Get Many | getAll | Browse the overall asteroid dataset — the only operation offered by Asteroid Neo-Browse |
Parameters
Astronomy Picture of the Day: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Download Image | boolean | No | true | Whether to download the APOD image as binary data. Only applies when media_type is “image”. |
| Binary Property | string | Yes | data | Name of the binary property to store the downloaded image in. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. (shown when Download Image is true) |
| Additional Fields | collection | No | {} | Optional query fields for this resource. |
| — Date | string | No | — | Date of the APOD (defaults to today). Format YYYY-MM-DD. Supports expressions. |
Asteroid Neo-Feed: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Additional Fields | collection | No | {} | Optional query fields for this resource. |
| — Start Date | string | No | — | Start of date range. Format YYYY-MM-DD. Defaults to today. Supports expressions. |
| — End Date | string | No | — | End of date range. Format YYYY-MM-DD. Defaults to today. Supports expressions. |
Asteroid Neo-Lookup: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Asteroid ID | string | Yes | — | The NASA SPK-ID of the asteroid to look up. Supports expressions like {{ $json.spkId }}. |
| Additional Fields | collection | No | {} | Optional query fields for this resource. |
| — Include Close Approach Data | boolean | No | false | Whether to include all close approach data in the asteroid lookup. |
Asteroid Neo-Browse: Get Many
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. Returning all pages through the whole NASA asteroid dataset and can take a long time. |
| Limit | number | No | 20 | Max number of results to return. (shown when Return All is false) |
DONKI Space Weather Events: Get
Applies to donkiCoronalMassEjection, donkiHighSpeedStream, donkiMagnetopauseCrossing, donkiNotifications, donkiRadiationBeltEnhancement, donkiSolarEnergeticParticle, donkiSolarFlare and donkiWsaEnlilSimulation — they all take the same fields.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Additional Fields | collection | No | {} | Optional query fields for this resource. |
| — Start Date | string | No | — | Start of date range. Format YYYY-MM-DD. Defaults to 30 days ago. Supports expressions. |
| — End Date | string | No | — | End of date range. Format YYYY-MM-DD. Defaults to today. Supports expressions. |
DONKI Interplanetary Shock: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Additional Fields | collection | No | {} | Optional query fields for this resource. |
| — Start Date | string | No | — | Start of date range. Format YYYY-MM-DD. Defaults to 30 days ago. Supports expressions. |
| — End Date | string | No | — | End of date range. Format YYYY-MM-DD. Defaults to today. Supports expressions. |
| — Location | options | No | ALL | Location filter for interplanetary shocks. |
Options: ALL, earth, MESSENGER, STEREO A, STEREO B | ||||
| — Catalog | options | No | ALL | Catalog filter for interplanetary shocks. |
Options: ALL, SWRC_CATALOG, WINSLOW_MESSENGER_ICME_CATALOG |
Earth Asset: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Latitude | number | No | — | Latitude for the location of the image. Required in practice — the item fails without it. Supports expressions. |
| Longitude | number | No | — | Longitude for the location of the image. Required in practice — the item fails without it. Supports expressions. |
| Additional Fields | collection | No | {} | Optional query fields for this resource. |
| — Date | string | No | — | Date of the image. Format YYYY-MM-DD. Supports expressions. |
| — Degrees | number | No | — | Width and height of the image in degrees. Defaults to 0.025. |
Earth Imagery: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Latitude | number | No | — | Latitude for the location of the image. Required in practice — the item fails without it. Supports expressions. |
| Longitude | number | No | — | Longitude for the location of the image. Required in practice — the item fails without it. Supports expressions. |
| Binary Property | string | Yes | data | Name of the binary property to store the Earth satellite image in. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. |
| Additional Fields | collection | No | {} | Optional query fields for this resource. |
| — Date | string | No | — | Date of the image. Format YYYY-MM-DD. Defaults to today. Supports expressions. |
| — Degrees | number | No | — | Width and height of the image in degrees. Defaults to 0.025. |
All Operations
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Max Concurrency | number | No | 10 | Maximum number of items to process concurrently. |
Output Data
Every resource merges its result onto the input item JSON — the incoming fields pass through unchanged. One output item per input item: no resource fans out, so lists arrive as arrays on a single item. Binary from the input item is forwarded, and the two image resources add a new binary property alongside it.
| Resource | Fields merged onto the item |
|---|---|
astronomyPictureOfTheDay | The whole APOD response (title, explanation, media_type, url, hdurl, date, and so on). With Download Image on and media_type equal to image, the picture is also written to the named Binary Property, keeping the file name from the source URL. |
asteroidNeoFeed | asteroids (array of near-Earth objects) and element_count. |
asteroidNeoLookup | The whole asteroid record. close_approach_data is stripped out unless Include Close Approach Data is on. |
asteroidNeoBrowse | asteroids (array) and totalCount. |
donki* (all nine) | events (array of the event records the API returned) and eventCount. |
earthAssets | The whole Earth Assets response for that coordinate. |
earthImagery | lat, lon, date, dim and fileSize. The satellite image itself is written to the named Binary Property as earth_imagery_{lat}_{lon}_{date}.png. |
Because lists come back as arrays on one item, use a Split Out node on asteroids or events when you want one item per record. Reference the result downstream by expression, e.g. {{ $json.eventCount }} or {{ $json.asteroids }}.
Example Configuration
Today’s Astronomy Picture of the Day, image included:
{
"type": "nasa",
"parameters": {
"resource": "astronomyPictureOfTheDay",
"operation": "get",
"download": true,
"binaryPropertyName": "apodImage"
}
}
APOD for a specific date, taken from the incoming item:
{
"type": "nasa",
"parameters": {
"resource": "astronomyPictureOfTheDay",
"operation": "get",
"download": true,
"binaryPropertyName": "apodImage",
"additionalFields": {
"date": "{{ $json.date }}"
}
}
}
Look up a single asteroid by SPK-ID, including its close approaches:
{
"type": "nasa",
"parameters": {
"resource": "asteroidNeoLookup",
"operation": "get",
"asteroidId": "{{ $json.spkId }}",
"additionalFields": {
"includeCloseApproachData": true
}
}
}
Browse the asteroid dataset, capped at 50 records:
{
"type": "nasa",
"parameters": {
"resource": "asteroidNeoBrowse",
"operation": "getAll",
"returnAll": false,
"limit": 50
}
}
Solar flare events for a month:
{
"type": "nasa",
"parameters": {
"resource": "donkiSolarFlare",
"operation": "get",
"additionalFields": {
"startDate": "2024-01-01",
"endDate": "2024-01-31"
}
}
}
Interplanetary shocks near Earth from a single catalog:
{
"type": "nasa",
"parameters": {
"resource": "donkiInterplanetaryShock",
"operation": "get",
"additionalFields": {
"startDate": "2024-01-01",
"endDate": "2024-01-31",
"location": "earth",
"catalog": "SWRC_CATALOG"
}
}
}
Download Earth satellite imagery for coordinates carried on the item:
{
"type": "nasa",
"parameters": {
"resource": "earthImagery",
"operation": "get",
"lat": "{{ $json.lat }}",
"lon": "{{ $json.lon }}",
"binaryPropertyName": "earthImage",
"additionalFields": {
"date": "2024-01-15",
"dim": 0.1
}
}
}
Error Handling
| Mode | Behavior |
|---|---|
| stop | Halts workflow on first error |
| continue | Skips failed items, passes successful ones through |
| errorPort | Routes failed items to Error output port |
Tips
This tool retrieves data from NASA’s open APIs, including astronomy images, asteroid tracking, space weather events, and Earth satellite imagery. It is suitable when you need to access specific NASA datasets like the Astronomy Picture of the Day, asteroid feeds, or space weather event details, especially when image downloads are required. The tool produces either structured data about celestial objects and events or binary image data for astronomy pictures and Earth satellite imagery.
Behavior notes
- Dates default sensibly. APOD, Earth Imagery and the asteroid feed default to today; DONKI resources default to the last 30 days. Any date you supply is normalised to
YYYY-MM-DD, so an ISO timestamp or a date picked up from an upstream item works too. - Asteroid Neo-Feed returns one day’s objects. Even with a multi-day range,
asteroidscarries the objects for the first date in the response — narrow the range to the day you care about rather than expecting the whole window in one array. - Return All really means all. On Asteroid Neo-Browse it pages through the entire dataset 20 records at a time and does not stop until NASA runs out of pages. Leave it off and set a Limit unless you genuinely want everything.
- APOD is not always a picture. Some days are videos; the download is skipped when
media_typeis notimage, and the item still carries the APOD metadata. - Latitude and Longitude are mandatory for the Earth resources even though the editor does not mark them required — an item without both fails.
Common patterns
- Daily astronomy content — use
astronomyPictureOfTheDaywith an optional date and the image download for editorial or educational workflows. - Space weather monitoring — use the DONKI resources with a date range to track events that could affect satellites or ground systems.
- Asteroid tracking — combine
asteroidNeoFeedfor recent activity withasteroidNeoLookupfor the detail on a specific object. - Earth observation — pair
earthAssets(what imagery exists) withearthImagery(fetch the picture) for the same coordinates.
Frequently asked questions
Do I have to supply dates?
No — they default sensibly. APOD, Earth Imagery and the asteroid feed default to today, and DONKI resources default to the last 30 days. Any date you supply is normalised to `YYYY-MM-DD`, so an ISO timestamp from an upstream item works too.
Why does the asteroid feed only cover one day?
Asteroid Neo-Feed returns one day's objects even with a multi-day range specified, so loop over dates if you need a longer window.
Can it download the images themselves?
Yes — optional binary image download brings the picture through as binary data ready to post or store, rather than just a URL.
Which credential does it need?
A NASA API credential. NASA offers a demo key, but a registered key has far higher rate limits.
Build with NASA
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need NASA API credentials first.
Open BusyBotLast reviewed . Spotted something wrong? Tell us.