mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-06-04 11:29:36 +00:00
update API Documentation
@@ -253,100 +253,8 @@ To enable the IP Limit functionality, you need to install `fail2ban` and its req
|
||||
|
||||
# API Documentation
|
||||
|
||||
- [API Documentation Postman](https://documenter.getpostman.com/view/5146551/2sB3QCTuB6)
|
||||
- [API Documentation Postman](https://documenter.getpostman.com/view/5146551/2sBXwmPC6M)
|
||||
|
||||
## Authentication
|
||||
|
||||
* **Endpoint**: `/login`
|
||||
* **Method**: `POST`
|
||||
* **Body**:
|
||||
|
||||
```json
|
||||
{
|
||||
"username": "",
|
||||
"password": ""
|
||||
}
|
||||
```
|
||||
* Use this endpoint to authenticate and receive a session.
|
||||
|
||||
---
|
||||
|
||||
## Inbounds API
|
||||
|
||||
Base path: **`/panel/api/inbounds`**
|
||||
|
||||
| Method | Path | Description |
|
||||
| :----: | -------------------------------- | -------------------------------------------- |
|
||||
| `GET` | `/list` | Get all inbounds |
|
||||
| `GET` | `/get/:id` | Get inbound by ID |
|
||||
| `GET` | `/getClientTraffics/:email` | Get client traffics by email |
|
||||
| `GET` | `/getClientTrafficsById/:id` | Get client traffics by inbound ID |
|
||||
| `POST` | `/add` | Add new inbound |
|
||||
| `POST` | `/del/:id` | Delete inbound by ID |
|
||||
| `POST` | `/update/:id` | Update inbound by ID |
|
||||
| `POST` | `/clientIps/:email` | Get client IP addresses |
|
||||
| `POST` | `/clearClientIps/:email` | Clear client IP addresses |
|
||||
| `POST` | `/addClient` | Add client to inbound |
|
||||
| `POST` | `/:id/delClient/:clientId` | Delete client by clientId\* |
|
||||
| `POST` | `/updateClient/:clientId` | Update client by clientId\* |
|
||||
| `POST` | `/:id/resetClientTraffic/:email` | Reset a client’s traffic usage |
|
||||
| `POST` | `/resetAllTraffics` | Reset traffics for all inbounds |
|
||||
| `POST` | `/resetAllClientTraffics/:id` | Reset traffics for all clients in inbound |
|
||||
| `POST` | `/delDepletedClients/:id` | Delete depleted clients in inbound (-1: all) |
|
||||
| `POST` | `/import` | Import inbound configuration |
|
||||
| `POST` | `/onlines` | Get currently online clients (emails list) |
|
||||
| `POST` | `/lastOnline` | Get last online status of clients |
|
||||
| `POST` | `/updateClientTraffic/:email` | Update traffic for specific client |
|
||||
| `POST` | `/import` | import inbound |
|
||||
| `POST` | `/lastOnline` | last Online |
|
||||
| `POST` | `/{id}/delClientByEmail/{email}` | Delete Client By Email |
|
||||
|
||||
\* **clientId mapping**:
|
||||
|
||||
* `client.id` → VMESS / VLESS
|
||||
* `client.password` → TROJAN
|
||||
* `client.email` → Shadowsocks
|
||||
|
||||
---
|
||||
|
||||
## Server API
|
||||
|
||||
Base path: **`/panel/api/server`**
|
||||
|
||||
| Method | Path | Description |
|
||||
| :----: | -------------------------- | --------------------------------------------- |
|
||||
| `GET` | `/status` | Get server status |
|
||||
| `GET` | `/getXrayVersion` | Get available Xray versions |
|
||||
| `GET` | `/getConfigJson` | Download current config.json |
|
||||
| `GET` | `/getDb` | Download database file (`x-ui.db`) |
|
||||
| `GET` | `/getNewUUID` | Generate new UUID |
|
||||
| `GET` | `/getNewX25519Cert` | Generate new X25519 certificate |
|
||||
| `GET` | `/getNewmldsa65` | Generate new ML-DSA-65 certificate |
|
||||
| `GET` | `/getNewmlkem768` | Generate new ML-KEM-768 key pair |
|
||||
| `GET` | `/getNewVlessEnc` | Generate new VLESS encryption keys |
|
||||
| `POST` | `/stopXrayService` | Stop Xray service |
|
||||
| `POST` | `/restartXrayService` | Restart Xray service |
|
||||
| `POST` | `/installXray/:version` | Install/Update Xray to given version |
|
||||
| `POST` | `/updateGeofile` | Update GeoIP/GeoSite data files |
|
||||
| `POST` | `/updateGeofile/:fileName` | Update specific Geo file |
|
||||
| `POST` | `/logs/:count` | Get system logs (with `level`, `syslog`) |
|
||||
| `POST` | `/xraylogs/:count` | Get Xray logs (with filters) |
|
||||
| `POST` | `/importDB` | Import database |
|
||||
| `POST` | `/getNewEchCert` | Generate new ECH certificate (requires `sni`) |
|
||||
|
||||
---
|
||||
|
||||
## Extra API
|
||||
|
||||
Base path: **`/panel/api`**
|
||||
|
||||
| Method | Path | Description |
|
||||
| :----: | ---------------- | ----------------------------------------- |
|
||||
| `GET` | `/backuptotgbot` | Backup DB/config and send to Telegram Bot |
|
||||
|
||||
---
|
||||
|
||||
[<img src="https://run.pstmn.io/button.svg" alt="Run In Postman" style="width: 128px; height: 32px;">](https://app.getpostman.com/run-collection/5146551-dda3cab3-0e33-485f-96f9-d4262f437ac5?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D5146551-dda3cab3-0e33-485f-96f9-d4262f437ac5%26entityType%3Dcollection%26workspaceId%3Dd64f609f-485a-4951-9b8f-876b3f917124)
|
||||
|
||||
## Geosites
|
||||
|
||||
|
||||
Reference in New Issue
Block a user