# fyersdev/fyers-api-sample-code architecture

> Architecture diagram of the GitHub repository fyersdev/fyers-api-sample-code, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/fyersdev/fyers-api-sample-code
- Repository: https://github.com/fyersdev/fyers-api-sample-code

## Overview

This repository is a set of Fyers API v3 usage examples in Python and Node.js, rather than a unified application. The user-facing workflow is to obtain an access token, then run separate examples for account and broker information, market data, trading actions, or live streams. These examples call the Fyers SDK directly; the tree does not show a shared orchestration layer or a connection from token generation to the other scripts. The README is empty, so capability coverage comes from directory names and the supplied examples; most endpoint wiring is represented at directory level.

Main entry points: [`v3/python/login/get_access_token.py`](https://github.com/fyersdev/fyers-api-sample-code/blob/sample_v3/v3/python/login/get_access_token.py) (Python login), [`v3/node/login/get_access_token.js`](https://github.com/fyersdev/fyers-api-sample-code/blob/sample_v3/v3/node/login/get_access_token.js) (Node login), [`v3/python/websocket/data_socket`](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/data_socket) (Python data socket), [`v3/python/websocket/order_socket`](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/order_socket) (Python order socket)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_auth["Authentication"]
  node_login_py["Python login"]
  node_login_node["Node login"]
end

subgraph group_account["Account information"]
  node_account["Account queries"]
  node_broker["Broker status"]
  node_transaction_info["Trade records"]
end

subgraph group_market["Market data"]
  node_market_py["Python market data"]
  node_market_node["Node market data"]
end

subgraph group_trading["Trading"]
  node_orders_py["Python order actions"]
  node_positions_py["Python position actions"]
  node_orders_node["Node order actions"]
  node_positions_node["Node position actions"]
end

subgraph group_streams["Live streams"]
  node_data_ws_py["Python data socket"]
  node_order_ws_py["Python order socket"]
  node_tbt_ws_py["Python depth socket"]
  node_data_ws_node["Node data socket"]
  node_order_ws_node["Node order socket"]
end

node_user(("API user"))
node_browser(("Web browser"))
node_fyers{{"Fyers API"}}

node_user -->|"starts login"| node_login_py
node_user -->|"starts login"| node_login_node
node_login_py -->|"opens auth"| node_browser
node_login_node -->|"opens auth"| node_browser
node_login_py -->|"requests token"| node_fyers
node_login_node -->|"requests token"| node_fyers
node_user -->|"runs examples"| node_account
node_user -->|"runs example"| node_broker
node_user -->|"runs examples"| node_transaction_info
node_user -->|"runs examples"| node_market_py
node_user -->|"runs examples"| node_market_node
node_user -->|"runs examples"| node_orders_py
node_user -->|"runs examples"| node_positions_py
node_user -->|"runs examples"| node_orders_node
node_user -->|"runs examples"| node_positions_node
node_user -->|"starts socket"| node_data_ws_py
node_user -->|"starts socket"| node_order_ws_py
node_user -->|"starts socket"| node_tbt_ws_py
node_user -->|"starts socket"| node_data_ws_node
node_user -->|"starts socket"| node_order_ws_node
node_account -->|"requests account data"| node_fyers
node_broker -->|"requests status"| node_fyers
node_transaction_info -->|"requests records"| node_fyers
node_market_py -->|"requests market data"| node_fyers
node_market_node -->|"requests market data"| node_fyers
node_orders_py -->|"submits order actions"| node_fyers
node_positions_py -->|"submits position actions"| node_fyers
node_orders_node -->|"submits order actions"| node_fyers
node_positions_node -->|"submits position actions"| node_fyers
node_data_ws_py -->|"subscribes to updates"| node_fyers
node_order_ws_py -->|"subscribes to updates"| node_fyers
node_tbt_ws_py -->|"subscribes to depth"| node_fyers
node_data_ws_node -->|"subscribes to updates"| node_fyers
node_order_ws_node -->|"subscribes to updates"| node_fyers
node_fyers -->|"streams messages"| node_data_ws_py
node_fyers -->|"streams messages"| node_order_ws_py
node_fyers -->|"streams depth"| node_tbt_ws_py
node_fyers -->|"streams messages"| node_data_ws_node
node_fyers -->|"streams messages"| node_order_ws_node

click node_login_py "https://github.com/fyersdev/fyers-api-sample-code/blob/sample_v3/v3/python/login/get_access_token.py"
click node_login_node "https://github.com/fyersdev/fyers-api-sample-code/blob/sample_v3/v3/node/login/get_access_token.js"
click node_account "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/account_info"
click node_broker "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/broker_info"
click node_transaction_info "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/transaction_info"
click node_market_py "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/market_data"
click node_market_node "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/market_data"
click node_orders_py "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/transaction/orders"
click node_positions_py "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/transaction/positions"
click node_orders_node "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/transaction/orders"
click node_positions_node "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/transaction/positions"
click node_data_ws_py "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/data_socket"
click node_order_ws_py "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/order_socket"
click node_tbt_ws_py "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/tbt_socket"
click node_data_ws_node "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/websocket/data_socket"
click node_order_ws_node "https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/websocket/order_socket"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_login_py,node_login_node,node_user,node_browser toneBlue
class node_account,node_broker,node_transaction_info toneAmber
class node_market_py,node_market_node,node_fyers toneMint
class node_orders_py,node_positions_py,node_orders_node,node_positions_node toneRose
class node_data_ws_py,node_order_ws_py,node_tbt_ws_py,node_data_ws_node,node_order_ws_node toneIndigo
```

## Components

### Authentication

- [Python login](https://github.com/fyersdev/fyers-api-sample-code/blob/sample_v3/v3/python/login/get_access_token.py): `v3/python/login/get_access_token.py`
- [Node login](https://github.com/fyersdev/fyers-api-sample-code/blob/sample_v3/v3/node/login/get_access_token.js): `v3/node/login/get_access_token.js`

### Account information

- [Account queries](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/account_info): `v3/python/account_info`
- [Broker status](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/broker_info): `v3/python/broker_info`
- [Trade records](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/transaction_info): `v3/python/transaction_info`

### Market data

- [Python market data](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/market_data): `v3/python/market_data`
- [Node market data](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/market_data): `v3/node/market_data`

### Trading

- [Python order actions](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/transaction/orders): `v3/python/transaction/orders`
- [Python position actions](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/transaction/positions): `v3/python/transaction/positions`
- [Node order actions](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/transaction/orders): `v3/node/transaction/orders`
- [Node position actions](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/transaction/positions): `v3/node/transaction/positions`

### Live streams

- [Python data socket](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/data_socket): `v3/python/websocket/data_socket`
- [Python order socket](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/order_socket): `v3/python/websocket/order_socket`
- [Python depth socket](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/python/websocket/tbt_socket): `v3/python/websocket/tbt_socket`
- [Node data socket](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/websocket/data_socket): `v3/node/websocket/data_socket`
- [Node order socket](https://github.com/fyersdev/fyers-api-sample-code/tree/sample_v3/v3/node/websocket/order_socket): `v3/node/websocket/order_socket`

### Other components

- **API user**
- **Web browser**
- **Fyers API**

## Connections

- API user → Python login: starts login
- API user → Node login: starts login
- Python login → Web browser: opens auth
- Node login → Web browser: opens auth
- Python login → Fyers API: requests token
- Node login → Fyers API: requests token
- API user → Account queries: runs examples
- API user → Broker status: runs example
- API user → Trade records: runs examples
- API user → Python market data: runs examples
- API user → Node market data: runs examples
- API user → Python order actions: runs examples
- API user → Python position actions: runs examples
- API user → Node order actions: runs examples
- API user → Node position actions: runs examples
- API user → Python data socket: starts socket
- API user → Python order socket: starts socket
- API user → Python depth socket: starts socket
- API user → Node data socket: starts socket
- API user → Node order socket: starts socket
- Account queries → Fyers API: requests account data
- Broker status → Fyers API: requests status
- Trade records → Fyers API: requests records
- Python market data → Fyers API: requests market data
- Node market data → Fyers API: requests market data
- Python order actions → Fyers API: submits order actions
- Python position actions → Fyers API: submits position actions
- Node order actions → Fyers API: submits order actions
- Node position actions → Fyers API: submits position actions
- Python data socket → Fyers API: subscribes to updates
- Python order socket → Fyers API: subscribes to updates
- Python depth socket → Fyers API: subscribes to depth
- Node data socket → Fyers API: subscribes to updates
- Node order socket → Fyers API: subscribes to updates
- Fyers API → Python data socket: streams messages
- Fyers API → Python order socket: streams messages
- Fyers API → Python depth socket: streams depth
- Fyers API → Node data socket: streams messages
- Fyers API → Node order socket: streams messages
