What is Raspberry API?
Raspberry API is an open-source application programming interface, developed using the Go programming language, which enables retrieval of vital metrics and other data from a Raspberry Pi device. Additionally, it allows for the execution of various actions such as package installation and device configuration.
Motivation
In 2019, while building a connected recycled bin, I, @layerzzzio, the founder of Raspberry API, stumbled upon the Raspberry Pi. I was impressed by its capabilities and how easily it allowed me to gather data from various sensors using a low-cost device. However, I soon grew frustrated with the need to SSH into the device to check its status, and came to believe that it would be more convenient to have an app that could perform tasks such as monitoring CPU, RAM, and disk space usage, checking device temperature, making basic configurations such as adding and deleting users and changing passwords, enabling and disabling interfaces like I2C and 1W, and installing packages.
I went on to create Raspberry API as a backend for my application, RaspiBuddy. I made the decision to make the project open-source, with the goal of fostering the development of innovative Raspberry Pi projects, expanding the functionality of the backend, and enabling Raspberry Pi users to easily monitor and configure their devices.
How does it work?
It works like any other API. Once it has been installed on the Raspberry Pi, a client executes calls on the endpoints via:
- GET request to retrieve information (temperature, CPU, RAM, disk space usage, etc.)
- POST request to execute actions (add/delete user, change password, etc.)
WARNING
Designed for local network use only (client and Raspberry Pi in the same network), subject to change in future versions.