Files
SingboxForPanel/api.md
CN-JS-HuiBai ef1f27c61d 添加文档
2026-04-14 23:54:37 +08:00

31 KiB

I made it with AI, but it seems great so far

Xboard API Documentation

This document provides a comprehensive overview of all API endpoints available in the Xboard system, organized by access level.

API Base URLs

  • V1 API: /api/v1/
  • V2 API: /api/v2/

Authentication

  • Guest: No authentication required
  • User: Requires user authentication (user middleware)
  • Staff: Requires staff privileges (staff middleware)
  • Admin: Requires admin privileges (admin middleware)
  • Client: Requires client authentication (client middleware)
  • Server: Requires server authentication (server middleware)

🌐 Guest APIs (Public - No Authentication Required)

Plans

  • GET /api/v1/guest/plan/fetch
    • Purpose: Get all available subscription plans for public viewing
    • Returns: List of available plans with pricing, features, and limits
    • Data: Plan ID, name, prices (monthly/quarterly/yearly), transfer limits, speed limits, device limits, capacity info

Configuration

  • GET /api/v1/guest/comm/config
    • Purpose: Get public configuration settings
    • Returns: Public app configuration
    • Data: ToS URL, email verification settings, invite requirements, reCAPTCHA settings, app description, app URL, logo

Payment Webhooks

  • GET/POST /api/v1/guest/payment/notify/{method}/{uuid}
    • Purpose: Handle payment notifications from payment providers
    • Returns: Payment processing status
    • Data: Payment confirmation and processing results

Telegram Webhooks

  • POST /api/v1/guest/telegram/webhook
    • Purpose: Handle Telegram bot webhook events
    • Returns: Webhook processing status
    • Data: Telegram bot event processing results

🔐 Authentication APIs (Passport)

V1 Authentication

  • POST /api/v1/passport/auth/register

    • Purpose: User registration
    • Returns: Registration success/failure
    • Data: User account creation status
  • POST /api/v1/passport/auth/login

    • Purpose: User login
    • Returns: Authentication token and user info
    • Data: JWT token, user details, session info
  • GET /api/v1/passport/auth/token2Login

    • Purpose: Token-based login
    • Returns: Login status
    • Data: Authentication status
  • POST /api/v1/passport/auth/forget

    • Purpose: Password reset request
    • Returns: Reset email status
    • Data: Password reset confirmation
  • POST /api/v1/passport/auth/getQuickLoginUrl

    • Purpose: Generate quick login URL
    • Returns: Quick login URL
    • Data: Temporary login URL
  • POST /api/v1/passport/auth/loginWithMailLink

    • Purpose: Login via email link
    • Returns: Login status
    • Data: Authentication confirmation

Communication

  • POST /api/v1/passport/comm/sendEmailVerify

    • Purpose: Send email verification
    • Returns: Email sending status
    • Data: Verification email delivery confirmation
  • POST /api/v1/passport/comm/pv

    • Purpose: Page view tracking
    • Returns: Tracking status
    • Data: Analytics tracking confirmation

V2 Authentication

Same endpoints as V1 but under /api/v2/passport/ prefix.


👤 User APIs (Authenticated Users)

User Management

  • GET /api/v1/user/info

    • Purpose: Get current user information
    • Returns: User profile data
    • Data: Email, transfer limits, login history, subscription status, balance, commission info, telegram ID, avatar URL
  • POST /api/v1/user/update

    • Purpose: Update user preferences
    • Returns: Update status
    • Data: Updated user preferences (reminders, etc.)
  • POST /api/v1/user/changePassword

    • Purpose: Change user password
    • Returns: Password change status
    • Data: Password update confirmation
  • GET /api/v1/user/resetSecurity

    • Purpose: Reset security credentials (UUID, token)
    • Returns: New subscribe URL
    • Data: New subscription URL with updated token
  • GET /api/v1/user/checkLogin

    • Purpose: Check login status
    • Returns: Login status and permissions
    • Data: Login status, admin privileges
  • GET /api/v1/user/getStat

    • Purpose: Get user statistics
    • Returns: User statistics summary
    • Data: Pending orders count, open tickets count, invited users count
  • GET /api/v1/user/getSubscribe

    • Purpose: Get subscription information
    • Returns: Subscription details and URL
    • Data: Plan details, subscription URL, usage stats, reset schedule
  • POST /api/v1/user/transfer

    • Purpose: Transfer commission to balance
    • Returns: Transfer status
    • Data: Transfer confirmation and updated balances
  • POST /api/v1/user/getQuickLoginUrl

    • Purpose: Generate quick login URL
    • Returns: Quick login URL
    • Data: Temporary login URL

Session Management

  • GET /api/v1/user/getActiveSession

    • Purpose: Get active sessions
    • Returns: List of active sessions
    • Data: Session details, login times, IP addresses
  • POST /api/v1/user/removeActiveSession

    • Purpose: Remove specific session
    • Returns: Session removal status
    • Data: Session termination confirmation

Orders & Billing

  • POST /api/v1/user/order/save

    • Purpose: Create new order
    • Returns: Order creation status
    • Data: Order details, payment information
  • POST /api/v1/user/order/checkout

    • Purpose: Checkout order
    • Returns: Payment processing info
    • Data: Payment URL, order status
  • GET /api/v1/user/order/check

    • Purpose: Check order status
    • Returns: Order status
    • Data: Order processing status
  • GET /api/v1/user/order/detail

    • Purpose: Get order details
    • Returns: Detailed order information
    • Data: Order items, pricing, status, payment info
  • GET /api/v1/user/order/fetch

    • Purpose: Get user's orders
    • Returns: List of user orders
    • Data: Order history with status and details
  • GET /api/v1/user/order/getPaymentMethod

    • Purpose: Get available payment methods
    • Returns: List of payment options
    • Data: Payment providers, fees, availability
  • POST /api/v1/user/order/cancel

    • Purpose: Cancel order
    • Returns: Cancellation status
    • Data: Order cancellation confirmation

Plans

  • GET /api/v1/user/plan/fetch
    • Purpose: Get available plans for authenticated user
    • Returns: List of plans with user-specific availability
    • Data: Plans with pricing, user eligibility, renewal options

Invitations

  • GET /api/v1/user/invite/save

    • Purpose: Generate invitation code
    • Returns: Invitation code
    • Data: Invitation code and sharing info
  • GET /api/v1/user/invite/fetch

    • Purpose: Get invitation statistics
    • Returns: Invitation data
    • Data: Invitation codes, usage stats, commissions
  • GET /api/v1/user/invite/details

    • Purpose: Get detailed invitation information
    • Returns: Invitation details
    • Data: Detailed invitation statistics and earnings

Support & Communication

  • GET /api/v1/user/notice/fetch

    • Purpose: Get user notices
    • Returns: List of notices
    • Data: System announcements, updates, alerts
  • POST /api/v1/user/ticket/save

    • Purpose: Create support ticket
    • Returns: Ticket creation status
    • Data: Ticket ID and details
  • GET /api/v1/user/ticket/fetch

    • Purpose: Get user's tickets
    • Returns: List of support tickets
    • Data: Ticket history, status, responses
  • POST /api/v1/user/ticket/reply

    • Purpose: Reply to ticket
    • Returns: Reply status
    • Data: Reply confirmation
  • POST /api/v1/user/ticket/close

    • Purpose: Close ticket
    • Returns: Closure status
    • Data: Ticket closure confirmation
  • POST /api/v1/user/ticket/withdraw

    • Purpose: Withdraw ticket
    • Returns: Withdrawal status
    • Data: Ticket withdrawal confirmation

Servers

  • GET /api/v1/user/server/fetch
    • Purpose: Get available servers
    • Returns: List of servers user can access
    • Data: Server details, locations, status, protocols

Coupons

  • POST /api/v1/user/coupon/check
    • Purpose: Validate coupon code
    • Returns: Coupon validity and discount info
    • Data: Coupon details, discount amount, validity

Telegram Integration

  • GET /api/v1/user/telegram/getBotInfo
    • Purpose: Get Telegram bot information
    • Returns: Bot connection info
    • Data: Bot details, connection status

Configuration

  • GET /api/v1/user/comm/config

    • Purpose: Get user-specific configuration
    • Returns: User configuration settings
    • Data: User preferences, feature availability
  • POST /api/v1/user/comm/getStripePublicKey

    • Purpose: Get Stripe public key for payments
    • Returns: Stripe configuration
    • Data: Stripe public key for payment processing

Knowledge Base

  • GET /api/v1/user/knowledge/fetch

    • Purpose: Get knowledge base articles
    • Returns: List of help articles
    • Data: Articles, categories, content
  • GET /api/v1/user/knowledge/getCategory

    • Purpose: Get knowledge base categories
    • Returns: List of categories
    • Data: Category structure and organization

Statistics

  • GET /api/v1/user/stat/getTrafficLog
    • Purpose: Get traffic usage logs
    • Returns: Traffic usage history
    • Data: Traffic logs, usage patterns, timestamps

V2 User APIs

  • GET /api/v2/user/resetSecurity

    • Purpose: Reset security credentials
    • Returns: New security credentials
    • Data: Updated security tokens
  • GET /api/v2/user/info

    • Purpose: Get user information (V2)
    • Returns: User profile data
    • Data: Enhanced user profile information

📱 Client APIs (Client Authentication)

Subscription

  • GET /api/v1/client/subscribe
    • Purpose: Get subscription configuration
    • Returns: Client configuration for VPN apps
    • Data: Server configurations, protocols, connection details

App Configuration

  • GET /api/v1/client/app/getConfig

    • Purpose: Get app configuration
    • Returns: App configuration settings
    • Data: App settings, features, URLs
  • GET /api/v1/client/app/getVersion

    • Purpose: Get app version information
    • Returns: Version details
    • Data: Current version, update availability

🖥️ Server APIs (Server Authentication)

UniProxy

  • GET /api/v1/server/UniProxy/config

    • Purpose: Get server configuration
    • Returns: Server configuration
    • Data: Server settings and parameters
  • GET /api/v1/server/UniProxy/user

    • Purpose: Get user data for server
    • Returns: User information for server
    • Data: User access rights, quotas, settings
  • POST /api/v1/server/UniProxy/push

    • Purpose: Push data to server
    • Returns: Push status
    • Data: Data synchronization confirmation
  • POST /api/v1/server/UniProxy/alive

    • Purpose: Server heartbeat
    • Returns: Alive status
    • Data: Server health status
  • GET /api/v1/server/UniProxy/alivelist

    • Purpose: Get alive servers list
    • Returns: List of active servers
    • Data: Server status and availability
  • POST /api/v1/server/UniProxy/status

    • Purpose: Update server status
    • Returns: Status update confirmation
    • Data: Server status update

Shadowsocks Tidalab

  • GET /api/v1/server/ShadowsocksTidalab/user

    • Purpose: Get user data for Shadowsocks
    • Returns: Shadowsocks user configuration
    • Data: Shadowsocks-specific user settings
  • POST /api/v1/server/ShadowsocksTidalab/submit

    • Purpose: Submit Shadowsocks data
    • Returns: Submission status
    • Data: Data submission confirmation

Trojan Tidalab

  • GET /api/v1/server/TrojanTidalab/config

    • Purpose: Get Trojan server configuration
    • Returns: Trojan configuration
    • Data: Trojan server settings
  • GET /api/v1/server/TrojanTidalab/user

    • Purpose: Get user data for Trojan
    • Returns: Trojan user configuration
    • Data: Trojan-specific user settings
  • POST /api/v1/server/TrojanTidalab/submit

    • Purpose: Submit Trojan data
    • Returns: Submission status
    • Data: Data submission confirmation

👨‍💼 Staff APIs (Staff Authentication)

Note: Staff functionality exists but appears to be integrated into admin routes rather than having dedicated staff routes. Staff users have is_staff flag and can access certain admin functions with limited permissions.

User Management (Staff Level)

  • Staff can manage non-admin, non-staff users
  • Limited user update capabilities
  • Send emails to users
  • Ban users
  • Access user information

🔧 Admin APIs (Administrator Authentication)

Configuration Management

  • GET /api/v2/{admin_path}/config/fetch

    • Purpose: Get system configuration
    • Returns: Complete system settings
    • Data: All configuration parameters
  • POST /api/v2/{admin_path}/config/save

    • Purpose: Save system configuration
    • Returns: Save status
    • Data: Configuration update confirmation
  • GET /api/v2/{admin_path}/config/getEmailTemplate

    • Purpose: Get email templates
    • Returns: Email template configurations
    • Data: Email templates and settings
  • GET /api/v2/{admin_path}/config/getThemeTemplate

    • Purpose: Get theme templates
    • Returns: Theme configurations
    • Data: Available themes and settings
  • POST /api/v2/{admin_path}/config/setTelegramWebhook

    • Purpose: Configure Telegram webhook
    • Returns: Webhook setup status
    • Data: Telegram integration status
  • POST /api/v2/{admin_path}/config/testSendMail

    • Purpose: Test email configuration
    • Returns: Email test results
    • Data: Email sending test status

Plan Management

  • GET /api/v2/{admin_path}/plan/fetch

    • Purpose: Get all plans (admin view)
    • Returns: Complete plan list with admin details
    • Data: All plans with user counts, revenue, admin settings
  • POST /api/v2/{admin_path}/plan/save

    • Purpose: Create/update plan
    • Returns: Plan save status
    • Data: Plan creation/update confirmation
  • POST /api/v2/{admin_path}/plan/drop

    • Purpose: Delete plan
    • Returns: Deletion status
    • Data: Plan deletion confirmation
  • POST /api/v2/{admin_path}/plan/update

    • Purpose: Update plan details
    • Returns: Update status
    • Data: Plan update confirmation
  • POST /api/v2/{admin_path}/plan/sort

    • Purpose: Reorder plans
    • Returns: Sort status
    • Data: Plan ordering confirmation

Server Management

Server Groups

  • GET /api/v2/{admin_path}/server/group/fetch

    • Purpose: Get server groups
    • Returns: List of server groups
    • Data: Group configurations and permissions
  • POST /api/v2/{admin_path}/server/group/save

    • Purpose: Create/update server group
    • Returns: Group save status
    • Data: Group creation/update confirmation
  • POST /api/v2/{admin_path}/server/group/drop

    • Purpose: Delete server group
    • Returns: Deletion status
    • Data: Group deletion confirmation

Server Routes

  • GET /api/v2/{admin_path}/server/route/fetch

    • Purpose: Get server routes
    • Returns: List of server routes
    • Data: Route configurations and rules
  • POST /api/v2/{admin_path}/server/route/save

    • Purpose: Create/update server route
    • Returns: Route save status
    • Data: Route creation/update confirmation
  • POST /api/v2/{admin_path}/server/route/drop

    • Purpose: Delete server route
    • Returns: Deletion status
    • Data: Route deletion confirmation

Server Management

  • GET /api/v2/{admin_path}/server/manage/getNodes

    • Purpose: Get server nodes
    • Returns: List of server nodes
    • Data: Node details, status, configuration
  • POST /api/v2/{admin_path}/server/manage/update

    • Purpose: Update server
    • Returns: Update status
    • Data: Server update confirmation
  • POST /api/v2/{admin_path}/server/manage/save

    • Purpose: Create server
    • Returns: Creation status
    • Data: Server creation confirmation
  • POST /api/v2/{admin_path}/server/manage/drop

    • Purpose: Delete server
    • Returns: Deletion status
    • Data: Server deletion confirmation
  • POST /api/v2/{admin_path}/server/manage/copy

    • Purpose: Copy server configuration
    • Returns: Copy status
    • Data: Server copy confirmation
  • POST /api/v2/{admin_path}/server/manage/sort

    • Purpose: Reorder servers
    • Returns: Sort status
    • Data: Server ordering confirmation

Order Management

  • GET/POST /api/v2/{admin_path}/order/fetch

    • Purpose: Get orders with filtering
    • Returns: Paginated order list
    • Data: Order details, user info, payment status
  • POST /api/v2/{admin_path}/order/update

    • Purpose: Update order
    • Returns: Update status
    • Data: Order update confirmation
  • POST /api/v2/{admin_path}/order/assign

    • Purpose: Assign order to plan
    • Returns: Assignment status
    • Data: Order assignment confirmation
  • POST /api/v2/{admin_path}/order/paid

    • Purpose: Mark order as paid
    • Returns: Payment status
    • Data: Payment confirmation
  • POST /api/v2/{admin_path}/order/cancel

    • Purpose: Cancel order
    • Returns: Cancellation status
    • Data: Order cancellation confirmation
  • POST /api/v2/{admin_path}/order/detail

    • Purpose: Get order details
    • Returns: Detailed order information
    • Data: Complete order information

User Management

  • GET/POST /api/v2/{admin_path}/user/fetch

    • Purpose: Get users with filtering and pagination
    • Returns: Paginated user list
    • Data: User details, subscription info, usage stats
  • POST /api/v2/{admin_path}/user/update

    • Purpose: Update user
    • Returns: Update status
    • Data: User update confirmation
  • GET /api/v2/{admin_path}/user/getUserInfoById

    • Purpose: Get specific user info
    • Returns: User details
    • Data: Complete user information
  • POST /api/v2/{admin_path}/user/generate

    • Purpose: Generate user account
    • Returns: Generation status
    • Data: New user account details
  • POST /api/v2/{admin_path}/user/dumpCSV

    • Purpose: Export users to CSV
    • Returns: CSV export
    • Data: User data in CSV format
  • POST /api/v2/{admin_path}/user/sendMail

    • Purpose: Send email to users
    • Returns: Email sending status
    • Data: Email delivery confirmation
  • POST /api/v2/{admin_path}/user/ban

    • Purpose: Ban users
    • Returns: Ban status
    • Data: User ban confirmation
  • POST /api/v2/{admin_path}/user/resetSecret

    • Purpose: Reset user secrets
    • Returns: Reset status
    • Data: Secret reset confirmation
  • POST /api/v2/{admin_path}/user/setInviteUser

    • Purpose: Set invite relationships
    • Returns: Setting status
    • Data: Invite relationship confirmation
  • POST /api/v2/{admin_path}/user/destroy

    • Purpose: Delete user
    • Returns: Deletion status
    • Data: User deletion confirmation

Statistics & Analytics

  • GET /api/v2/{admin_path}/stat/getOverride

    • Purpose: Get system overview
    • Returns: System statistics overview
    • Data: Key metrics, revenue, user counts
  • GET /api/v2/{admin_path}/stat/getStats

    • Purpose: Get detailed statistics
    • Returns: Comprehensive statistics
    • Data: Revenue, usage, growth metrics
  • GET /api/v2/{admin_path}/stat/getServerLastRank

    • Purpose: Get server performance ranking
    • Returns: Server ranking data
    • Data: Server performance metrics
  • GET /api/v2/{admin_path}/stat/getServerYesterdayRank

    • Purpose: Get yesterday's server ranking
    • Returns: Historical server data
    • Data: Previous day server metrics
  • GET /api/v2/{admin_path}/stat/getOrder

    • Purpose: Get order statistics
    • Returns: Order analytics
    • Data: Order trends, revenue data
  • GET/POST /api/v2/{admin_path}/stat/getStatUser

    • Purpose: Get user statistics
    • Returns: User analytics
    • Data: User growth, activity metrics
  • GET /api/v2/{admin_path}/stat/getRanking

    • Purpose: Get ranking data
    • Returns: Various rankings
    • Data: User, server, revenue rankings
  • GET /api/v2/{admin_path}/stat/getStatRecord

    • Purpose: Get statistical records
    • Returns: Historical statistics
    • Data: Historical data records
  • GET /api/v2/{admin_path}/stat/getTrafficRank

    • Purpose: Get traffic ranking
    • Returns: Traffic usage rankings
    • Data: Traffic usage by users/servers

Notice Management

  • GET /api/v2/{admin_path}/notice/fetch

    • Purpose: Get system notices
    • Returns: List of notices
    • Data: Notice content, visibility, scheduling
  • POST /api/v2/{admin_path}/notice/save

    • Purpose: Create notice
    • Returns: Creation status
    • Data: Notice creation confirmation
  • POST /api/v2/{admin_path}/notice/update

    • Purpose: Update notice
    • Returns: Update status
    • Data: Notice update confirmation
  • POST /api/v2/{admin_path}/notice/drop

    • Purpose: Delete notice
    • Returns: Deletion status
    • Data: Notice deletion confirmation
  • POST /api/v2/{admin_path}/notice/show

    • Purpose: Toggle notice visibility
    • Returns: Visibility status
    • Data: Notice visibility confirmation
  • POST /api/v2/{admin_path}/notice/sort

    • Purpose: Reorder notices
    • Returns: Sort status
    • Data: Notice ordering confirmation

Ticket Management

  • GET/POST /api/v2/{admin_path}/ticket/fetch

    • Purpose: Get support tickets
    • Returns: Paginated ticket list
    • Data: Ticket details, user info, status
  • POST /api/v2/{admin_path}/ticket/reply

    • Purpose: Reply to ticket
    • Returns: Reply status
    • Data: Ticket reply confirmation
  • POST /api/v2/{admin_path}/ticket/close

    • Purpose: Close ticket
    • Returns: Closure status
    • Data: Ticket closure confirmation

Coupon Management

  • GET/POST /api/v2/{admin_path}/coupon/fetch

    • Purpose: Get coupons
    • Returns: List of coupons
    • Data: Coupon details, usage statistics
  • POST /api/v2/{admin_path}/coupon/generate

    • Purpose: Generate coupons
    • Returns: Generation status
    • Data: New coupon codes
  • POST /api/v2/{admin_path}/coupon/drop

    • Purpose: Delete coupon
    • Returns: Deletion status
    • Data: Coupon deletion confirmation
  • POST /api/v2/{admin_path}/coupon/show

    • Purpose: Toggle coupon visibility
    • Returns: Visibility status
    • Data: Coupon visibility confirmation
  • POST /api/v2/{admin_path}/coupon/update

    • Purpose: Update coupon
    • Returns: Update status
    • Data: Coupon update confirmation

Knowledge Base Management

  • GET /api/v2/{admin_path}/knowledge/fetch

    • Purpose: Get knowledge articles
    • Returns: List of articles
    • Data: Article content, categories, visibility
  • GET /api/v2/{admin_path}/knowledge/getCategory

    • Purpose: Get knowledge categories
    • Returns: Category structure
    • Data: Category hierarchy and organization
  • POST /api/v2/{admin_path}/knowledge/save

    • Purpose: Create/update article
    • Returns: Save status
    • Data: Article save confirmation
  • POST /api/v2/{admin_path}/knowledge/show

    • Purpose: Toggle article visibility
    • Returns: Visibility status
    • Data: Article visibility confirmation
  • POST /api/v2/{admin_path}/knowledge/drop

    • Purpose: Delete article
    • Returns: Deletion status
    • Data: Article deletion confirmation
  • POST /api/v2/{admin_path}/knowledge/sort

    • Purpose: Reorder articles
    • Returns: Sort status
    • Data: Article ordering confirmation

Payment Management

  • GET /api/v2/{admin_path}/payment/fetch

    • Purpose: Get payment methods
    • Returns: List of payment providers
    • Data: Payment method configurations
  • GET /api/v2/{admin_path}/payment/getPaymentMethods

    • Purpose: Get available payment methods
    • Returns: Payment method list
    • Data: Available payment options
  • POST /api/v2/{admin_path}/payment/getPaymentForm

    • Purpose: Get payment form configuration
    • Returns: Form configuration
    • Data: Payment form settings
  • POST /api/v2/{admin_path}/payment/save

    • Purpose: Save payment method
    • Returns: Save status
    • Data: Payment method save confirmation
  • POST /api/v2/{admin_path}/payment/drop

    • Purpose: Delete payment method
    • Returns: Deletion status
    • Data: Payment method deletion confirmation
  • POST /api/v2/{admin_path}/payment/show

    • Purpose: Toggle payment method visibility
    • Returns: Visibility status
    • Data: Payment method visibility confirmation
  • POST /api/v2/{admin_path}/payment/sort

    • Purpose: Reorder payment methods
    • Returns: Sort status
    • Data: Payment method ordering confirmation

System Management

  • GET /api/v2/{admin_path}/system/getSystemStatus

    • Purpose: Get system status
    • Returns: System health information
    • Data: Server status, performance metrics
  • GET /api/v2/{admin_path}/system/getQueueStats

    • Purpose: Get queue statistics
    • Returns: Queue performance data
    • Data: Queue metrics, job statistics
  • GET /api/v2/{admin_path}/system/getQueueWorkload

    • Purpose: Get queue workload
    • Returns: Current queue workload
    • Data: Queue load and processing times
  • GET /api/v2/{admin_path}/system/getQueueMasters

    • Purpose: Get queue masters (Horizon)
    • Returns: Queue master status
    • Data: Horizon supervisor information
  • GET /api/v2/{admin_path}/system/getSystemLog

    • Purpose: Get system logs
    • Returns: System log entries
    • Data: Application logs, errors, events
  • GET /api/v2/{admin_path}/system/getHorizonFailedJobs

    • Purpose: Get failed jobs
    • Returns: Failed job list
    • Data: Failed job details and errors
  • POST /api/v2/{admin_path}/system/clearSystemLog

    • Purpose: Clear system logs
    • Returns: Clear status
    • Data: Log clearing confirmation
  • GET /api/v2/{admin_path}/system/getLogClearStats

    • Purpose: Get log clearing statistics
    • Returns: Log management stats
    • Data: Log storage and clearing metrics

Theme Management

  • GET /api/v2/{admin_path}/theme/getThemes

    • Purpose: Get available themes
    • Returns: Theme list
    • Data: Theme details, configurations
  • POST /api/v2/{admin_path}/theme/upload

    • Purpose: Upload theme
    • Returns: Upload status
    • Data: Theme upload confirmation
  • POST /api/v2/{admin_path}/theme/delete

    • Purpose: Delete theme
    • Returns: Deletion status
    • Data: Theme deletion confirmation
  • POST /api/v2/{admin_path}/theme/saveThemeConfig

    • Purpose: Save theme configuration
    • Returns: Save status
    • Data: Theme configuration save confirmation
  • POST /api/v2/{admin_path}/theme/getThemeConfig

    • Purpose: Get theme configuration
    • Returns: Theme configuration
    • Data: Current theme settings

Plugin Management

  • GET /api/v2/{admin_path}/plugin/getPlugins

    • Purpose: Get installed plugins
    • Returns: Plugin list
    • Data: Plugin details, status, configuration
  • POST /api/v2/{admin_path}/plugin/upload

    • Purpose: Upload plugin
    • Returns: Upload status
    • Data: Plugin upload confirmation
  • POST /api/v2/{admin_path}/plugin/delete

    • Purpose: Delete plugin
    • Returns: Deletion status
    • Data: Plugin deletion confirmation
  • POST /api/v2/{admin_path}/plugin/install

    • Purpose: Install plugin
    • Returns: Installation status
    • Data: Plugin installation confirmation
  • POST /api/v2/{admin_path}/plugin/uninstall

    • Purpose: Uninstall plugin
    • Returns: Uninstallation status
    • Data: Plugin uninstallation confirmation
  • POST /api/v2/{admin_path}/plugin/enable

    • Purpose: Enable plugin
    • Returns: Enable status
    • Data: Plugin enable confirmation
  • POST /api/v2/{admin_path}/plugin/disable

    • Purpose: Disable plugin
    • Returns: Disable status
    • Data: Plugin disable confirmation
  • GET /api/v2/{admin_path}/plugin/config

    • Purpose: Get plugin configuration
    • Returns: Plugin configuration
    • Data: Plugin settings
  • POST /api/v2/{admin_path}/plugin/config

    • Purpose: Update plugin configuration
    • Returns: Update status
    • Data: Plugin configuration update confirmation

Traffic Reset Management

  • GET /api/v2/{admin_path}/traffic-reset/logs

    • Purpose: Get traffic reset logs
    • Returns: Reset log entries
    • Data: Traffic reset history and details
  • GET /api/v2/{admin_path}/traffic-reset/stats

    • Purpose: Get traffic reset statistics
    • Returns: Reset statistics
    • Data: Traffic reset metrics and trends
  • GET /api/v2/{admin_path}/traffic-reset/user/{userId}/history

    • Purpose: Get user traffic reset history
    • Returns: User-specific reset history
    • Data: Individual user reset records
  • POST /api/v2/{admin_path}/traffic-reset/reset-user

    • Purpose: Reset user traffic
    • Returns: Reset status
    • Data: User traffic reset confirmation

📝 Notes

  1. Admin Path: The {admin_path} in V2 admin routes is dynamically generated based on the secure_path or frontend_admin_path configuration setting.

  2. Authentication Middleware:

    • user: Requires valid user authentication
    • admin: Requires admin privileges
    • staff: Requires staff privileges
    • client: Requires client token authentication
    • server: Requires server authentication
  3. Response Format: Most endpoints return data in a standardized format:

    {
      "data": [...], // Actual response data
      "message": "Success message",
      "status": true/false
    }
    
  4. Error Handling: Failed requests return appropriate HTTP status codes with error messages.

  5. Pagination: Many list endpoints support pagination with current and pageSize parameters.

  6. Filtering: Admin endpoints often support filtering and sorting parameters.

This documentation provides a comprehensive overview of all available API endpoints in the Xboard system. Each endpoint serves specific functionality within the VPN service management platform.