راهنمای جامع برای توسعهدهندگان رباتها و سرویسهای مدیریت کاربران VPN.
هدرهای عمومی مورد نیاز:
X-API-KEY: YOUR_API_KEY
(کلید API شما)Content-Type: application/json
(برای درخواستهای POST و PUT که دارای Body هستند)bulk_count
ارائه نشده یا 0 باشد، این فیلد الزامی است. در صورت ارائه bulk_count
بزرگتر از 0، این فیلد نباید ارسال شود.
"fixed_date"
یا "flexible_days"
.
activation_type
برابر با flexible_days
باشد و باید مثبت باشد.
fixed_date
. تعداد روز تا انقضا از لحظه ایجاد. اگر expiry_date_str
نباشد، این استفاده میشود.
fixed_date
. تاریخ دقیق انقضا. بر expiry_days
اولویت دارد.
null
یعنی نامحدود.
"GB"
یا "MB"
.
[1, 3]
bulk_count
برای ساخت گروهی استفاده میکنید، پارامتر username
نباید ارسال شود.activation_type
برابر با "flexible_days"
باشد، پارامتر pending_activation_days
الزامی و باید مثبت باشد.activation_type
برابر با "fixed_date"
باشد (یا ارسال نشود)، و هیچکدام از expiry_date_str
یا expiry_days
ارسال نشوند، تاریخ انقضا پیشفرض 30 روز خواهد بود.1. ایجاد کاربر `mohammad_user` با انقضای پیشفرض و 5GB ترافیک:
2. ایجاد کاربر `maryam_node_access` با 10 روز اعتبار و دسترسی به نودهای 1 و 2:
3. ایجاد کاربر `kaveh_longterm` با تاریخ انقضای دقیق "2026-01-15":
4. ایجاد 3 کاربر گروهی با فعالسازی انعطافپذیر (45 روز پس از اولین اتصال) و 2 اتصال:
5. ایجاد کاربر `sima_flexible` با فعالسازی انعطافپذیر (20 روز) و 100MB ترافیک:
مقدار <username>
را با نام کاربری مورد نظر جایگزین کنید.
فقط فیلدهایی را که قصد تغییرشان را دارید ارسال کنید.
null
ارسال کنید."GB"
یا "MB"
."fixed_date"
یا "flexible_days"
.flexible_days
(اگر کاربر هنوز متصل نشده). باید مثبت باشد.fixed_date
)، null
ارسال کنید.[]
یعنی حذف همه.first_connection_at
دارد):
expiry_date_str
یا expiry_days
تغییر دهید."flexible_days"
بوده، به "activated_flexible"
تغییر میکند و دیگر نمیتوان activation_type
یا pending_activation_days
را تغییر داد.first_connection_at
ندارد):
activation_type
را بین "fixed_date"
و "flexible_days"
تغییر دهید.activation_type
به "flexible_days"
تغییر کند، pending_activation_days
معتبر (مثبت) الزامی است.1. افزایش اتصالات همزمان کاربر `mohammad_user` به 3:
2. تمدید اعتبار کاربر `maryam_node_access` به 15 روز دیگر و حذف محدودیت حجمی:
3. تغییر محدودیت حجمی کاربر `kaveh_longterm` به 200MB و تغییر یادداشت:
4. برای کاربر `mehran_flex_candidate` (که هنوز متصل نشده)، تغییر نوع به `flexible_days` با 45 روز اعتبار و دسترسی به نود [3, 4]:
5. نامحدود کردن تاریخ انقضای کاربر `farhad_fixed` (که نوع فعالسازیش `fixed_date` است):
مقدار <username>
را با نام کاربری مورد نظر جایگزین کنید.
1. دریافت اطلاعات کاربر `mohammad_user`:
2. دریافت اطلاعات کاربر `sara_vip`:
3. تلاش برای دریافت اطلاعات کاربری که وجود ندارد (`user_is_missing`):
انتظار میرود پاسخی مانند {"success": false, "message": "User not found"}
با کد وضعیت 404 دریافت شود.
این API وضعیت فعال بودن کاربر را معکوس میکند. اگر فعال باشد، غیرفعال میشود و بالعکس. اتصالات فعال کاربر نیز قطع (Kill) خواهند شد.
1. تغییر وضعیت کاربر `mohammad_user` (اگر فعال باشد، غیرفعال میشود):
2. تغییر وضعیت کاربر `parsa_active` (فرضاً فعال است، پس غیرفعال میشود):
3. تغییر وضعیت کاربر `navid_inactive` (فرضاً غیرفعال است، پس فعال میشود):
4. تلاش برای تغییر وضعیت کاربر ناموجود (`nouser`):
انتظار پاسخ خطا 404.
5. تغییر وضعیت کاربر `bahram_test`:
این عملیات کاربر را از سیستم، فایلهای OVPN و CCD حذف میکند و تغییرات را به نودها نیز اعمال میکند.
1. حذف کاربر `temp_user_123`:
2. حذف کاربر `old_account_xyz`:
3. تلاش برای حذف کاربری که وجود ندارد (`user_not_found`):
انتظار پاسخ خطا 404.
1. دریافت لینک سابسکریپشن برای کاربر `mohammad_user`:
2. دریافت لینک سابسکریپشن برای کاربر `sara_vip`:
3. تلاش برای دریافت لینک کاربری که وجود ندارد (`nouser_sub`):
انتظار پاسخ خطا 404.
این API مقادیر ترافیک مصرفی (`download_bytes` و `upload_bytes`) کاربر را در دیتابیس صفر میکند.
1. ریست کردن ترافیک مصرفی کاربر `mohammad_user`:
2. ریست کردن ترافیک مصرفی کاربر `kazem_heavyuser`:
3. تلاش برای ریست ترافیک کاربری که وجود ندارد (`phantom_userX`):
انتظار پاسخ خطا 404.