Navigation

    SmartAPI Forum
    • Register
    • Login
    • Search
    • Categories
    • Popular
    • Groups
    • FAQs
    • API Docs

    inconsistent behaviour of smartapi-javascript for the same input showing jwt-token error and sometime working fine.

    Test
    0
    1
    10
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      rozodkarbharat last edited by

      for the PlaceOrder function below, if I pass the same input it gives a jwt-token error sometimes and sometimes it works fine.

      '
      let { SmartAPI } = require("smartapi-javascript");
      const totp = require("totp-generator");

      const PlaceOrder = async ({ apikey, user_id, totp_secret, password,tradingsymbol,Qty,transactiontype,symboltoken }) => {

      try {
          const token = totp(totp_secret);
          
          let smart_api = new SmartAPI({
              api_key: apikey,
          });
          let data = await smart_api
              .generateSession(user_id, password, token)
              .then(() => {
      
                  return smart_api.placeOrder({
                      "variety": "NORMAL",
                      "tradingsymbol": tradingsymbol,
                      "symboltoken": symboltoken,
                      "transactiontype": transactiontype,
                      "exchange": "NFO",
                      "ordertype": "MARKET",
                      "producttype": "CARRYFORWARD",
                      "duration": "DAY",
                      "price": "0",
                      "squareoff": "0",
                      "stoploss": "0",
                      "quantity": Qty
                  })
              })
              .catch((err) => {
                  console.log("error generating" , err)
                  return {}
              });
          return data;
      }
      catch (err) {
          console.log(err.message);
          return {}
      }
      

      }'

      I tried to to debug the error it shows problem in
      'node_modules\smartapi-javascript\lib\smartapi-connect.js:178:40'

      even generateSession method in node modules is getting every parameter right it throws error which is catch block
      'self.generateSession = function (client_code, password, totp) {
      let params = {
      clientcode: client_code,
      password: password,
      totp: totp,
      };
      let token_data = post_request('user_login', params);

      	token_data
      		.then((response) => {
      			if (response.status) {
      				// console.log(response.data.jwtToken)
      				self.setClientCode(client_code);
      
      				self.setAccessToken(response.data.jwtToken);
      				self.setPublicToken(response.data.refreshToken);
      			}
      		})
      		.catch(function (err) {
      			throw err;
      		});
      
      	return token_data;
      };
      

      '

      This breaks the code and I am trying to place an order for multiple brokers and multiple users but because of this, the whole code breaks.
      please give some solution for this.

      1 Reply Last reply Reply Quote 0
      • First post
        Last post