event های خصوصی کاربران

کانال‌های خصوصی WebSocket در والکس به کاربران احراز هویت‌شده اجازه می‌دهند تا تغییرات شخصی مربوط به حساب خود را به‌صورت لحظه ای دریافت کنند.
این event ها شامل به‌روزرسانی موجودی، وضعیت سفارش‌ها، و پیام‌های اطلاع‌رسانی هستند.

آدرس اتصال WebSocket

برای اتصال باید از آدرس زیر استفاده کنید

wss://api.wallex.ir/ws

فرمت پیام Subscribe

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

["subscribe", { "channel": "STREAMKEY" }]

توجه داشته باشید در هنگام لاگین به والکس در مرحله ی آخر یک کلید به نام stream_key در پاسخ ای پی آی دریافت میکنید که باید جایگزین STREAMKEY قرار دهید

event های بروزرسانی موجودی کیف پول(balanceUpdated)

پس از هرگونه واریز ، برداشت ، یا ساخت سفارش و انجام معامله که در پی آن موجودی کیف پول شما آپدیت میشود ، شما یک ایونت دریافت میکنید

فیلدنوعتوضیح
eventstringbalanceUpdated
timestamptimestampزمان بروزرسانی موجودی
priceString (decimal)قیمت انجام معامله
assetStringارز اپدیت شده در کیف پول کاربر
valueStringمقدار موجود در کیف پول
lockedStringمیزان دارایی فریز شده کاربر(زمان برداشت یا انجام یک معامله)
  [
    "STREAMKEY",
    {
      "event": "balanceUpdated",
      "timestamp": 1748773416376,
      "data": {
        "TMN": {
          "asset": "TMN",
          "faName": "تومان",
          "value": "16033085",
          "locked": "2507491"
        }
      }
    }
]

ثبت سفارش جدید یا بروزرسانی سفارش (orderSaved)

پس از ثبت سفارش جدید و یا بروزرسانی سفارش ها ، eventهایی که در خصوص آن دریافت میکنید به شرح زیر میباشد.

فیلدنوعتوضیح
eventstringorderSaved
timestamptimestampزمان بوجود آمدن اوردر جدید
priceString (decimal)قیمت هر واحد
symbolStringنام مارکت
sideStringBUY , SELL
origiQtyStringحجم سفارش
executedQtyStringمقدار معامله شده
statusStringNEW
activeBooleanوضعیت فعال بودن سفارش گذاشته شده
  [
    "streamKey",
    {
      "event": "orderSaved",
      "timestamp": 1748773416414,
      "data": {
        "symbol": "USDTTMN",
        "side": "BUY",
        "clientOrderId": "LIMIT-xxxx",
        "price": "82102.0000000000000000",
        "origQty": "10.0000000000000000",
        "executedQty": "0.0000000000000000",
        "status": "NEW",
        "active": true
      }
    }
  ]

نمونه کد در زبان های مختلف


  const socket = new WebSocket("wss://api.wallex.ir/ws");

  socket.addEventListener("open", () => {
    socket.send(JSON.stringify(["subscribe", { channel: "STREAMKEY" }]));
  });

  socket.addEventListener("message", event => {
    console.log("Message from server:", event.data);
  });