TheSpaceDevs / spaceflightnewsapi

Spaceflight News API (SNAPI) enables developers to add the latest spaceflight news to their apps.
https://spaceflightnewsapi.net
67 stars 7 forks source link
api api-rest esa nasa news newsapi space spaceflight spacex strapi thespacedevs

Cover

Website Documentation Version Discord Twitter Patreon

security: bandit

Spaceflight News API

The Spaceflight News API was created as a solution for my problem when I wanted to develop an app for Spaceflight News: many (great!) news sites with different APIs.

To make it easier for myself, I began a project that would aggregate metadata from those news sites and publish them through an API. Since there are others that might benefit from this API, I decided make the API publicly available.

There are great apps out on the internet, that are connected to services like https://thespacedevs.com. By making this API available to everyone, I hope to open new doors for the developers of these apps.

Documentation 📖

The documentation is generated from the code, and can be found at https://api.spaceflightnewsapi.net/v4/documentation.

Evolution 📈

Version 2

In July 2020, Launch Library 2.0 was released, within the new The Space Devs API group. I've joined this group as a partner developer, and started finalizing SNAPI 2.0.

Version 2.0 of SNAPI is a rewrite of the entire API using Strapi as a backend, with custom endpoints written by me. SNAPI 2 sets the stage for new features to come and focuses on bringing the existing features to the new format.

Version 3

In the Spring of 2021, Strapi announced that they would retire support for MongoDB. Since SNAPI was using MongoDB as the database, this had quite a big impact. Version 3 of the API is exactly the same as version 2 (in terms of the response), except the IDs. These changed from ObjectIDs (strings) to integers.

Version 4

In 2023 SNAPI V4 launched, completely re-written in Python (Django) for various reasons. Using proven libraries, this version is focussed on long-term stability and maintainability.

Launch Library 2 integration 🚀

Starting from version 2, we now have Launch Library 2 API integration. This way you can easily get news related to a specific launch. A nice to have if you want to have a "related news/launches" section in your app!

Currently imported news sites 🌐

Expand - AmericaSpace - Arstechnica - Blue Origin - CNBC - ESA - ElonX - Euronews - European Spaceflight - Jet Propulsion Laboratory - NASA - NASASpaceflight - National Geographic - National Space Society - Phys - Planetary Society - Reuters - Space.com - SpaceFlight Insider - SpaceNews - SpacePolicyOnline.com - SpaceX - Spaceflight Now - SyFy - TechCrunch - Teslarati - The Drive - The Japan Times - The Launch Pad - The National - The New York Times - The Space Devs - The Space Review - The Verge - The Wall Street Journal - United Launch Alliance - Virgin Galactic

Changelog 📝

Expand # V4.0.5 - Package updates - Migrated to Python 3.12 # V4.0.0 - Rewritten in Python and Django. # V3.4.0 - Package updates - Sentry fixes # V3.0.0 - Package updates ### V3.2.0 - Various Sentry issues fixed ### V3.1.0 - Strapi updates - Sentry updates - Admin interface updates ### V3.0.0 - Switch to use Postgres as database ### V2.3.0 - The lost "article per (LL2) event" endpoint is back - Changed the G4L logo on the site - Added Sentry again, via the new Strapi plugin - Changed from amqplib to amqp-connection-manager - Updated to Strapi 3.5.3 ### v2.2.0 - Dependency updates - Code cleanup - Admin side of things ### v2.1.0 - Backend changes on how new content is processed - Package updates ### v2.0.0 - Complete rewrite of the app, focusing on existing features

Showcase

For a list of users, please visit the users page. On the profile page of TheSpaceDevs organisation, you'll also find a simple showcase of the API.