EasyXrayEasyXray
مرجعمرجع API

مرجع API

REST API پنل EasyXray — فضای نام، احراز هویت، inboundها، کلاینت‌ها، آمار سرور و موارد دیگر، تولیدشده از مشخصات OpenAPI.

پنل EasyXray یک REST API برای خودکارسازی در اختیار می‌گذارد. صفحات این بخش از مشخصات OpenAPI خود پنل تولید شده‌اند، بنابراین همواره با اسکیمایی که پنل واقعاً ارائه می‌دهد هماهنگ هستند.

فضای نام

هر آنچه پنل ارائه می‌دهد زیر مسیر پایهٔ پیکربندی‌شدهٔ وب (webBasePath) و سپس easyxray قرار دارد:

سطحمسیر
رابط پنل<basePath>/easyxray/…
REST API<basePath>/easyxray/api/v1/…
WebSocket<basePath>/easyxray/ws
مشخصات OpenAPI<basePath>/easyxray/api/v1/openapi.json

با مسیر پایهٔ پیش‌فرض (/)، برای مثال یعنی:

GET  /easyxray/api/v1/inbounds/list
POST /easyxray/api/v1/clients/add
GET  /easyxray/api/v1/server/status
GET  /easyxray/api/v1/openapi.json

فضای نام easyxray نام مستعار ندارد. نسخه‌های پیشین پنل X-UI/3x-ui این endpointها را زیر /panel/api/… ارائه می‌کردند؛ EasyXray روی آن پیشوند پاسخی نمی‌دهد و هیچ ریدایرکت سازگاری نصب نشده است. هر اسکریپت، ربات یا داشبوردی که برای مسیرهای قدیمی نوشته‌اید باید به مسیرهای /easyxray/api/v1/… در بالا به‌روزرسانی شود.

احراز هویت

درخواست‌ها یا با یک کوکی نشست — که هنگام ورود به پنل تنظیم می‌شود و نامش easyxray است — یا با یک توکن Bearer احراز هویت می‌شوند:

Authorization: Bearer <token>

توکن‌های API را در تنظیمات → امنیت → توکن API بسازید؛ این توکن‌ها اعتبارنامه‌های ادمین کامل هستند، پس آن‌ها را مانند رمز عبور پنل نگهداری کنید. به توکن‌های API مراجعه کنید.

برای هر endpointی در این بخش یک درخواست احرازهویت‌شده بسازید:

API request builder

Build an authenticated cURL command or fetch() snippet for any EasyXray panel API endpoint under /easyxray/api/v1/*.

cURL
curl -X GET 'https://panel.example.com:2053/easyxray/api/v1/inbounds/list' \
  -H 'Authorization: Bearer <token>'
fetch()
await fetch('https://panel.example.com:2053/easyxray/api/v1/inbounds/list', {
  method: 'GET',
  headers: { 'Authorization': 'Bearer <token>' },
});

مرور بر اساس حوزه

صفحات هر حوزه با اجرای pnpm gen:api از مشخصات ثبت‌شدهٔ public/openapi.json بازتولید می‌شوند (خود مشخصات توسط frontend/scripts/build-openapi.mjs در مخزن پنل منتشر می‌شود). صفحات تگ تولیدشده را به‌صورت دستی ویرایش نکنید — منبع مشخصات را تغییر دهید و دوباره تولید کنید.

On this page