Navigation

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

    Guide to secure your SmartAPI Account with two factor authentication

    General Discussion
    0
    104
    1955
    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.
    • S
      Sukhwant280 @ravindra.e last edited by

      @ravindra-e Thanks for the code.. Its working for me but it fails when I pass this token to next steps i.e.
      smartApi.getProfile(refreshToken)
      smartApi.generateToken(refreshToken)
      Error is: Invalid json response.

      My understanding is that he refresh token is valid until 5 AM next day, hence I can use the same refresh Token whenever I want to make API calls.

      Please correct me if my understanding is wrong here. Thanks in advance

      @admin , @Ashok - Please help.

      R 1 Reply Last reply Reply Quote 0
      • S
        smrtsaravanan @smrtsaravanan last edited by

        @smrtsaravanan it is working fine now. Ignore it.

        I have made a couple of changes. 1st I have declared it like below

        obj=SmartConnect(api_key=apikey)
        totp = pyotp.TOTP(s='yourkey')
        print("pyotp",totp.now())
        attempts = 5
        while attempts > 0:
        attempts = attempts-1
        data = obj.generateSession(username, pwd, totp.now())
        print(data)
        if data['status']:
        break
        tt.sleep(2)

        and entered my new API key.

        Hope it helps!

        1 Reply Last reply Reply Quote 0
        • W
          webseos @aj_Brk last edited by webseos

          @aj_Brk I have used similar code as given below , but got the following exception
          Exception : Object of type TOTP is not JSON serializable

          but then I solved the problem

          But then I added last two lines and problem solved the last two lines given at the end of the following code- qrOtp is the code generated here : https://smartapi.angelbroking.com/enable-totp below the QR Code. So you have to generate your own qrOtp code here in this site. Then Install pyotp using command line "pip install pyotp"

          My Code Below ( Last line totp = totp.now() is very important)

          from smartapi import SmartConnect #or from smartapi.smartConnect import SmartConnect
          import config
          import pyotp

          client_code = "aaaaaa"
          client_pass = "bbbbbb"

          apiKey="yyyyyyy"
          qrOtp = "xxxxxxxx"
          totp = pyotp.TOTP(qrOtp)
          totp = totp.now()

          smartapiObj =SmartConnect(apiKey)

          data = smartapiObj.generateSession(client_code,client_pass,totp)
          print(data)

          C S 2 Replies Last reply Reply Quote 2
          • ?
            A Former User last edited by

            @admin What about golang library it is updated for totp changes.

            A 1 Reply Last reply Reply Quote 0
            • A
              admin @Guest last edited by admin

              Hi @patisupa , we have modified the goLang. Please refer here - https://github.com/angel-one/smartapigo

              ? 1 Reply Last reply Reply Quote 0
              • ?
                A Former User @admin last edited by

                @admin thanks for update

                1 Reply Last reply Reply Quote 0
                • R
                  ravindra.e @smrtsaravanan last edited by

                  @smrtsaravanan Can you please paste your code here?

                  1 Reply Last reply Reply Quote 0
                  • R
                    ravindra.e @Sukhwant280 last edited by

                    @Sukhwant280 said in Guide to secure your SmartAPI Account with two factor authentication:

                    smartApi.generateToken(refreshToken)

                    Why would you need smartApi.generateToken(refreshToken)?

                    1 Reply Last reply Reply Quote 0
                    • P
                      patanjali196 last edited by patanjali196

                      @admin I am unable to login to smartapi.angelbroking.com/enable-totp URL , But I am able to login to https://smartapi.angelbroking.com/apps with my credentials. But to ToTP i am not able to login, Its saying invalid userid or password. Please help me to resolve this issue.
                      Thanks.

                      1 Reply Last reply Reply Quote 0
                      • G
                        ganesh @aj_Brk last edited by

                        @aj_Brk not working for me

                        1 Reply Last reply Reply Quote 0
                        • G
                          ganesh @gokul last edited by

                          @gokul i am also getting same error

                          R 1 Reply Last reply Reply Quote 0
                          • R
                            ravindra.e @ganesh last edited by

                            @ganesh
                            update using pip install smartapi-python --upgrade

                            1 Reply Last reply Reply Quote 0
                            • Mr Depp
                              Mr Depp last edited by

                              Hello team.

                              What about the c#.net sdk update ? did you updated to the library or setting some another way to use it ?

                              N 1 Reply Last reply Reply Quote 0
                              • N
                                Nichil72 @Mr Depp last edited by

                                @Mr-Depp said in Guide to secure your SmartAPI Account with two factor authentication:

                                Hello team.

                                What about the c#.net sdk update ? did you updated to the library or setting some another way to use it ?

                                Hello Team,
                                Please update on C#.Net sdk ASAP.

                                1 Reply Last reply Reply Quote 0
                                • C
                                  cthomas @webseos last edited by

                                  @webseos Thanks for your simple and effective answer. This works really well.

                                  1 Reply Last reply Reply Quote 0
                                  • N
                                    nikaashpuri last edited by

                                    I have suddenly started getting the following error when logging in using username, password, and otp using the API:

                                    File "abc.py", line 327, in test_login_access
                                        data = angel_obj.generateSession(user_id, password, totp.now())
                                      File "/home/ubuntu/py37-venv/lib/python3.7/site-packages/smartapi/smartConnect.py", line 239, in generateSession
                                        id=user['data']['clientcode']
                                    TypeError: 'NoneType' object is not subscriptable
                                    

                                    What is going on here?

                                    S 1 Reply Last reply Reply Quote 0
                                    • C
                                      clb last edited by

                                      @clb Nice

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        saurabh121 @webseos last edited by

                                        @webseos thank you so much for info its working smooth.

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          sudha80 @nikaashpuri last edited by

                                          @nikaashpuri
                                          I also faced similar issue. After upgrading pyotp the issue is resolved for me

                                          $pip install --upgrade pyotp

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