Getting Started with the NASA International Space Apps Challenge
Postman is supporting the NASA Space Apps Challenge—an international hackathon where teams interact with NASA’s open data to work on projects that solve problems both on Earth and in space. To help people participate successfully at the event, we want to support those who might not be entirely up to speed with what APIs are about, as well as those who are rolling up their sleeves to build interesting applications, by providing a NASA Postman collection.
What is an API?
The NASA Space Apps Challenge will bring in a variety of space-loving folks, some of whom are familiar with APIs, but many others who are not. So, to begin we want to introduce what Application Programming Interfaces (APIs) are, to provide you with the information you need to play an active role in the event, no matter your skill level.
- What Is an API? – APIs are how web, mobile, and device applications share data, content, and algorithms using the world wide web.
- How are they different to websites? – Websites return HTML for viewing in browsers, and APIs generally return JSON or XML-formatted data that can be used in many different ways.
- Do you have to program to use APIs? – No, anyone can access an API using Postman or other no-code API tools and services.
APIs provide access to information just like websites, but they don’t return much of the fluff required to make things look good in the browser. They only return the raw data and content necessary to accomplish what is needed. APIs are mostly used by developers to build applications, but increasingly they’re used by anyone who is curious enough to figure out how to put them to work by extracting data and content, and putting it to use in spreadsheets, widgets, and other applications.
What are APIs used for?
APIs are behind everything we do online, but unless you are aware that they exist, and understand how they work, you are unlikely to fully grasp what APIs are used for. To help fire up your imagination about what is possible, let’s introduce you to the most common ways in which APIs power applications and other systems.
- Desktop Application – APIs are providing the data, content, and functionality we expect in our desktop applications.
- Web Applications – Websites are increasingly powered not by a single database, but by many different API sources.
- Mobile Applications – Mobile applications use APIs to obtain the data, content, and features we use each day.
- System Integrations – APIs are used to move data and content around the web, ensuring it exists where it is needed.
- Spreadsheets – You can make APIs calls from within a spreadsheet, and use spreadsheet data to power APIs.
- Connected Devices – More devices are being connected to the web using APIs, creating new types of data and content.
There are endless ways in which APIs can be put to use in applications. Depending on what you are interested in, and the type of data, content, media, or algorithm being made available, how you use an API will vary.
How does Postman help?
Postman is an API development platform, helping developers put existing APIs to use, as well as develop new APIs. While Postman is a favorite tool of developers, there is nothing stopping non-developers from getting in there and putting the platform to use. Postman allows anyone to define API requests for any private or public APIs, then make calls to those APIs without writing code. This allows you to see the details of an API response, then save and work with this data. Postman helps developers in a couple of important ways:
- Requests – It allows you to craft API requests complete with paths, parameters, headers, and other details.
- Authentication – It lets you apply the most common forms of authentication that APIs employ.
- Responses – It provides the ability to make requests and see the details of each response.
- Collections – It allows for groups of APIs calls to be defined, shared, and collaborated around across teams.
- Sharing – Developers can share API requests with other team members.
- Comments – Users can comment on each API, establishing a feedback loop.
Postman helps you understand how each API can be put to work, allowing for exploration of data, content, and media. This helps expedite how these resources can be put to use in each application being developed. Postman’s platform also removes the barriers around API collaboration, making it easy and straightforward for every user, no matter their level of experience.
The Space Apps Challenge Postman Collection
To help jump start the applications being developed as part of the Space Apps Challenge, we pulled together an unofficial NASA Postman collection, providing access to over 20 of the NASA APIs published as part of the program. The collection is not officially sanctioned by NASA, but has been crafted by the Postman team to help drive conversation and project development around the globe this weekend as part of the hackathon. You’ll have to sign up to obtain your own NASA API key to access many of the APIs, but some are publicly available and do not require authentication. We have organized the NASA API Postman collection into 21 separate folders, based on the value we believe each offers hackathon participants.
- Asteroids Near Earth Objects – NeoWs (Near Earth Object Web Service) provides data about near-earth asteroids.
- Astronomy Picture of the Day (APOD) – The APOD endpoint provides access to the info you may have seen at the very popular Astronomy Picture of the Day website.
- CelesTrak Two-line Element (TLE) – The TLE API returns information about Earth-orbiting objects.
- Earth Observatory Natural Event Tracker (EONET) – EONET lets client applications retrieve continually updated natural event data.
- Earth Polychromatic Imaging Camera (EPIC) – With the EPIC API you can access imagery of the Earth and astronomical events.
- Exoplanet Archive – The Exoplanet Archive API exposes NASA’s archive data on confirmed planets, Kepler info, and transit surveys.
- GeneLab – GeneLab lets your application access NASA’s open bioscience data, including full text search.
- Kepler Objects of Interest (KOI) – The KOI API provides data regarding stars observed by the Kepler spacecraft.
- Kepler Stellar Table – The Kepler Stellar interactive table details parameters used to find transiting planets.
- Mars Rover (Curiosity) – Use photos from the Curiosity rover’s mission on mars in your application.
- Mars Rover (Opportunity) – Access photos from the Opportunity rover.
- Mars Rover (Spirit) – Access photos from the Spirit rover.
- Mars Rover (Mission Manifest) – With the mission manifests API you can build information from mars missions into other queries in your app.
- Mars Weather – Retrieve weather measurements from NASA’s InSight Mars lander, including temperature, wind, and pressure.
- Patents – The patent portfolio gives you access to NASA’s pioneering research patents.
- Satellite Situation Center – With the Satellite Situation Center Web (SSCWeb) service you can query geocentric spacecraft information.
- Data Center – The National Space Science Data Center provides an archive of NASA’s mission data around space science.
- Solar System Dynamics and Center for Near-Earth Objects – The SSD and CNEOS APIs let you build data regarding orbit, physical characteristics, and discovery circumstances into your projects.
- Space Weather Database – The Space Weather Database provides space weather observations for use in forecasting and space science.
- Techport – Techport lets you discover information about NASA’s technology projects.
- Threshold-Crossing Events (TCEs) – TCE data provides transit signals relevant to planet detection.
You can find the NASA API Postman collection here, or use the Run in Postman Button on the API documentation for the NASA API collection. You will need to sign up for your own API key to access many of the APIs, but once you’ve obtained it, you can add the key to your NASA environment to instantly apply it across all the APIs that require it. This allows you to learn about and make requests to any of the NASA APIs, exploring what is possible when you put the APIs to work in your application.
We will be producing a video walkthrough of what APIs are and what they can be used for, as well as the NASA Postman API collection we’ve created, in conjunction with the NASA Space Apps Challenge organizers. If you have any questions, feel free to tweet using the hashtags #SpaceApps and #postman, as we’ll be monitoring those channels over the weekend. We look forward to seeing what everyone builds!