Socket
Book a DemoInstallSign in
Socket

@mstock-mirae-asset/nodetradingapi-typeb

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@mstock-mirae-asset/nodetradingapi-typeb

The official TypeScript/JavaScript client for mStock TypeB Trading API

latest
Source
npmnpm
Version
0.0.2
Version published
Maintainers
1
Created
Source

TradingAPI TypeB TypeScript/JavaScript SDK

npm version License: MIT Node.js Version

The official TypeScript/JavaScript client for communicating with the TypeB Trading API.

mStock TypeB is a comprehensive trading API that provides capabilities required to build a complete investment and trading platform. Execute orders in real time, manage user portfolio, stream live market data (WebSockets), and more.

Documentation

Requirements

  • Node.js v18.0.0+

Installation

Install via npm

npm install @mstock-mirae-asset/nodetradingapi-typeb

Features

  • Comprehensive API Coverage - Full support for all TypeB trading API endpoints
  • TypeScript Support - Fully typed with TypeScript for better development experience
  • Authentication - Built-in support for JWT token authentication
  • Order Management - Place, modify, cancel orders with ease
  • Portfolio Management - View positions, holdings, and trade history
  • Market Data - Real-time quotes, historical data, and chart data
  • Basket Orders - Create and manage basket orders
  • Options Trading - Complete options chain support
  • Error Handling - Comprehensive error handling and retry mechanisms

Getting started with API

Basic Setup

import { MConnect } from '@mstock-mirae-asset/nodetradingapi-typeb';

// Initialize the client
const client = new MConnect('https://api.mstock.trade', 'your-api-key');

// Login
const loginResponse = await client.login({
    clientcode: 'your-client-code',
    password: 'your-password',
    totp: 'your-totp',
    state: 'your-state'
});

// Set access token
client.setAccessToken(loginResponse.data.jwtToken);

Place an Order

const order = await client.placeOrder({
    variety: 'NORMAL',
    tradingsymbol: 'INFY',
    symboltoken: '1594',
    exchange: 'NSE',
    transactiontype: 'BUY',
    ordertype: 'LIMIT',
    quantity: '100',
    producttype: 'DELIVERY',
    price: '1500'
});

Authentication

The SDK supports JWT token authentication. After successful login, use the setAccessToken method to set the authentication token.

const loginResponse = await client.login({
    clientcode: 'your-client-code',
    password: 'your-password',
    totp: 'your-totp',
    state: 'your-state'
});

client.setAccessToken(loginResponse.data.jwtToken);

Usage Examples

Order Management

// Place an order
const order = await client.placeOrder({
    variety: 'NORMAL',
    tradingsymbol: 'INFY',
    symboltoken: '1594',
    exchange: 'NSE',
    transactiontype: 'BUY',
    ordertype: 'LIMIT',
    quantity: '100',
    producttype: 'DELIVERY',
    price: '1500'
});

// Modify an order
const modifiedOrder = await client.modifyOrder({
    variety: 'NORMAL',
    orderid: '123456',
    tradingsymbol: 'INFY',
    symboltoken: '1594',
    exchange: 'NSE',
    ordertype: 'MARKET',
    quantity: '50',
    producttype: 'DELIVERY'
});

// Cancel an order
await client.cancelOrder({
    variety: 'NORMAL',
    orderid: '123456'
});

Portfolio Management

// Get positions
const positions = await client.getPositions();

// Get holdings
const holdings = await client.getHoldings();

// Get fund summary
const fundSummary = await client.getFundSummary();

Market Data

// Get historical data
const historicalData = await client.getHistoricalData({
    exchange: 'NSE',
    symboltoken: '1594',
    interval: 'ONE_MINUTE',
    fromdate: '2024-01-01',
    todate: '2024-01-31'
});

// Get real-time quotes
const quotes = await client.getQuote({
    mode: 'FULL',
    exchangeTokens: {
        NSE: ['1594', '2885'],
        BSE: ['500325', '500209']
    }
});

Basket Orders

// Create basket
const basket = await client.createBasket({
    BaskName: 'MyStrategy',
    BaskDesc: 'My trading strategy basket'
});

// Calculate basket
const calculation = await client.calculateBasket({
    basket_name: 'MyStrategy',
    basket_id: '123',
    operation: 'CALCULATE',
    include_exist_pos: 'Y'
});

API Reference

Authentication

MethodDescription
login()User authentication
verifyOTP()Verify OTP for session token
verifyTOTP()Verify TOTP for 2FA
logout()User logout

Order Management

MethodDescription
placeOrder()Place new orders
modifyOrder()Modify existing orders
cancelOrder()Cancel orders
cancelAllOrders()Cancel all open orders

Portfolio Operations

MethodDescription
getPositions()Get open positions
getHoldings()Get portfolio holdings
getFundSummary()Get fund summary

Market Data

MethodDescription
getHistoricalData()Get historical candlestick data
getIntradayChartData()Get intraday chart data
getQuote()Get real-time quotes
getInstrumentMaster()Get instrument master data

Options Trading

MethodDescription
getOptionChainMaster()Get option chain master data
getOptionChain()Get detailed option chain data

Testing

npm test

Building

npm run build

License

MIT License - see LICENSE file for details.

mStock By Mirae Asset Capital Markets (India) Pvt. Ltd. (c) 2025. Licensed under the MIT License.

Support

For issues, please open an issue on GitHub.

Contributing

We welcome contributions! Please follow these steps:

  • Fork the repository
  • Create a new branch (feature-xyz)
  • Commit your changes
  • Push the branch and create a pull request

Keywords

mconnect

FAQs

Package last updated on 20 Aug 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts