TypeScript NodeJS client for gate-api.
APIv4 provides spot, margin and futures trading operations. There are public APIs to retrieve the real-time market statistics, and private APIs which needs authentication to trade on user's behalf.
This SDK is automatically generated by the OpenAPI Generator project:
- API version: 4.18.4
- Package version:
- Build package: org.openapitools.codegen.languages.TypeScriptNodeClientCodegen For more information, please visit https://www.gate.io/page/contacts
Environment
- Node.js
Language level
- ES2017
It can be used in both TypeScript and JavaScript. In TypeScript, the definition should be automatically resolved via package.json. (Reference)
This package is targeting Node.js applications only, because it's not safe to store API secret in browser.
gateapi-js can be used in browser but with public endpoints only.
Trying our best to follow the semantic versioning, while enjoying recent features provided by programming language and libraries, from 4.15.2, one major versioning difference will be introduced:
If extra code rewrite is required when you upgrade the SDK, such as:
- some outdated programming language version support is dropped
- API method signature has breaking changes.
the MAJOR version will be incremented, but the MINOR and PATCH version are still following REST API's instead of resetting to 0, so that you can recognize it has some breaking changes, but still getting the idea of from which REST API version the change is introduced.
For example, the previous REST API and SDK version are both 4.14.0. But if we decide to introduce some breaking changes in SDK along with REST API 4.15.2 upgrade, then the version of next SDK release will be 5.15.2(the MAJOR version is incremented to denote breaking changes, but the MINOR and PATCH version are identical to REST API's instead of resetting them to 0)
If MAJOR version is incremented, make sure you read the release note on Releases page
To build and compile the typescript sources to javascript use:
npm install
npm run build
To use the library locally, first install the dependencies by changing into the directory containing package.json (and this README). Then run:
npm installNext, link it globally in npm with the following:
npm linkFinally, switch to the directory you want to use your gate-api from, and run:
npm link gate-apiYou should now be able to require('gate-api') in javascript files from the directory you ran the last command above from.
If the library is hosted at a git repository, e.g. https://github.com/gateio/gateapi-nodejs then install it via:
npm install gateio/gateapi-nodejs --savePlease follow the installation instruction and execute the following TypeScript code:
const GateApi = require('gate-api');
const client = new GateApi.ApiClient();
// uncomment the next line to change base path
// client.basePath = "https://some-other-host"
const api = new GateApi.DeliveryApi(client);
const settle = "usdt"; // 'usdt' | Settle currency
api.listDeliveryContracts(settle)
.then(value => console.log('API called successfully. Returned data: ', value.body),
error => console.error(error));All URIs are relative to https://api.gateio.ws/api/v4
| Class | Method | HTTP request | Description |
|---|---|---|---|
| DeliveryApi | listDeliveryContracts | GET /delivery/{settle}/contracts | List all futures contracts |
| DeliveryApi | getDeliveryContract | GET /delivery/{settle}/contracts/{contract} | Get a single contract |
| DeliveryApi | listDeliveryOrderBook | GET /delivery/{settle}/order_book | Futures order book |
| DeliveryApi | listDeliveryTrades | GET /delivery/{settle}/trades | Futures trading history |
| DeliveryApi | listDeliveryCandlesticks | GET /delivery/{settle}/candlesticks | Get futures candlesticks |
| DeliveryApi | listDeliveryTickers | GET /delivery/{settle}/tickers | List futures tickers |
| DeliveryApi | listDeliveryInsuranceLedger | GET /delivery/{settle}/insurance | Futures insurance balance history |
| DeliveryApi | listDeliveryAccounts | GET /delivery/{settle}/accounts | Query futures account |
| DeliveryApi | listDeliveryAccountBook | GET /delivery/{settle}/account_book | Query account book |
| DeliveryApi | listDeliveryPositions | GET /delivery/{settle}/positions | List all positions of a user |
| DeliveryApi | getDeliveryPosition | GET /delivery/{settle}/positions/{contract} | Get single position |
| DeliveryApi | updateDeliveryPositionMargin | POST /delivery/{settle}/positions/{contract}/margin | Update position margin |
| DeliveryApi | updateDeliveryPositionLeverage | POST /delivery/{settle}/positions/{contract}/leverage | Update position leverage |
| DeliveryApi | updateDeliveryPositionRiskLimit | POST /delivery/{settle}/positions/{contract}/risk_limit | Update position risk limit |
| DeliveryApi | listDeliveryOrders | GET /delivery/{settle}/orders | List futures orders |
| DeliveryApi | createDeliveryOrder | POST /delivery/{settle}/orders | Create a futures order |
| DeliveryApi | cancelDeliveryOrders | DELETE /delivery/{settle}/orders | Cancel all `open` orders matched |
| DeliveryApi | getDeliveryOrder | GET /delivery/{settle}/orders/{order_id} | Get a single order |
| DeliveryApi | cancelDeliveryOrder | DELETE /delivery/{settle}/orders/{order_id} | Cancel a single order |
| DeliveryApi | getMyDeliveryTrades | GET /delivery/{settle}/my_trades | List personal trading history |
| DeliveryApi | listDeliveryPositionClose | GET /delivery/{settle}/position_close | List position close history |
| DeliveryApi | listDeliveryLiquidates | GET /delivery/{settle}/liquidates | List liquidation history |
| DeliveryApi | listDeliverySettlements | GET /delivery/{settle}/settlements | List settlement history |
| DeliveryApi | listPriceTriggeredDeliveryOrders | GET /delivery/{settle}/price_orders | List all auto orders |
| DeliveryApi | createPriceTriggeredDeliveryOrder | POST /delivery/{settle}/price_orders | Create a price-triggered order |
| DeliveryApi | cancelPriceTriggeredDeliveryOrderList | DELETE /delivery/{settle}/price_orders | Cancel all open orders |
| DeliveryApi | getPriceTriggeredDeliveryOrder | GET /delivery/{settle}/price_orders/{order_id} | Get a single order |
| DeliveryApi | cancelPriceTriggeredDeliveryOrder | DELETE /delivery/{settle}/price_orders/{order_id} | Cancel a single order |
| FuturesApi | listFuturesContracts | GET /futures/{settle}/contracts | List all futures contracts |
| FuturesApi | getFuturesContract | GET /futures/{settle}/contracts/{contract} | Get a single contract |
| FuturesApi | listFuturesOrderBook | GET /futures/{settle}/order_book | Futures order book |
| FuturesApi | listFuturesTrades | GET /futures/{settle}/trades | Futures trading history |
| FuturesApi | listFuturesCandlesticks | GET /futures/{settle}/candlesticks | Get futures candlesticks |
| FuturesApi | listFuturesTickers | GET /futures/{settle}/tickers | List futures tickers |
| FuturesApi | listFuturesFundingRateHistory | GET /futures/{settle}/funding_rate | Funding rate history |
| FuturesApi | listFuturesInsuranceLedger | GET /futures/{settle}/insurance | Futures insurance balance history |
| FuturesApi | listContractStats | GET /futures/{settle}/contract_stats | Futures stats |
| FuturesApi | listLiquidatedOrders | GET /futures/{settle}/liq_orders | Retrieve liquidation history |
| FuturesApi | listFuturesAccounts | GET /futures/{settle}/accounts | Query futures account |
| FuturesApi | listFuturesAccountBook | GET /futures/{settle}/account_book | Query account book |
| FuturesApi | listPositions | GET /futures/{settle}/positions | List all positions of a user |
| FuturesApi | getPosition | GET /futures/{settle}/positions/{contract} | Get single position |
| FuturesApi | updatePositionMargin | POST /futures/{settle}/positions/{contract}/margin | Update position margin |
| FuturesApi | updatePositionLeverage | POST /futures/{settle}/positions/{contract}/leverage | Update position leverage |
| FuturesApi | updatePositionRiskLimit | POST /futures/{settle}/positions/{contract}/risk_limit | Update position risk limit |
| FuturesApi | setDualMode | POST /futures/{settle}/dual_mode | Enable or disable dual mode |
| FuturesApi | getDualModePosition | GET /futures/{settle}/dual_comp/positions/{contract} | Retrieve position detail in dual mode |
| FuturesApi | updateDualModePositionMargin | POST /futures/{settle}/dual_comp/positions/{contract}/margin | Update position margin in dual mode |
| FuturesApi | updateDualModePositionLeverage | POST /futures/{settle}/dual_comp/positions/{contract}/leverage | Update position leverage in dual mode |
| FuturesApi | updateDualModePositionRiskLimit | POST /futures/{settle}/dual_comp/positions/{contract}/risk_limit | Update position risk limit in dual mode |
| FuturesApi | listFuturesOrders | GET /futures/{settle}/orders | List futures orders |
| FuturesApi | createFuturesOrder | POST /futures/{settle}/orders | Create a futures order |
| FuturesApi | cancelFuturesOrders | DELETE /futures/{settle}/orders | Cancel all `open` orders matched |
| FuturesApi | getFuturesOrder | GET /futures/{settle}/orders/{order_id} | Get a single order |
| FuturesApi | cancelFuturesOrder | DELETE /futures/{settle}/orders/{order_id} | Cancel a single order |
| FuturesApi | getMyTrades | GET /futures/{settle}/my_trades | List personal trading history |
| FuturesApi | listPositionClose | GET /futures/{settle}/position_close | List position close history |
| FuturesApi | listLiquidates | GET /futures/{settle}/liquidates | List liquidation history |
| FuturesApi | listPriceTriggeredOrders | GET /futures/{settle}/price_orders | List all auto orders |
| FuturesApi | createPriceTriggeredOrder | POST /futures/{settle}/price_orders | Create a price-triggered order |
| FuturesApi | cancelPriceTriggeredOrderList | DELETE /futures/{settle}/price_orders | Cancel all open orders |
| FuturesApi | getPriceTriggeredOrder | GET /futures/{settle}/price_orders/{order_id} | Get a single order |
| FuturesApi | cancelPriceTriggeredOrder | DELETE /futures/{settle}/price_orders/{order_id} | Cancel a single order |
| MarginApi | listMarginCurrencyPairs | GET /margin/currency_pairs | List all supported currency pairs supported in margin trading |
| MarginApi | getMarginCurrencyPair | GET /margin/currency_pairs/{currency_pair} | Query one single margin currency pair |
| MarginApi | listFundingBook | GET /margin/funding_book | Order book of lending loans |
| MarginApi | listMarginAccounts | GET /margin/accounts | Margin account list |
| MarginApi | listMarginAccountBook | GET /margin/account_book | List margin account balance change history |
| MarginApi | listFundingAccounts | GET /margin/funding_accounts | Funding account list |
| MarginApi | listLoans | GET /margin/loans | List all loans |
| MarginApi | createLoan | POST /margin/loans | Lend or borrow |
| MarginApi | mergeLoans | POST /margin/merged_loans | Merge multiple lending loans |
| MarginApi | getLoan | GET /margin/loans/{loan_id} | Retrieve one single loan detail |
| MarginApi | cancelLoan | DELETE /margin/loans/{loan_id} | Cancel lending loan |
| MarginApi | updateLoan | PATCH /margin/loans/{loan_id} | Modify a loan |
| MarginApi | listLoanRepayments | GET /margin/loans/{loan_id}/repayment | List loan repayment records |
| MarginApi | repayLoan | POST /margin/loans/{loan_id}/repayment | Repay a loan |
| MarginApi | listLoanRecords | GET /margin/loan_records | List repayment records of specified loan |
| MarginApi | getLoanRecord | GET /margin/loan_records/{loan_record_id} | Get one single loan record |
| MarginApi | updateLoanRecord | PATCH /margin/loan_records/{loan_record_id} | Modify a loan record |
| SpotApi | listCurrencies | GET /spot/currencies | List all currencies' detail |
| SpotApi | getCurrency | GET /spot/currencies/{currency} | Get detail of one particular currency |
| SpotApi | listCurrencyPairs | GET /spot/currency_pairs | List all currency pairs supported |
| SpotApi | getCurrencyPair | GET /spot/currency_pairs/{currency_pair} | Get detail of one single order |
| SpotApi | listTickers | GET /spot/tickers | Retrieve ticker information |
| SpotApi | listOrderBook | GET /spot/order_book | Retrieve order book |
| SpotApi | listTrades | GET /spot/trades | Retrieve market trades |
| SpotApi | listCandlesticks | GET /spot/candlesticks | Market candlesticks |
| SpotApi | getFee | GET /spot/fee | Query user trading fee rates |
| SpotApi | listSpotAccounts | GET /spot/accounts | List spot accounts |
| SpotApi | createBatchOrders | POST /spot/batch_orders | Create a batch of orders |
| SpotApi | listAllOpenOrders | GET /spot/open_orders | List all open orders |
| SpotApi | listOrders | GET /spot/orders | List orders |
| SpotApi | createOrder | POST /spot/orders | Create an order |
| SpotApi | cancelOrders | DELETE /spot/orders | Cancel all `open` orders in specified currency pair |
| SpotApi | cancelBatchOrders | POST /spot/cancel_batch_orders | Cancel a batch of orders with an ID list |
| SpotApi | getOrder | GET /spot/orders/{order_id} | Get a single order |
| SpotApi | cancelOrder | DELETE /spot/orders/{order_id} | Cancel a single order |
| SpotApi | listMyTrades | GET /spot/my_trades | List personal trading history |
| WalletApi | getDepositAddress | GET /wallet/deposit_address | Generate currency deposit address |
| WalletApi | listWithdrawals | GET /wallet/withdrawals | Retrieve withdrawal records |
| WalletApi | listDeposits | GET /wallet/deposits | Retrieve deposit records |
| WalletApi | transfer | POST /wallet/transfers | Transfer between trading accounts |
| WalletApi | listSubAccountTransfers | GET /wallet/sub_account_transfers | Transfer records between main and sub accounts |
| WalletApi | transferWithSubAccount | POST /wallet/sub_account_transfers | Transfer between main and sub accounts |
| WalletApi | listWithdrawStatus | GET /wallet/withdraw_status | Retrieve withdrawal status |
| WalletApi | listSubAccountBalances | GET /wallet/sub_account_balances | Retrieve sub account balances |
| WithdrawalApi | withdraw | POST /withdrawals | Withdraw |
- BatchOrder
- CancelOrder
- CancelOrderResult
- Contract
- ContractStat
- Currency
- CurrencyPair
- DeliveryContract
- DeliverySettlement
- DepositAddress
- FundingAccount
- FundingBookItem
- FundingRateRecord
- FuturesAccount
- FuturesAccountBook
- FuturesCandlestick
- FuturesInitialOrder
- FuturesLiquidate
- FuturesOrder
- FuturesOrderBook
- FuturesOrderBookItem
- FuturesPriceTrigger
- FuturesPriceTriggeredOrder
- FuturesTicker
- FuturesTrade
- InsuranceRecord
- LedgerRecord
- Loan
- LoanPatch
- LoanRecord
- MarginAccount
- MarginAccountBook
- MarginAccountCurrency
- MarginCurrencyPair
- MyFuturesTrade
- OpenOrders
- Order
- OrderBook
- Position
- PositionClose
- PositionCloseOrder
- RepayRequest
- Repayment
- SpotAccount
- SubAccountBalance
- SubAccountTransfer
- Ticker
- Trade
- TradeFee
- Transfer
- TriggerOrderResponse
- WithdrawStatus
Authentication schemes defined for the API:
- Type: Gate APIv4
https://www.gate.io/docs/apiv4/en/index.html#apiv4-signed-request-requirements