mirror of
https://github.com/Sagit-chu/flvx.git
synced 2026-10-06 18:06:36 +08:00
docs: add AI Skill integration guide
This commit is contained in:
@@ -0,0 +1,149 @@
|
||||
# System Configuration API
|
||||
|
||||
Manage system-wide settings and configurations.
|
||||
|
||||
## POST /api/v1/config/get
|
||||
|
||||
Get a single configuration by name. This endpoint is public (no auth required).
|
||||
|
||||
**Request:**
|
||||
```json
|
||||
{"name": "site_name"}
|
||||
```
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{
|
||||
"code": 0,
|
||||
"data": {
|
||||
"name": "site_name",
|
||||
"value": "My FLVX Panel",
|
||||
"time": 1706659200000
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## POST /api/v1/config/list
|
||||
|
||||
List all configurations (requires authentication).
|
||||
|
||||
**Request:** `{}`
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{
|
||||
"code": 0,
|
||||
"data": {
|
||||
"site_name": "My FLVX Panel",
|
||||
"site_logo": "https://example.com/logo.png",
|
||||
"site_announcement": "System maintenance scheduled",
|
||||
"captcha_enabled": "true",
|
||||
"captcha_type": "turnstile",
|
||||
"turnstile_site_key": "...",
|
||||
"default_user_flow": "100",
|
||||
"default_user_exp_days": "30"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## POST /api/v1/config/update
|
||||
|
||||
Batch update multiple configurations (admin only).
|
||||
|
||||
**Request:**
|
||||
```json
|
||||
{
|
||||
"site_name": "New Panel Name",
|
||||
"site_announcement": "Welcome to the new panel!",
|
||||
"default_user_flow": "50"
|
||||
}
|
||||
```
|
||||
|
||||
Only include the keys you want to update.
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{"code": 0, "msg": "success"}
|
||||
```
|
||||
|
||||
## POST /api/v1/config/update-single
|
||||
|
||||
Update a single configuration (admin only).
|
||||
|
||||
**Request:**
|
||||
```json
|
||||
{
|
||||
"name": "site_name",
|
||||
"value": "My Awesome Panel"
|
||||
}
|
||||
```
|
||||
|
||||
## POST /api/v1/announcement/get
|
||||
|
||||
Get the site announcement (public endpoint).
|
||||
|
||||
**Method:** GET
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{
|
||||
"code": 0,
|
||||
"data": {
|
||||
"content": "System maintenance scheduled for tonight"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## POST /api/v1/announcement/update
|
||||
|
||||
Update the site announcement (admin only).
|
||||
|
||||
**Request:**
|
||||
```json
|
||||
{"content": "New announcement message"}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Common Configuration Keys
|
||||
|
||||
| Key | Description | Example |
|
||||
|-----|-------------|---------|
|
||||
| `site_name` | Panel display name | `"My FLVX Panel"` |
|
||||
| `site_logo` | Logo URL | `"https://example.com/logo.png"` |
|
||||
| `site_announcement` | Announcement HTML | `"<p>Notice...</p>"` |
|
||||
| `captcha_enabled` | Enable captcha | `"true"` or `"false"` |
|
||||
| `captcha_type` | Captcha provider | `"turnstile"` or `"local"` |
|
||||
| `turnstile_site_key` | Cloudflare Turnstile site key | `"0x4..."` |
|
||||
| `turnstile_secret_key` | Cloudflare Turnstile secret | `"0x4..."` |
|
||||
| `default_user_flow` | Default user traffic (GB) | `"100"` |
|
||||
| `default_user_exp_days` | Default user expiry days | `"30"` |
|
||||
| `default_user_num` | Default max forwards | `"10"` |
|
||||
|
||||
---
|
||||
|
||||
## Example: Update Panel Name and Announcement
|
||||
|
||||
```bash
|
||||
curl -s -X POST "${FLVX_BASE_URL}/api/v1/config/update" \
|
||||
-H "Authorization: ${TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"site_name": "Awesome Traffic Panel",
|
||||
"site_announcement": "<strong>Welcome!</strong> New nodes added."
|
||||
}'
|
||||
```
|
||||
|
||||
## Example: Enable Cloudflare Turnstile Captcha
|
||||
|
||||
```bash
|
||||
curl -s -X POST "${FLVX_BASE_URL}/api/v1/config/update" \
|
||||
-H "Authorization: ${TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"captcha_enabled": "true",
|
||||
"captcha_type": "turnstile",
|
||||
"turnstile_site_key": "0x4AAAAAAAAjq0JN9YQg",
|
||||
"turnstile_secret_key": "0x4AAAAAAAAjq0JN9YQg_secret"
|
||||
}'
|
||||
```
|
||||
Reference in New Issue
Block a user