Navigation

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

    How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????

    General Discussion
    5
    23
    463
    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.
    • James Bond
      James Bond @ashmita_ last edited by

      @ashmita_

      Which SDK you're using ?

      In case of Python or with any other language, Feed token generally used to access WebSocket to receive live ticks.

      Tokens are primarily used to subscribe particular scrip to receive live ticks.

      A 2 Replies Last reply Reply Quote 0
      • James Bond
        James Bond @ashmita_ last edited by

        @ashmita_ said in How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????:

        How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????

        It's mainly depends on which programming language you're using.

        A 1 Reply Last reply Reply Quote 0
        • A
          ashmita_ @James Bond last edited by

          @James-Bond I'm using python sdk....

          1 Reply Last reply Reply Quote 0
          • A
            ashmita_ @James Bond last edited by

            @James-Bond I'm using python SDK. Can you please tell me how to get this FEED_TOKEN= "your feed token"......./
            And how to subscribe it mean, code format if we want to subscribe NSE_RELIANCE script.....

            James Bond 2 Replies Last reply Reply Quote 0
            • A
              ashmita_ @James Bond last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • James Bond
                James Bond @ashmita_ last edited by James Bond

                @ashmita_

                You can use following code to get Feed Token and subscribe any scrip.

                from smartapi import SmartConnect 
                from smartapi import WebSocket 
                
                obj=SmartConnect(api_key="your_api_key")
                data = obj.generateSession('client_id', 'password')
                feedToken=obj.getfeedToken()
                
                FEED_TOKEN= feedToken
                CLIENT_CODE= 'client_id'
                task="mw" #'mw'|'sfi'|'dp'
                token="nse_cm|26009"
                WS = WebSocket(FEED_TOKEN, CLIENT_CODE)
                
                def on_tick(ws, tick):
                    print(tick)
                
                def on_connect(ws, response):
                    ws.send_request(token)
                
                def on_close(ws, code, reason):
                    ws.stop()
                
                # Assign the callbacks.
                WS.on_ticks = on_tick
                WS.on_connect = on_connect
                WS.on_close = on_close
                WS.connect()
                

                To subscribe Reliance (NSE), first you need to find out Reliance scrip / symbol token from following JSON file.

                https://margincalculator.angelbroking.com/OpenAPI_File/files/OpenAPIScripMaster.json

                then you need to change token in above code. In case of RELIANCE-EQ token is 2885
                so change:

                token="nse_cm|26009"
                

                to

                token="nse_cm|2885"
                

                To use above code, you need to update above code with your api key, client id and password.

                1 Reply Last reply Reply Quote 0
                • James Bond
                  James Bond @ashmita_ last edited by

                  @ashmita_ said in How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????:

                  FEED_TOKEN= "your feed token"

                  SmartAPI SDK has inbuilt method to generate feed token, so you don't have to worry about it.

                  A 1 Reply Last reply Reply Quote 0
                  • A
                    ashmita_ @James Bond last edited by

                    @James-Bond Sir what is the meaning of task (task="mw" #'mw'|'sfi'|'dp')???
                    And sir can we subscribe a script using symbol name like this "nse_cm|RELIANCE" instead of using token number like this way "nse_cm|2885" ???

                    James Bond 2 Replies Last reply Reply Quote 0
                    • James Bond
                      James Bond @ashmita_ last edited by James Bond

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • James Bond
                        James Bond @ashmita_ last edited by

                        @ashmita_ said in How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????:

                        Sir what is the meaning of task (task="mw" #'mw'|'sfi'|'dp')???

                        Screenshot 2021-03-17 at 12.22.55 AM.png

                        More info here: https://smartapi.angelbroking.com/docs/WebSocket

                        @ashmita_ said in How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????:

                        can we subscribe a script using symbol name like this "nse_cm|RELIANCE" instead of using token number like this way "nse_cm|2885" ???

                        No, we can't use something like nse_cm|RELIANCE. Only scrip token will be considered as acceptable value.

                        A 1 Reply Last reply Reply Quote 0
                        • A
                          ashmita_ @James Bond last edited by ashmita_

                          @James-Bond Sir can you please tell me how to get the instruments token list including F&O contract's........
                          I'm using python sdk....
                          Some one give me this link https://margincalculator.angelbroking.com/OpenAPI_File/files/OpenAPIScripMaster.json but it's looks messy and confusing I can't understand how can I use it sir......
                          Also how to subscribe multiple script at the same time mean token format like this
                          token="nse_cm|2885, token=nse_cm|5285, token=nse_cm|2521, token=nse_cm|2854"

                          S James Bond 2 Replies Last reply Reply Quote 0
                          • S
                            Surya 1 @ashmita_ last edited by

                            @ashmita_

                            You can read them in pandas.. Its in json format

                            df = pd.read_json('http://margincalculator.angelbroking.com/OpenAPI_File/files/OpenAPIScripMaster.json')
                            

                            Python dictionaries are hashed.. so its faster. But if you prefer csv you can convert them like the following

                            df.to_csv(file_name)
                            
                            A 1 Reply Last reply Reply Quote 0
                            • James Bond
                              James Bond @ashmita_ last edited by James Bond

                              @ashmita_

                              To subscribe multiple scrips at same time, use following format:

                              "nse_cm|2885&nse_cm|5285&nse_cm|2521&nse_cm|2854"
                              

                              It should be separated by &

                              Getting token list:

                              @ashmita_ said in How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????:

                              Some one give me this link https://margincalculator.angelbroking.com/OpenAPI_File/files/OpenAPIScripMaster.json but it's looks messy and confusing I can't understand how can I use it sir......

                              @rajanprabu answered your query in above post which is easiest approach to get scrip names and token lists.

                              A 1 Reply Last reply Reply Quote 0
                              • A
                                ashmita_ @James Bond last edited by

                                @James-Bond Sir I fetched this data in a dataframe but I'm not found instrument like Reliance_EQ, Reliance_Future, Reliance_Options
                                GFGFG.PNG
                                And sir can you please tell me what is the difference between Trading API and Market Feeds API
                                Captudddddre.PNG
                                when I hover the cursor on I button it's show__
                                Trading API:- Access full fledged APIs to execute orders i real time, manage use portfolio, stream live market data and more.
                                Market Feeds APIs:- Access real time market data for various stocks.

                                A S James Bond 3 Replies Last reply Reply Quote 0
                                • A
                                  admin @ashmita_ last edited by admin

                                  Hi @ashmita_ please mail us your piece of code @ api@angelbroking.com.

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    Surya 1 @ashmita_ last edited by

                                    @ashmita_

                                    possible reliance search terms

                                    RELIANCE-EQ
                                    RELIANCE29APR211660CE
                                    RELIANCE29APR21FUT

                                    If one just wants to use the data they saw market API, otherwise trading API.

                                    1 Reply Last reply Reply Quote 0
                                    • James Bond
                                      James Bond @ashmita_ last edited by James Bond

                                      @ashmita_ said in How to get fed_token and how to use token and task and how to subscribe and unsubscribe a script?????:

                                      I'm not found instrument like Reliance_EQ,

                                      Do you converted json into csv ?

                                      You should use RELIANCE-EQ for equity.
                                      RELIANCE25MAR21FUT for current month contract

                                      Can you share your code, so we can help you.

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

                                        Hi @ashmita Please refer the following code to generate feed token
                                        ######################################################
                                        from smartapi import SmartConnect

                                        obj=SmartConnect(api_key="put your api key here")

                                        data = obj.generateSession("put your client id here","put your passwd here")
                                        refreshToken= data['data']['refreshToken']

                                        #fetch the feedtoken

                                        feedToken=obj.getfeedToken()
                                        print ("this is my feed token" ,feedToken )

                                        #fetch User Profile
                                        userProfile= obj.getProfile(refreshToken)

                                        now you will have your feed token with you
                                        ##########################################################
                                        now use below piece of code to use web socket use feed token which you will get from above code.

                                        from smartapi import WebSocket

                                        FEED_TOKEN= ""
                                        CLIENT_CODE=""

                                        token= "nse_cm|2885&nse_cm|1594&nse_cm|11536"

                                        task="mw" #'mw'|'sfi'|'dp'

                                        ss = WebSocket(FEED_TOKEN, CLIENT_CODE)

                                        def on_tick(ws, tick):
                                        print("Ticks: {}".format(tick))

                                        def on_connect(ws, response):
                                        ws.send_request(token,task)

                                        def on_close(ws, code, reason):
                                        ws.stop()

                                        Assign the callbacks.

                                        ss.on_ticks = on_tick
                                        ss.on_connect = on_connect
                                        ss.on_close = on_close

                                        ss.connect( )

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          ashmita_ @Surya 1 last edited by ashmita_

                                          @rajanprabu Sir it's showing like this____
                                          gfgfg.png
                                          my code is____

                                          import pandas as pd
                                          
                                          df = pd.read_json('http://margincalculator.angelbroking.com/OpenAPI_File/files/OpenAPIScripMaster.json')
                                          print(df)
                                          
                                          S 1 Reply Last reply Reply Quote 0
                                          • S
                                            Surya 1 @ashmita_ last edited by

                                            @ashmita_

                                            IDE may not be showing all entries of the dataframe. If you are looking for RELAINCE-EQ then

                                            df.loc[df['symbol'] == "RELIANCE-EQ"] 
                                            
                                            
                                                 token       symbol      name expiry  strike  lotsize instrumenttype exch_seg  tick_size
                                            3514  2885  RELIANCE-EQ  RELIANCE             -1        1                     NSE          5
                                            

                                            all entries which match RELIANCE

                                            df.loc[df['symbol'].str.contains("RELIANCE")]                                                                                                                               
                                            
                                                    token                 symbol        name     expiry  strike  lotsize instrumenttype exch_seg  tick_size
                                            2513    18974          RELIANCEPP-E1  RELIANCEPP                 -1        1                     NSE          5
                                            2578    12713            RELIANCE-BL    RELIANCE                 -1        1                     NSE          5
                                            3280    22319          RELIANCEPP-BL  RELIANCEPP                 -1        1                     NSE          5
                                            3514     2885            RELIANCE-EQ    RELIANCE                 -1        1                     NSE          5
                                            11238  500325               RELIANCE    RELIANCE                 -1        1                     BSE          5
                                            ...       ...                    ...         ...        ...     ...      ...            ...      ...        ...
                                            71420  120461  RELIANCE27MAY212540CE    RELIANCE  27MAY2021  254000      250         OPTSTK      NFO          5
                                            71553  112789  RELIANCE29APR211960PE    RELIANCE  29APR2021  196000      250         OPTSTK      NFO          5
                                            71559  105028  RELIANCE25MAR211980PE    RELIANCE  25MAR2021  198000      250         OPTSTK      NFO          5
                                            71742  105005  RELIANCE25MAR211760CE    RELIANCE  25MAR2021  176000      250         OPTSTK      NFO          5
                                            71928  112813  RELIANCE29APR212200PE    RELIANCE  29APR2021  220000      250         OPTSTK      NFO          5
                                            
                                            [421 rows x 9 columns]
                                            
                                            R 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post