An npm Package for Node.js based on https://github.com/emirozer/bowshock
bowshock is an all-in-one wrapper for NASA API's.
Here is a list of currently supported API's :
- Earth API
- APOD (Astronomy Picture of the Day) API
- Mars Rover Photos API
- Asteroids - NeoWs API
- Extra Vehicular Activity - US and Russia
- DONKI (Space Weather Database Of Notifications, Knowledge, Information) API
- EONET API
- EPIC API
- EXOPLANET API
- NASA IMAGE AND VIDEO LIBRARY API
- SATELLITE SITUATION CENTER API
- GENELAB API
- Patents API
- Asterank API
- HelioViewer API
- Skymorph API
- SSD/CNEOS API
- Trek WMTS API
- Techport API
Install
npm install node-bowshock
Do I need an API Key ?
Yes | No | |
---|---|---|
Earth | ✔ | |
Apod | ✔ | |
Donki | ✔ | |
Rover | ✔ | |
NeoWs | ✔ | |
EPIC | ✔ | |
EVA | ✔ | |
EONET | ✔ | |
ExoPlanet | ✔ | |
Helio | ✔ | |
GeneLab | ✔ | |
ImgVidLib | ✔ | |
Patents | ✔ | |
Skymorph | ✔ | |
SSC | ✔ | |
SSD/CNEOS | ✔ | |
Trek WMTS | ✔ | |
Techport | ✔ |
Get your NASA API KEY from : https://data.nasa.gov/developer/external/planetary/#apply-for-an-api-key
Setting up the API Key
Set an environment varible NASA_API_KEY which is equal to your key string.
Create a .env file in the root of the project. Logging to console can be enabled or disabled.
.env
NASA_API_KEY=########################LOGGER=true
All functions return a promise. I might switch to observables
Apod
let bowshock = //with specific date and tags - For apod all args are optionalbowshock;
Donki
let bowshock = ;let object = startDate: "2017-09-10" endDate: "2017-10-10";bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;bowshockdonki;
EPIC
let bowshock = ; bowshockepic;bowshockepic;bowshockepic;bowshockepic;bowshockepic;bowshockepic;bowshockepic;bowshockepic;
ExoPlanet
let bowshock = ; bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;bowshockexoPlanet;
GeneLab
let bowshock = ; bowshockgeneLab;
Image and Video Library
let bowshock = ; let obj = q: "space" // center: '', // description: '', // description_508: '', // keywords: 'space', // location: '', // media_type: '', // nasa_id: '', // photographer: '', // secondary_creator: '', // title: '', // year_start: '', // year_end: '';bowshocknasaImgVideo; bowshocknasaImgVideo;bowshocknasaImgVideo;bowshocknasaImgVideo;
SSC
let bowshock = ; bowshocksatelliteSituationCenter; bowshocksatelliteSituationCenter; bowshocksatelliteSituationCenter; bowshocksatelliteSituationCenter; bowshocksatelliteSituationCenter; bowshocksatelliteSituationCenter;bowshocksatelliteSituationCenter;
Mars Rovers
let bowshock = ; bowshockmars;bowshockmars;bowshockmars;bowshockmars;bowshockmars;
NeoWs
let bowshock = ; bowshockneows; bowshockneows; bowshockneows; //Lookup a specific Asteroid based on its NASA JPL small body (SPK-ID) IDbowshockneows; bowshockneows;
EVA
let bowshock = ; bowshock;
EONET
let bowshock = ; bowshockeonet; bowshockeonet; bowshockeonetlayers8;
Asterank
let bowshock = ; //all args mandatorybowshock;
Earth
let bowshock = ; //imagery endpoint lon & lat mandatory, rest optionalbowshockearth; //assets endpoint lon & lat & begin mandatory, end optionalbowshockearth;
HelioViewer
let bowshock = ; //args are mandatorybowshockhelioviewer; //args are mandatorybowshockhelioviewer; //startTime, endTime and sourceId are requiredbowshockhelioviewer; //startTime, endTime and sourceId are requiredbowshockhelioviewer; //startTime, endTime, layers, events, eventsLabels, and imageScale are requiredbowshockhelioviewer; bowshockhelioviewer; // id and format requiredbowshockhelioviewer; // id and format are required - saves movie to root directorybowshockhelioviewer; //id, format, and height are required --opens movie in default web browserbowshockhelioviewer; //date, imageScale, layers, eventLabels, and height are requiredbowshockhelioviewer; bowshockhelioviewer; //date and sourceId are requiredbowshockhelioviewer; // all args are optionalbowshockhelioviewer; //all args are requiredbowshockhelioviewer; bowshockhelioviewer; bowshockhelioviewer; bowshockhelioviewer; bowshockhelioviewer; bowshockhelioviewer; helioviewer;
Patents
let bowshock = ; //only query is mandatory, rest is optionalbowshock;
Skymorph
let bowshock = ; // mandatory obj idbowshockskymorph; //argument is a key that can be found in search_target_obj databowshockskymorph;
SSD/CNEOS
let bowshock = ; //all args are optionalbowshockssd;//all args are optionalbowshockssd; bowshockssd; bowshockssd;
Trek WMTS
let bowshock = ; bowshocktrek; bowshocktrek;
Techport
let bowshock = ; bowshock;