The Reference Catalog provides essential details for integrating market and trading APIs, including scrip master data, exchange segments, order types, validity, and order statuses.
This section helps you set up and manage trading operations effectively.
Scrip Master API Details
You can fetch scrip master files (instrument/scrip details) using the following API URLs:
🌐Base URLs:
| Version | Base URL |
|---|
| V1 | https://odinscripmaster.s3.ap-south-1.amazonaws.com/scripfiles/{EXCHANGE}.json |
| V2 (Latest) | https://odinscripmaster.s3.ap-south-1.amazonaws.com/scripfiles/v2/{EXCHANGE}.json |
Replace {EXCHANGE} with the corresponding Exchange Code from the table below
🏦Exchange Codes
| Exchange Name | Exchange Code (Use in URL) |
|---|
| NSE Equity | NSE_EQ |
| NSE Derivatives | NSE_FO |
| BSE Equity | BSE_EQ |
| BSE Derivatives | BSE_FO |
| MCX Commodity | MCX_FO |
| NCDEX Commodity | NCDEX_FO |
| MSE Currency | MSE_CUR |
| NSE Currency | NSE_CUR |
| BSE Currency | BSE_CUR |
| BSE Commodity | BSE_COMM |
| NSE Commodity | NSE_COMM |
🧾Example usage
- For NSE Equity scrips:
- V1:
https://odinscripmaster.s3.ap-south-1.amazonaws.com/scripfiles/NSE_EQ.json
- V2:
https://odinscripmaster.s3.ap-south-1.amazonaws.com/scripfiles/v2/NSE_EQ.json
- For MCX Commodity (V2):
https://odinscripmaster.s3.ap-south-1.amazonaws.com/scripfiles/v2/MCX_FO.json
Global Constrants
These constants are used when placing, modifying, or canceling orders through the Order API. They define things like exchange segment, product type, order type, validity, and order status.
🛡️Exchange Segments ( exchange or segment id )
| Value | Segment Name | Description |
|---|
1 | NSE_EQ | NSE Equity Segment |
2 | NSE_FO | NSE Futures & Options |
8 | BSE_EQ | BSE Equity Segment |
4 | BSE_FO | BSE Futures & Options |
16 | MCX_FO | Multi Commodity Exchange |
64 | NCDEX_FO | National Commodity & Derivatives Exchange |
2048 | NSE_CUR | NSE Currency Derivatives |
32768 | NSE_COMM | NSE Commodity Segment |
268435456 | BSE_CUR | BSE Currency Segment |
16384 | BSE_COMM | BSE Commodity Segment |
1024 | MSE_CUR | MSE Currency Segment |
536870912 | NSE_OTS | NSE Odd Lot Segment |
🗂️Product Types ( product_type )
| Value | Description |
|---|
INTRADAY | Intraday order – auto-squared off before market close |
DELIVERY | Delivery order – carried forward to holdings |
BTST | Buy Today Sell Tomorrow – auto-squared off before next market close |
COVER | Cover Order – 2-leg order: Market order + Stop Loss order |
BRACKET | Bracket Order – 3-leg order: Market/Limit + Stop Loss + Profit booking order |
MTF | Margin Trading Facility – carry forward position without full payment upfront |
🔒Order Types ( order_type)
| Value | Description |
|---|
RL | Regular Limit Order – executes at a specified price |
RL-MKT | Regular Market Order – executes at market price |
SL | Stoploss Limit – triggers a limit order after stop price is reached |
SL-MKT | Stoploss Market – triggers a market order after stop price is reached |
💳Validity ( validity )
| Value | Description |
|---|
DAY | Valid for the current trading day only |
IOC | Immediate or Cancel – executes immediately or gets cancelled |
GTD | Good Till Date – valid for specified number of days |
GTC | Good Till Cancelled – remains until user cancels the order |
EOS | Valid for a specific trading session |
EOSESS | Valid until end of session (for BSE) |
EOTODY | Valid until end of trading day (for BSE) |
📋Order status ( order_status)
| Value | Description |
|---|
PENDING | Order is pending or partially filled |
EXECUTED | Order is fully executed |
CANCELLED | Order is cancelled |
OMSXMITTED | Received by OMS (Order Management System), not yet sent to exchange |
OMSREJECT | Rejected by OMS |
ORDERERROR | Invalid order – rejected by exchange |
ADMINREJECT | Rejected by OMS Admin |
EXXMITTED | Submitted to exchange – waiting for confirmation |
AMOACCEPTED | AMO (After Market Order) accepted by OMS |
AMOWITHDRAWN | AMO order withdrawn or cancelled |
⚠️ Notes :
- OMS = Order Management System (handles orders before they go to the exchange)
- AMO = After Market Order (orders placed after market hours)
- Bracket/Cover Orders are advanced types used for intraday trading with auto square-offs
- Exchange segments define where the order is being sent (NSE, BSE, MCX, etc.)
Exceptions and Errors
When using the API, you might see some error codes in the response. Here's what they mean in simple terms:
| Status Code | Meaning | Description |
|---|
| 400 | Bad Request | Something is wrong or missing in your request. Check your inputs or parameters. |
| 401 | Unauthorized | You're not logged in properly or your access token is expired/invalid. Login again. |
| 404 | Not Found | The page or resource you're trying to access doesn't exist. |
| 405 | Method Not Allowed | You used the wrong request method (like POST instead of GET). |
| 500 | Internal Server Error | Something went wrong on the server. Try again later. |
| 503 | Service Unavailable | The API server is currently down or busy. Please wait and try again. |