Skip to main content
Market data is the live rate board as your account sees it: the Buy rate you buy at and the Sell rate you sell at, for every active symbol. If your account has special pricing, these are your prices, the same ones the Bullionwale app shows you. Test and production return the same live prices. Each path sits under the test base path /api/trading/test/v1 or the production base path /api/trading/v1:

The rate object

A price is per unit, a quantity is in quantity_unit. A gold rate per 10 gram and an order of 10 grams is worth one rate, not ten: see Units and pricing. Parse every amount as a decimal, not a float.

Read the rates

200 OK
  • The list holds every active symbol that has a published rate, sorted by symbol_code. total counts them all.
  • It takes limit (1 to 200, default 50) and offset, like GET /orders. The board is short, so one call normally returns it whole.

Read one rate

200 OK
A symbol that does not exist or is not active answers 404 unknown_symbol. An active symbol whose rate is not published yet answers 503 rates_not_ready: retry shortly.

Using a rate to place an order

The rate tells you what an order would cost now; it does not reserve that price. Prices move every few seconds, and the order is priced again when it is placed.
  1. Check that is_trading is true and stale is false, and that the side you want (buy for a buy, sell for a sell) is not null.
  2. Work out the value: for 25 g of GOLD_TRADE_999 at a Buy rate of 141250.00 per 10 g, the order is worth 141,250.00 × (25 ÷ 10) = ₹353,125.00.
  3. Send the rate you showed as expected_price in POST /orders. If the live price has moved beyond Bullionwale’s tolerance from it, the order is refused with 409 price_moved instead of being booked at a price you did not expect (see Orders).
The flags are a guide; the order check is the authority. An order can still be refused for a reason that appeared after you read the rate.

Test and production

Rates are not account data, so both environments return the same live prices, priced for your account. A test order is priced from this same board.

Polling

The board is republished every few seconds. Polling more often than about once a second gains nothing and uses your read budget (300 per minute per key by default; see Rate limits). To follow trading halts and the official close as well, use Market status.

Errors

Every code is in the Error reference.