How to write software based on SpaceAPI

We encourage everybody to write software based on or using SpaceAPI, here are a few things that might help you with that.

Static directory file

The directory is essentially just a plain static JSON file on GitHub.

You can access it through directory.spaceapi.io. We will make sure that the static directory will be always reachable under that domain, even if we would switch away from GitHub in the future.

You can also load the file from github directly, but please be aware that we don't have control over it there and your software might break if we ever need to move away from GitHub.

API

The API is a service for interacting with the directory. By default it returns the directory in the same form as the static file, but filters the list to include only reachable and valid endpoints. Additionally it can give you a lot more information about entries that you might need.

The API is hosted at api.spaceapi.io. Documentation is available as an openapi file, you can use it to generate clients for a lot of different languages.

Libraries

We are constantly developing new libraries and provide types for different languages to help you develop software. Feel free to share and contribute too!

SpaceAPI Types for Rust

A Rust crate with types that can be used to serialize and deserialize SpaceAPI data.

By Danilo Bargen and Raphael Nestler from Coredump.

Category: development

Python Module / CLI App

Get the list of *spaces from the Space Directory and show their details on your terminal. Or query them from your Python software.

By Sébastien Gendre from Post Tenebras Lab.

Category: space-visualization, directory-visualization, development

SpaceAPI Parser for Kotlin/Java

A lenient parser for SpaceAPI endpoints. Can be used both from Kotlin and from Java.

By Danilo Bargen from Coredump.

Category: development

Community

We've created a community organization on GitHub for software and libs around SpaceAPI. Feel free to join, you will also get access to our metrics.