Fusio
About this project
Self-Hosted API Management for Builders.
🚀 Use Cases
-
Database API Gateway
Unlock legacy databases and expose them via modern REST APIs.
-
Custom Backend Logic for APIs
Build and manage custom business logic tailored to your domain.
-
Gateway for Microservices
Route, orchestrate, and secure traffic between internal services.
-
API Developer Portal
Provide docs, testing, and SDKs for internal or external developers.
-
API Monetization
Enable freemium or tiered access with quotas, limits, and billing hooks.
-
MCP Integration
Leverage the Model Context Protocol to enable AI-driven access and control of API endpoints.
-
API Usage Analytics
Monitor traffic, detect issues early, and understand API consumption.
-
Headless CMS Backend
Manage and expose structured content to any frontend via APIs.
-
SDK Automation
Automatically generate ready-to-use client SDKs (PHP, TypeScript, Python, etc.).
📦 Quick Start
🛠️ Installation
-
Download artifact
You can either download the official release or clone the repository.
git clone https://github.com/apioo/fusio.git
-
Set up your
.env
Configure fitting database credentials at the
APP_CONNECTION
variable, all other parameters are optional.- MySQL:
pdo-mysql://root:test1234@localhost/fusio
- PostgreSQL:
pdo-pgsql://postgres:postgres@localhost/fusio
- SQLite:
pdo-sqlite:///fusio.sqlite
- MySQL:
-
Run migrations
php bin/fusio migrate
-
Create administrator user
After the installation is complete, you have to create a new administrator account. Choose as account type "Administrator".
php bin/fusio adduser
-
Install backend app
php bin/fusio marketplace:install fusio
-
Start via PHP built-in server
This should be only used for testing, for production you need a classical Nginx/Apache setup or use Docker, take a look at our installation documentation for more details.
php -S 127.0.0.1:8080 -t public
🌐 Web-Installer
Instead of manual installation you can also use the web installer script located at /install.php
to complete the installation. After installation, it is recommended to delete this "install" script.
🐳 Docker
To run Fusio with Docker you only need the official Fusio docker image
and a database. The following example shows a minimal docker-compose.yaml
which you can use to run Fusio.
services:
fusio:
image: fusio/fusio
restart: always
environment:
FUSIO_PROJECT_KEY: "42eec18ffdbffc9fda6110dcc705d6ce"
FUSIO_CONNECTION: "pdo-mysql://fu