ScriptsMay 25, 2026·3 min read

Marzban — Unified Xray Proxy Management Panel with REST API

A self-hosted proxy management panel powered by Xray-core that provides a modern dashboard, REST API, and multi-node support for running censorship-resistant network services.

Agent ready

Review-first install path

This asset needs a review step. The copied prompt tells the agent to dry-run, show the writes, then proceed only after confirmation.

Needs Confirmation · 64/100Policy: confirm
Agent surface
Any MCP/CLI agent
Kind
Skill
Install
Single
Trust
Trust: Established
Entrypoint
Marzban Overview
Review-first command
npx -y tokrepo@latest install 11278c1a-5877-11f1-9bc6-00163e2b0d79 --target codex

Dry-run first, confirm the writes, then run this command.

Introduction

Marzban is a Python-based proxy management panel built on Xray-core. It offers a well-designed REST API alongside its web dashboard, making it suitable for operators who want both manual management and programmatic control over proxy user accounts and server nodes.

What Marzban Does

  • Manages proxy users with per-account traffic limits and expiration dates
  • Supports Vmess, Vless, Trojan, and Shadowsocks protocols simultaneously
  • Generates subscription links compatible with popular client applications
  • Provides a fully documented REST API for automation and integration
  • Supports multi-server node management from a single control panel

Architecture Overview

Marzban is a Python application using FastAPI for its backend and React for the dashboard. It stores user data and configuration in SQLite or MySQL. The panel manages one or more Xray-core processes, dynamically updating their configuration when users or inbounds are modified. Node communication uses gRPC for efficient multi-server coordination.

Self-Hosting & Configuration

  • Deploy with the official install script on Ubuntu 20+ or Debian 11+
  • Docker Compose deployment available for containerized environments
  • Environment variables in /opt/marzban/.env control database, TLS, and admin credentials
  • Supports MySQL/MariaDB as an alternative to the default SQLite backend
  • Configure Webhook URLs to receive real-time notifications on user events

Key Features

  • Documented OpenAPI/Swagger REST API for full programmatic control
  • Telegram bot for user management and usage notifications
  • Automatic subscription link generation with QR code support
  • Traffic reset scheduling and bandwidth usage analytics
  • Multi-admin support with separate permission levels

Comparison with Similar Tools

  • 3X-UI — Go-based with broader protocol support; Marzban offers a stronger API-first design and multi-node architecture
  • Hiddify Manager — Focuses on simplicity for end users; Marzban provides more granular API control for operators
  • V2Board — Commercial panel with payment integration; Marzban is fully open-source without licensing restrictions
  • Liberty-Shield — Simplified panel for single-server setups; Marzban scales to multi-node deployments

FAQ

Q: Can I migrate from 3X-UI to Marzban? A: There is no built-in migration tool, but you can export user data via the API and re-create accounts. Protocol configurations need manual reconfiguration.

Q: Does Marzban support clustering? A: Yes, you can connect multiple Xray nodes to a single Marzban panel using the node management feature with gRPC communication.

Q: How do I back up my Marzban data? A: Back up the /opt/marzban directory which includes the database, environment configuration, and Xray certificates.

Q: Is there rate limiting on the API? A: By default no, but you can place Marzban behind a reverse proxy like Nginx with rate limiting rules.

Sources

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets