Skip to content

Instantly share code, notes, and snippets.

@mehdikhody
Last active July 7, 2026 14:48
Show Gist options
  • Select an option

  • Save mehdikhody/9a862801a2e41f6b5fb6bbc7e1326044 to your computer and use it in GitHub Desktop.

Select an option

Save mehdikhody/9a862801a2e41f6b5fb6bbc7e1326044 to your computer and use it in GitHub Desktop.
Postman collection moved here:
https://documenter.getpostman.com/view/16802678/2s9YkgD5jm
@azadi1984

azadi1984 commented Sep 20, 2023

Copy link
Copy Markdown

توی postman وقتی رکوئست login با موفقیت ارسال میشه کوکی سشن توی Postman ست میشه
ولی وقتی توی لوکال هاست با express.js و axios رکوئست login ارسال میشه نتیجه true برمیگردونه , توی هدر response هم set-cookie موجوده ولی توی مرورگر کوکی سشن ست نمیشه
میشه راهنمایی کنید ؟

@Incognito-Coder

Copy link
Copy Markdown

توی postman وقتی رکوئست login با موفقیت ارسال میشه کوکی سشن توی Postman ست میشه ولی وقتی توی لوکال هاست با express.js و axios رکوئست login ارسال میشه نتیجه true برمیگردونه , توی هدر response هم set-cookie موجوده ولی توی مرورگر کوکی سشن ست نمیشه میشه راهنمایی کنید ؟

کوکی که موقع لاگین دریافت میشه رو شما باید جایی ذخیره کنید مثلا توی فایل بعد اونو صدا بزنید موقع ارسال درخواست ها.
پیشنهاد میکنم این صفحه رو هم نگاه بندازید برای CookieJar

@mehdikhody

Copy link
Copy Markdown
Author

ax

توی postman وقتی رکوئست login با موفقیت ارسال میشه کوکی سشن توی Postman ست میشه ولی وقتی توی لوکال هاست با express.js و axios رکوئست login ارسال میشه نتیجه true برمیگردونه , توی هدر response هم set-cookie موجوده ولی توی مرورگر کوکی سشن ست نمیشه میشه راهنمایی کنید ؟

باید داخل درخواست های axios تنظیمات زیر را قرار بدین.

const data = qs.stringify({
    username: 'admin',
    password: 'admin'
});

await axios.post('http://localhost:2053/login', data, {
    withCredentials: true,  // include cookies
    headers: {
        "Content-Type": "application/x-www-form-urlencoded",
        Accept: "application/json",
    },
});

@Vinegreatt

Copy link
Copy Markdown

hello! how can i set flow=xtls-rprx-vision with API method? i see only limitIP and any method, but not flow.. thanks a lot

@mehdikhody

mehdikhody commented Oct 24, 2023

Copy link
Copy Markdown
Author

hello! how can i set flow=xtls-rprx-vision with API method? i see only limitIP and any method, but not flow.. thanks a lot

برای پیدا کردن پارامتر مناسب با تنظیمات خودتان در پنل ثنایی وارد Inspect مرورگر بخش Network شوید. inbound یا client مورد نظر را ایجاد کنید و به Request بخش payload مراجعه کنید.

در مورد درخواست شما:

POST /panel/api/inbounds/addClient HTTP/1.1
Host: {HOST}:{PORT}
Accept: application/json
Content-Type: application/json
Cookie: session={SESSION_ID}

{
    "id": 38,
    "settings": {
        "clients": [
            {
                "id": "717c9fff-f49a-4613-86ea-7d1263a3a0af",
                "flow": "xtls-rprx-vision",
                "email": "cgmzcloo",
                "limitIp": 0,
                "totalGB": 0,
                "expiryTime": 0,
                "enable": true,
                "tgId": "",
                "subId": "jn25gjs56gvw1b7d"
            }
        ]
    }
}

Screenshot 2023-10-24 121542

@jetxpro

jetxpro commented Nov 6, 2023

Copy link
Copy Markdown

سلام و خسته نباشید
سلام من اینی که گفتنو زدم
اما اررور داره
این ارسال من هستش
{ "id": 1, "clients": [{ "method": "aes-256-gcm", "password": "bQYKdAWGKlLWkYIHzw7KvyMqFn90hOYmWGT0+W+i4Zo=", "email": "9bbm1a5i", "limitIp": 0, "totalGB": 0, "expiryTime": 0, "enable": true, "tgId": "", "subId": "o7ujzm2nxvhycy64" }] }
خطایی که میگیرم
{ "success": false, "msg": "Something went wrong!Fail: unexpected end of JSON input", "obj": null }

sss

@jetxpro

jetxpro commented Nov 6, 2023

Copy link
Copy Markdown

hello! how can i set flow=xtls-rprx-vision with API method? i see only limitIP and any method, but not flow.. thanks a lot

برای پیدا کردن پارامتر مناسب با تنظیمات خودتان در پنل ثنایی وارد Inspect مرورگر بخش Network شوید. inbound یا client مورد نظر را ایجاد کنید و به Request بخش payload مراجعه کنید.

در مورد درخواست شما:

POST /panel/api/inbounds/addClient HTTP/1.1
Host: {HOST}:{PORT}
Accept: application/json
Content-Type: application/json
Cookie: session={SESSION_ID}

{
  "id": 38,
  "clients": [{
    "id": "717c9fff-f49a-4613-86ea-7d1263a3a0af",
    "flow": "xtls-rprx-vision",
    "email": "cgmzcloo",
    "limitIp": 0,
    "totalGB": 0,
    "expiryTime": 0,
    "enable": true,
    "tgId": "",
    "subId": "jn25gjs56gvw1b7d"
  }]
}

Screenshot 2023-10-24 121542
من خطا دارم
تصویر بالا رو نگاه کنید

{ "success": false, "msg": "Something went wrong!Fail: unexpected end of JSON input", "obj": null }

@hr1510

hr1510 commented Nov 16, 2023

Copy link
Copy Markdown

hello! how can i set flow=xtls-rprx-vision with API method? i see only limitIP and any method, but not flow.. thanks a lot

برای پیدا کردن پارامتر مناسب با تنظیمات خودتان در پنل ثنایی وارد Inspect مرورگر بخش Network شوید. inbound یا client مورد نظر را ایجاد کنید و به Request بخش payload مراجعه کنید.

.....
درود بر شما ، من هم مثل دوستان به همین خطا
{ "success": false, "msg": "Something went wrong!Fail: unexpected end of JSON input", "obj": null }
بر خوردم ، امکانش هست راهنمایی بفرمایید ؟

آپدیت این نوشته :
با توجه به راهنمایی @Ghasem1243 در پست : MHSanaei/3x-ui#953

من با استفاده از php اطلاعات رو برای افزودن کلاینت جدید به کانفیگ ارسال میکردم .
البته با استفاده از کد دوستان
منتها این مشکل که برخوردم بابت نوع دیتا ارسال شده به API هست.
که باید دیتا را در قدم اخر با استفاده از http_build_query برای تبدیل آرایه به رشته‌ای از پارامترهای URL-encoded تبدیل کنیم بعد ارسال کنیم و مثلا :
در این کد که اساتید زحمت کشیدن :
MHSanaei/3x-ui#324
تنظیم پست فیلد برای CURL در متند sendPOST باید به شکل زیر باشد 👍
CURLOPT_POSTFIELDS => http_build_query($data),

به جای
CURLOPT_POSTFIELDS => json_encode($data)

@mehdikhody

mehdikhody commented Nov 21, 2023

Copy link
Copy Markdown
Author

خطا و مشکل از نحوه پردازش JSON در زبان GO و وب سرور پنل است. برای برطرف کردن مشکل شما باید آرایه ها یا آبجکت های زیری را هم تبدیل به متن کنید.

یک خطا هم در قسمت پیگربندی داده ها بنده انجام داده بودم که آن را در پست بالا و همین پست نیز برطرف کردم.

{
    "id": 38,
    "settings": "{\"clients\":[{\"id\":\"717c9fff-f49a-4613-86ea-7d1263a3a0af\",\"flow\":\"xtls-rprx-vision\",\"email\":\"cgmzcloo\",\"limitIp\":0,\"totalGB\":0,\"expiryTime\":0,\"enable\":true,\"tgId\":\"\",\"subId\":\"jn25gjs56gvw1b7d\"}]}"
}

مثال زیر در PHP و Javascript:

$data = json_encode([
    "id" => 38,
    "settings" => json_encode([
        "clients" => [
            [
                "id" => "717c9fff-f49a-4613-86ea-7d1263a3a0af",
                "flow" => "xtls-rprx-vision",
                "email" => "cgmzcloo",
                "limitIp" => 0,
                "totalGB" => 0,
                "expiryTime" => 0,
                "enable" => true,
                "tgId" => "",
                "subId" => "jn25gjs56gvw1b7d"
            ]
        ],
    ])
]);
const data = JSON.stringify({
    id: 38,
    settings: JSON.stringify({
        clients: [
            {
                id: '717c9fff-f49a-4613-86ea-7d1263a3a0af',
                flow: 'xtls-rprx-vision',
                email: 'cgmzcloo',
                limitIp: 0,
                totalGB: 0,
                expiryTime: 0,
                enable: true,
                tgId: '',
                subId: 'jn25gjs56gvw1b7d'
            }
        ]
    })
});

@Vinegreatt

Copy link
Copy Markdown
"id": 38,
"settings": "{\"clients\":[{\"id\":\"717c9fff-f49a-4613-86ea-7d1263a3a0af\",\"flow\":\"xtls-rprx-vision\",\"email\":\"cgmzcloo\",\"limitIp\":0,\"totalGB\":0,\"expiryTime\":0,\"enable\":true,\"tgId\":\"\",\"subId\":\"jn25gjs56gvw1b7d\"}]}"

THANK U SO MUCH! Its save a lot of day for me really..

@ffaraji

ffaraji commented Dec 9, 2023

Copy link
Copy Markdown

سلام
چطور می تونم کانفبک کلاینت رو بگیرم با api؟
اگر نمبشه چطور می تونم کانفیگ رو بسازم؟

@mahserin

mahserin commented Jan 2, 2024

Copy link
Copy Markdown

سلام چطور می تونم کانفبک کلاینت رو بگیرم با api؟ اگر نمبشه چطور می تونم کانفیگ رو بسازم؟

این سوال منم هست اگه جواب بدید ممنون میشم

@mehdikhody

Copy link
Copy Markdown
Author

برای مثال به ساختار لینک vmess‍‍ نگاه کنید.

vmess://ewogICJ2IjogIjIiLAogICJwcyI6ICJFeGFtcGxlIFRpdGxlIiwKICAiYWRkIjogImV4YW1wbGUuY29tIiwKICAicG9ydCI6IDQ0MywKICAiaWQiOiAiNWExZTBkMzQtMjRjNC00YjhkLTRlOTktMzIxMzQ1NzkxNzQ4IiwKICAibmV0IjogInRjcCIsCiAgInR5cGUiOiAibm9uZSIsCiAgInRscyI6ICJub25lIiwKICAicGF0aCI6ICIvIgp9

از ابتدای لینک vmess:// متوجه می شویم این کانفیگ از vmess‍ استفاده می کند و باقی رشته نیز تنظیمات ما می باشد که بر اساس Base64‍ رمز نگاری شده است. با رمز شکافی این رشته اطلاعات زیر برای ما نمایش داده می شود:

{
  "v": "2",
  "ps": "Example Title",    // Title
  "add": "example.com",    // Domain or Server IP
  "port": 443,    // Inbound Port
  "id": "5a1e0d34-24c4-4b8d-4e99-321345791748",    // UUID
  "net": "tcp",    // Transmission
  "type": "none",
  "tls": "none",
  "path": "/"
}

خوب حالا برای ساخت کانفیگ vmess‍ خودمان باید اطلاعات زیر را ویرایش و بر اساس Base64 رمزنگاری کنیم و به ابتدای آن عبارت vmess:// را اضافه کنیم.
برای ساخت QRCode هم باید این متن را به یک کتابخانه ساخت QRCode‍ بدهید و عکس آن را دریافت کنید.

برای vless و reality هم همین گونه باید مهندسی معکوس کنید. یک لینک را به عنوان نمونه نگاه کنید و اطلاعات آن را با اطلاعات دلخواه خود عوض کنید.

@lansow

lansow commented Feb 20, 2025

Copy link
Copy Markdown

سلام دوستان api برای دریافت اطلاعات کلاینت نداره ؟؟

@te3WAxGF

te3WAxGF commented Jul 7, 2026

Copy link
Copy Markdown

سلام خسته نباشید من چجوری رمز سرورم بدونم یادم رفته پنلمو زدم همه چی قاطی کردم نمیاره میخواستم از روی سرور درس کنم ولی فراموش کردنپ

@te3WAxGF

te3WAxGF commented Jul 7, 2026

Copy link
Copy Markdown

فراموش کردم کسی هس کمکم کنه

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment