系統初始化模組
功能說明
功能介面字首統一為 http(s)://<your-domain>
生產環境應使用 HTTPS 以保證認證令牌。 HTTP 僅建議用於開發環境。
系統初始化模組負責首次部署配置和執行狀態監控 。支援 SQLite、MySQL、PostgreSQL 資料庫,包含 Root 使用者建立和系統引數初始化。狀態介面提供實時系統資訊,包括 OAuth 配置、功能開關等 。
🔐 無需鑑權
獲取系統初始化狀態
- 介面名稱:獲取系統初始化狀態
- HTTP 方法:GET
- 路徑:
/api/setup - 鑑權要求:公開
- 功能簡介:檢查系統是否已完成初始化,獲取資料庫型別和 Root 使用者狀態
💡 請求示例:
const response = await fetch('/api/setup', {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const data = await response.json();✅ 成功響應示例:
{
"success": true,
"data": {
"status": false,
"root_init": true,
"database_type": "sqlite"
}
}❗ 失敗響應示例:
{
"success": false,
"message": "系統錯誤"
}🧾 欄位說明:
status(布林型): 系統是否已完成初始化root_init(布林型): Root 使用者是否已存在database_type(字串): 資料庫型別,可選值:"mysql"、"postgres"、"sqlite"
完成首次安裝嚮導
- 介面名稱:完成首次安裝嚮導
- HTTP 方法:POST
- 路徑:
/api/setup - 鑑權要求:公開
- 功能簡介:建立 Root 管理員賬戶並完成系統初始化配置
💡 請求示例:
const response = await fetch('/api/setup', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
username: "admin",
password: "password123",
confirmPassword: "password123",
SelfUseModeEnabled: false,
DemoSiteEnabled: false
})
});
const data = await response.json();✅ 成功響應示例:
{
"success": true,
"message": "系統初始化完成"
}❗ 失敗響應示例:
{
"success": false,
"message": "使用者名稱長度不能超過12個字元"
}🧾 欄位說明:
username(字串): 管理員使用者名稱,最大長度 12 個字元password(字串): 管理員密碼,最少 8 個字元confirmPassword(字串): 確認密碼,必須與 password 一致SelfUseModeEnabled(布林型): 是否啟用自用模式DemoSiteEnabled(布林型): 是否啟用演示站點模式
獲取執行狀態摘要
- 介面名稱:獲取執行狀態摘要
- HTTP 方法:GET
- 路徑:
/api/status - 鑑權要求:公開
- 功能簡介:獲取系統執行狀態、配置資訊和功能開關狀態
💡 請求示例:
const response = await fetch('/api/status', {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const data = await response.json();✅ 成功響應示例:
{
"success": true,
"message": "",
"data": {
"version": "v1.0.0",
"start_time": 1640995200,
"email_verification": false,
"github_oauth": true,
"github_client_id": "your_client_id",
"system_name": "88API",
"quota_per_unit": 500000,
"display_in_currency": true,
"enable_drawing": true,
"enable_task": true,
"setup": true
}
}❗ 失敗響應示例:
{
"success": false,
"message": "獲取狀態失敗"
}🧾 欄位說明:
version(字串): 系統版本號start_time(數字): 系統啟動時間戳email_verification(布林型): 是否啟用郵箱驗證github_oauth(布林型): 是否啟用 GitHub OAuth 登入github_client_id(字串): GitHub OAuth 客戶端 IDsystem_name(字串): 系統名稱quota_per_unit(數字): 每單位配額數量display_in_currency(布林型): 是否以貨幣形式顯示enable_drawing(布林型): 是否啟用繪圖功能enable_task(布林型): 是否啟用任務功能setup(布林型): 系統是否已完成初始化
Uptime-Kuma 相容狀態探針
- 介面名稱:Uptime-Kuma 相容狀態探針
- HTTP 方法:GET
- 路徑:
/api/uptime/status - 鑑權要求:公開
- 功能簡介:提供與 Uptime-Kuma 監控系統相容的狀態檢查介面
💡 請求示例:
const response = await fetch('/api/uptime/status', {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const data = await response.json();✅ 成功響應示例:
{
"success": true,
"data": [
{
"categoryName": "OpenAI服務",
"monitors": [
{
"name": "GPT-4",
"group": "OpenAI",
"status": 1,
"uptime": 99.5
}
]
}
]
}❗ 失敗響應示例:
{
"success": false,
"message": "獲取監控資料失敗"
}🧾 欄位說明:
categoryName(字串): 監控分類名稱monitors(陣列): 監控項列表name(字串): 監控項名稱group(字串): 監控組名status(數字): 狀態碼,1=正常,0=異常uptime(數字): 可用率百分比
🔐 管理員鑑權
測試後端與依賴元件
- 介面名稱:測試後端與依賴元件
- HTTP 方法:GET
- 路徑:
/api/status/test - 鑑權要求:管理員
- 功能簡介:測試系統各元件連線狀態和健康度
💡 請求示例:
const response = await fetch('/api/status/test', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer your_admin_token',
'New-Api-User': 'your_user_id'
}
});
const data = await response.json();✅ 成功響應示例:
{
"success": true,
"message": "所有元件測試透過",
"data": {
"database": "connected",
"redis": "connected",
"external_apis": "healthy"
}
}❗ 失敗響應示例:
{
"success": false,
"message": "資料庫連線失敗"
}🧾 欄位說明:
database(字串): 資料庫連線狀態redis(字串): Redis 連線狀態external_apis(字串): 外部 API 健康狀態