Skip to content

Instantly share code, notes, and snippets.

@javajack
Created November 22, 2021 12:52
Show Gist options
  • Save javajack/c4c46f5d4f50f4144f7f1c679d516e1b to your computer and use it in GitHub Desktop.
Save javajack/c4c46f5d4f50f4144f7f1c679d516e1b to your computer and use it in GitHub Desktop.
{"openapi":"3.0.1","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"https://sandbox-api.dhan.co","description":"Generated server url"}],"paths":{"/orders/{order-id}":{"get":{"tags":["Orders"],"summary":"get order by id","description":"get order by id description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"OrderByOrderId","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}},{"name":"order-id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderResponse"}}}}}},"put":{"tags":["Orders"],"summary":"modify order","description":"modify order description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"modifyOrder","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}},{"name":"order-id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderModifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderResponse"}}}}}},"delete":{"tags":["Orders"],"summary":"cancel given order","description":"exit order description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"cancelOrder","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}},{"name":"order-id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{}}}}}},"/positions/convert":{"post":{"tags":["Portfolio"],"summary":"convert position","description":"Position Convert to Delivery","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"convertPosition","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PositionConversionRequest"}}},"required":true},"responses":{"200":{"description":"Successful operation","content":{"application/json":{}}}}}},"/orders":{"get":{"tags":["Orders"],"summary":"get current orders list","description":"get current orders long description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"orders","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/OrderResponse"}}}}}}},"post":{"tags":["Orders"],"summary":"place an order","description":"place an order long description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"placeOrder","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderRequest"}}},"required":true},"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderResponse"}}}}}}},"/trades":{"get":{"tags":["Trades"],"summary":"get all trades","description":"trades response detailed description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"alltrades","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TradeResponse"}}}}}}}},"/trades/{order-id}":{"get":{"tags":["Trades"],"summary":"get trades by order","description":"trades response detailed description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"tradebyOrderId","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}},{"name":"order-id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/TradeResponse"}}}}}}}},"/positions":{"get":{"tags":["Portfolio"],"summary":"get current positions","description":"position response detailed description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"position","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PositionResponse"}}}}}}}},"/orders/external/{corelation-id}":{"get":{"tags":["Orders"],"summary":"get order by corelation id","description":"get order by correlation id description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"OrderByCorelationId","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}},{"name":"corelation-id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderResponse"}}}}}}},"/holdings":{"get":{"tags":["Portfolio"],"summary":"get current holdings","description":"holding respnse detailed description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"holdings","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/HoldingResponse"}}}}}}}},"/fundlimit":{"get":{"tags":["FundLimit"],"summary":"get fund limit detail","description":"get fund limit details long description","externalDocs":{"description":"short description of external docs","url":"http://localhost/deeplink#"},"operationId":"fundlimit","parameters":[{"name":"access-token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundLimitResponse"}}}}}}}},"components":{"schemas":{"OrderModifyRequest":{"type":"object","properties":{"dhanClientId":{"type":"string","description":"User specific identification generated by Dhan"},"orderId":{"type":"string","description":"Order specific identification generated by Dhan"},"orderType":{"type":"string","description":"| **Enum Values** | **Description** |\n|------------------|-----------------------------|\n| LIMIT | For Limit Order types |\n| MARKET | For market Order types |\n| STOP_LOSS | For Stop Loss Limit orders |\n| STOP_LOSS_MARKET | For Stop Loss Market orders |","enum":["LIMIT","MARKET","STOP_LOSS","STOP_LOSS_MARKET"]},"legName":{"type":"string","description":"filed description goes here","enum":["ENTRY_LEG","STOP_LOSS_LEG","TARGET_LEG"]},"quantity":{"type":"integer","description":"Number of shares for the order","format":"int32"},"price":{"type":"number","description":"Price at which the order is requested to execute","format":"float"},"disclosedQuantity":{"type":"integer","description":"Number shares visible in the market depth","format":"int32"},"triggerPrice":{"type":"number","description":"Price at which the order is triggered","format":"float"},"validity":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|-----------------------|\n| DAY | Valid till end of day |\n| IOC | Immediate or Cancel |","enum":["DAY","IOC","GTC","GTD"]}}},"OrderResponse":{"type":"object","properties":{"dhanClientId":{"type":"string","description":"User specific identification generated by Dhan"},"orderId":{"type":"string","description":"Order specific identification generated by Dhan"},"correlationId":{"type":"string","description":"The user/partner generated id for tracking back"},"orderStatus":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|---------------------------------------------|\n| TRANSIT | Did not reach the exchange server |\n| PENDING | Reached at exchange end, awaiting execution |\n| REJECTED | Rejected at exchange/broker’s end |\n| CANCELLED | Cancelled by user |\n| TRADED | Executed |\n| EXPIRED | Validity of order is expired |","enum":["TRANSIT","PENDING","REJECTED","CANCELLED","TRADED","EXPIRED"]},"transactionType":{"type":"string","description":"Signifies the type of transaction wether it's BUY or SELL","enum":["BUY","SELL"]},"exchangeSegment":{"type":"string","description":"| **Enums** | **Exchange** | **Segment** |\n|--------------|--------------|-------------------|\n| NSE_EQ | NSE | Equity Cash |\n| NSE_FNO | NSE | Futures & Options |\n| NSE_CURRENCY | NSE | Currency |\n| BSE_EQ | BSE | Equity Cash |\n| MCX_COMM | MCX | Commodity |","enum":["NSE_EQ","NSE_FNO","NSE_CURRENCY","BSE_EQ","MCX_COMM"]},"productType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|------------------------------------------------|\n| CNC | Cash & Carry for equity deliveries |\n| INTRADAY | Intraday for Equity, Futures & Options |\n| MARGIN | Carry Forward in Futures & Options |\n| CO | Cover Order; entry and stop loss |\n| BO | Bracket Order; entry, stop loss & target price |\n**CO & BO product types will be valid only for Intraday**","enum":["CNC","INTRADAY","MARGIN","CO","BO"]},"orderType":{"type":"string","description":"| **Enum Values** | **Description** |\n|------------------|-----------------------------|\n| LIMIT | For Limit Order types |\n| MARKET | For market Order types |\n| STOP_LOSS | For Stop Loss Limit orders |\n| STOP_LOSS_MARKET | For Stop Loss Market orders |","enum":["LIMIT","MARKET","STOP_LOSS","STOP_LOSS_MARKET"]},"validity":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|-----------------------|\n| DAY | Valid till end of day |\n| IOC | Immediate or Cancel |","enum":["DAY","IOC","GTC","GTD"]},"tradingSymbol":{"type":"string","description":"Exchange standard trading symbol"},"securityId":{"type":"string","description":"Exchange standard identification for each scrip"},"quantity":{"type":"integer","description":"Number of shares for the order","format":"int32"},"disclosedQuantity":{"type":"integer","description":"Number shares visible in the market depth","format":"int32"},"price":{"type":"number","description":"Price at which the order is requested to execute","format":"float"},"triggerPrice":{"type":"number","description":"Price at which the order is triggered","format":"float"},"afterMarketOrder":{"type":"boolean","description":"Flag to inform that the order placed is After Market Order"},"boProfitValue":{"type":"number","description":"Bracket order Target price","format":"float"},"boStopLossValue":{"type":"number","description":"Bracket Order/Cover Order Stop Loss Price","format":"float"},"boLegNumber":{"type":"integer","format":"int32"},"createTime":{"type":"string","description":"Time at which the record is created"},"updateTime":{"type":"string","description":"Time at which the record is updated"},"exchangeTime":{"type":"string","description":"Time at which order reached at exchange end"},"drvExpiryDate":{"type":"string","description":"For F&O, expiry date of contract"},"drvOptionType":{"type":"string","description":"For Options, type CALL or PUT","enum":["CALL","PUT","NA"]},"drvStrikePrice":{"type":"number","description":"For Options, Strike Price","format":"float"}}},"PositionConversionRequest":{"type":"object","properties":{"dhanClientId":{"type":"string","description":"User specific identification generated by Dhan"},"fromProductType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|------------------------------------------------|\n| CNC | Cash & Carry for equity deliveries |\n| INTRADAY | Intraday for Equity, Futures & Options |\n| MARGIN | Carry Forward in Futures & Options |","enum":["CNC","INTRADAY","MARGIN","CO","BO"]},"exchangeSegment":{"type":"string","description":"| **Enums** | **Exchange** | **Segment** |\n|--------------|--------------|-------------------|\n| NSE_EQ | NSE | Equity Cash |\n| NSE_FNO | NSE | Futures & Options |\n| NSE_CURRENCY | NSE | Currency |\n| BSE_EQ | BSE | Equity Cash |\n| MCX_COMM | MCX | Commodity |","enum":["NSE_EQ","NSE_FNO","NSE_CURRENCY","BSE_EQ","MCX_COMM"]},"positionType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|-----------------------------------------------------|\n| LONG | When net bought quantity is more than sold quantity |\n| SHORT | When net sold quantity is more than bought quantity |\n| CLOSED | When no open position standing |","enum":["LONG","SHORT","CLOSED"]},"securityId":{"type":"string","description":"Exchange standard identification for each scrip"},"tradingSymbol":{"type":"string","description":"Exchange standard trading symbol"},"convertQty":{"type":"integer","description":"Number of shares for the conversion","format":"int32"},"toProductType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|------------------------------------------------|\n| CNC | Cash & Carry for equity deliveries |\n| INTRADAY | Intraday for Equity, Futures & Options |\n| MARGIN | Carry Forward in Futures & Options |","enum":["CNC","INTRADAY","MARGIN","CO","BO"]}}},"OrderRequest":{"required":["exchangeSegment","transactionType"],"type":"object","properties":{"dhanClientId":{"type":"string","description":"User specific identification generated by Dhan"},"correlationId":{"type":"string","description":"The user/partner generated id for tracking back"},"transactionType":{"type":"string","description":"Signifies the type of transaction wether it's BUY or SELL","enum":["BUY","SELL"]},"exchangeSegment":{"type":"string","description":"| **Enums** | **Exchange** | **Segment** |\n|--------------|--------------|-------------------|\n| NSE_EQ | NSE | Equity Cash |\n| NSE_FNO | NSE | Futures & Options |\n| NSE_CURRENCY | NSE | Currency |\n| BSE_EQ | BSE | Equity Cash |\n| MCX_COMM | MCX | Commodity |","enum":["NSE_EQ","NSE_FNO","NSE_CURRENCY","BSE_EQ","MCX_COMM"]},"productType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|------------------------------------------------|\n| CNC | Cash & Carry for equity deliveries |\n| INTRADAY | Intraday for Equity, Futures & Options |\n| MARGIN | Carry Forward in Futures & Options |\n| CO | Cover Order; entry and stop loss |\n| BO | Bracket Order; entry, stop loss & target price |\n**CO & BO product types will be valid only for Intraday**","enum":["CNC","INTRADAY","MARGIN","CO","BO"]},"orderType":{"type":"string","description":"| **Enum Values** | **Description** |\n|------------------|-----------------------------|\n| LIMIT | For Limit Order types |\n| MARKET | For market Order types |\n| STOP_LOSS | For Stop Loss Limit orders |\n| STOP_LOSS_MARKET | For Stop Loss Market orders |","enum":["LIMIT","MARKET","STOP_LOSS","STOP_LOSS_MARKET"]},"validity":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|-----------------------|\n| DAY | Valid till end of day |\n| IOC | Immediate or Cancel |","enum":["DAY","IOC","GTC","GTD"]},"tradingSymbol":{"type":"string","description":"Exchange standard trading symbol"},"securityId":{"type":"string","description":"Exchange standard identification for each scrip"},"quantity":{"type":"integer","description":"Number of shares for the order","format":"int32"},"disclosedQuantity":{"type":"integer","description":"Number shares visible in the market depth","format":"int32"},"price":{"type":"number","description":"Price at which the order is requested to execute","format":"float"},"triggerPrice":{"type":"number","description":"Price at which the order is triggered","format":"float"},"afterMarketOrder":{"type":"boolean","description":"Flag to inform that the order placed is After Market Order"},"boProfitValue":{"type":"number","description":"Bracket order Target price","format":"float"},"boStopLossValue":{"type":"number","description":"Bracket Order/Cover Order Stop Loss Price","format":"float"},"drvExpiryDate":{"type":"string","description":"For F&O, expiry date of contract"},"drvOptionType":{"type":"string","description":"For Options, type CALL or PUT","enum":["CALL","PUT","NA"]},"drvStrikePrice":{"type":"number","description":"For Options, Strike Price","format":"float"}}},"TradeResponse":{"type":"object","properties":{"dhanClientId":{"type":"string","description":"User specific identification generated by Dhan"},"orderId":{"type":"string","description":"Order specific identification generated by Dhan"},"exchangeOrderId":{"type":"string","description":"Order specific identification generated by Exchange"},"exchangeTradeId":{"type":"string","description":"Trade specific identification, generated by exchange once order is executed"},"transactionType":{"type":"string","description":"Signifies the type of transaction wether it's BUY or SELL","enum":["BUY","SELL"]},"exchangeSegment":{"type":"string","description":"| **Enums** | **Exchange** | **Segment** |\n|--------------|--------------|-------------------|\n| NSE_EQ | NSE | Equity Cash |\n| NSE_FNO | NSE | Futures & Options |\n| NSE_CURRENCY | NSE | Currency |\n| BSE_EQ | BSE | Equity Cash |\n| MCX_COMM | MCX | Commodity |","enum":["NSE_EQ","NSE_FNO","NSE_CURRENCY","BSE_EQ","MCX_COMM"]},"productType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|------------------------------------------------|\n| CNC | Cash & Carry for equity deliveries |\n| INTRADAY | Intraday for Equity, Futures & Options |\n| MARGIN | Carry Forward in Futures & Options |\n| CO | Cover Order; entry and stop loss |\n| BO | Bracket Order; entry, stop loss & target price |\n**CO & BO product types will be valid only for Intraday**","enum":["CNC","INTRADAY","MARGIN","CO","BO"]},"orderType":{"type":"string","description":"| **Enum Values** | **Description** |\n|------------------|-----------------------------|\n| LIMIT | For Limit Order types |\n| MARKET | For market Order types |\n| STOP_LOSS | For Stop Loss Limit orders |\n| STOP_LOSS_MARKET | For Stop Loss Market orders |","enum":["LIMIT","MARKET","STOP_LOSS","STOP_LOSS_MARKET"]},"tradingSymbol":{"type":"string","description":"Exchange standard trading symbol"},"securityId":{"type":"string","description":"Exchange standard identification for each scrip"},"tradedQuantity":{"type":"integer","description":"Number of shares traded","format":"int32"},"tradedPrice":{"type":"number","description":"Price at which trade executed","format":"float"},"createTime":{"type":"string","description":"Record create date time"},"updateTime":{"type":"string","description":"Record update date time"},"exchangeTime":{"type":"string","description":"Time at which order reached at exchange end"},"drvExpiryDate":{"type":"string","description":"For F&O, expiry date of contract"},"drvPptionType":{"type":"string","description":"For Options, type CALL or PUT","enum":["CALL","PUT","NA"]},"drvStrikePrice":{"type":"number","description":"For Options, Strike Price","format":"float"}}},"PositionResponse":{"type":"object","properties":{"dhanClientId":{"type":"string","description":"User specific identification generated by Dhan"},"tradingSymbol":{"type":"string","description":"Exchange standard trading symbol"},"securityId":{"type":"string","description":"Exchange standard identification for each scrip"},"positionType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|-----------------------------------------------------|\n| LONG | When net bought quantity is more than sold quantity |\n| SHORT | When net sold quantity is more than bought quantity |\n| CLOSED | When no open position standing |","enum":["LONG","SHORT","CLOSED"]},"exchangeSegment":{"type":"string","description":"| **Enums** | **Exchange** | **Segment** |\n|--------------|--------------|-------------------|\n| NSE_EQ | NSE | Equity Cash |\n| NSE_FNO | NSE | Futures & Options |\n| NSE_CURRENCY | NSE | Currency |\n| BSE_EQ | BSE | Equity Cash |\n| MCX_COMM | MCX | Commodity |","enum":["NSE_EQ","NSE_FNO","NSE_CURRENCY","BSE_EQ","MCX_COMM"]},"productType":{"type":"string","description":"| **Enum Values** | **Description** |\n|-----------------|------------------------------------------------|\n| CNC | Cash & Carry for equity deliveries |\n| INTRADAY | Intraday for Equity, Futures & Options |\n| MARGIN | Carry Forward in Futures & Options |\n| CO | Cover Order; entry and stop loss |\n| BO | Bracket Order; entry, stop loss & target price |\n**CO & BO product types will be valid only for Intraday**","enum":["CNC","INTRADAY","MARGIN","CO","BO"]},"buyAvg":{"type":"number","description":"Average buy price","format":"float"},"buyQty":{"type":"integer","description":"Total quantity bought","format":"int32"},"sellAvg":{"type":"number","description":" Average sell price","format":"float"},"sellQty":{"type":"integer","description":"Total quantities sold","format":"int32"},"netQty":{"type":"integer","description":"buyQty minus sellQty equals netQty","format":"int32"},"realizedProfit":{"type":"number","description":"Profit or loss booked","format":"float"},"unrealizedProfit":{"type":"number","description":"Profit or loss standing for open position","format":"float"},"rbiReferenceRate":{"type":"number","description":"RBI mandated reference rate for forex","format":"float"},"multiplier":{"type":"integer","description":"Multiplying factor for currency F&O","format":"int32"},"carryForwardBuyQty":{"type":"integer","description":"Carry forward F&O long quantities","format":"int32"},"carryForwardSellQty":{"type":"integer","description":"Carry forward F&O short quantities","format":"int32"},"carryForwardBuyValue":{"type":"number","description":"Carry forward F&O long value","format":"float"},"carryForwardSellValue":{"type":"number","description":"Carry forward F&O short value","format":"float"},"dayBuyQty":{"type":"integer","description":"Quantities bought today","format":"int32"},"daySellQty":{"type":"integer","description":"Quantities sold today","format":"int32"},"dayBuyValue":{"type":"number","description":"Value of quantities bought today","format":"float"},"daySellValue":{"type":"number","description":"Value of quantities sold today","format":"float"},"drvExpiryDate":{"type":"string","description":"For F&O, expiry date of contract"},"drvOptionType":{"type":"string","description":"For Options, type CALL or PUT","enum":["CALL","PUT","NA"]},"drvStrikePrice":{"type":"number","description":"For Options, Strike Price","format":"float"},"crossCurrency":{"type":"boolean"}}},"HoldingResponse":{"type":"object","properties":{"exchange":{"type":"string","description":"Enum values is either NSE or BSE","enum":["NSE","BSE","MCX","ALL"]},"tradingSymbol":{"type":"string","description":"Exchange standard trading symbol"},"securityId":{"type":"string","description":"Exchange standard identification for each scrip"},"isin":{"type":"string","description":"International Securities Identification Number"},"totalQty":{"type":"integer","description":"Total number of shares in holding for given stock","format":"int32"},"dpQty":{"type":"integer","description":"Quantities present in depository","format":"int32"},"t1Qty":{"type":"integer","description":"Quantities not delivered to depository","format":"int32"},"availableQty":{"type":"integer","description":"Quantities available for transactions","format":"int32"},"collateralQty":{"type":"integer","description":"Quantities placed as collateral with broker","format":"int32"},"avgCostPrice":{"type":"number","description":"Average Buy Price of total quantities","format":"float"}}},"FundLimitResponse":{"type":"object","properties":{"dhanClientId":{"type":"string","description":"User specific identification generated by Dhan"},"availabelBalance":{"type":"number","description":"Available amount to trade","format":"float"},"sodLimit":{"type":"number","description":"Start of the day amount","format":"float"},"collateralAmount":{"type":"number","description":"Amount received against collateral","format":"float"},"receiveableAmount":{"type":"number","description":"Amount available against selling deliveries","format":"float"},"utilizedAmount":{"type":"number","description":"Amount utilised in the day","format":"float"},"blockedPayoutAmount":{"type":"number","description":"Amount blocked against payout request","format":"float"},"withdrawableBalance":{"type":"number","description":"Amount available to withdraw to bank","format":"float"}}}}}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment