BitMexApi - JavaScript client for bit_mex_api
REST API for the BitMEX Trading Platform View Changelog #### Getting Started Base URI: https://www.bitmex.com/api/v1 ##### Fetching Data All REST endpoints are documented below. You can try out any query right from this interface. Most table queries accept count
, start
, and reverse
params. Set reverse=true
to get rows newest-first. Additional documentation regarding filters, timestamps, and authentication is available in the main API documentation. All table data is available via the Websocket. We highly recommend using the socket if you want to have the quickest possible data without being subject to ratelimits. ##### Return Types By default, all data is returned as JSON. Send ?_format=csv
to get CSV data or ?_format=xml
to get XML data. ##### Trade Data Queries This is only a small subset of what is available, to get you started. Fill in the parameters and click the Try it out!
button to try any of these queries. * Pricing Data * Trade Data * OrderBook Data * Settlement Data * Exchange Statistics Every function of the BitMEX.com platform is exposed here and documented. Many more functions are available. ##### Swagger Specification ⇩ Download Swagger JSON ## All API Endpoints Click to expand a section.
This SDK is automatically generated by the Swagger Codegen project:
- API version: 1.2.0
- Package version: 1.2.0
- Build package: io.swagger.codegen.languages.JavascriptClientCodegen
For Node.js
To publish the library as a npm, please follow the procedure in "Publishing npm packages".
Then install it via:
npm install bit_mex_api --save
To use the library locally without publishing to a remote npm registry, first install the dependencies by changing
into the directory containing package.json
(and this README). Let's call this JAVASCRIPT_CLIENT_DIR
. Then run:
npm install
Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR
:
npm link
Finally, switch to the directory you want to use your bit_mex_api from, and run:
npm link /path/to/<JAVASCRIPT_CLIENT_DIR>
You should now be able to require('bit_mex_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/GIT_USER_ID/GIT_REPO_ID then install it via:
npm install GIT_USER_ID/GIT_REPO_ID --save
The library also works in the browser environment via npm and browserify. After following
the above steps with Node.js and installing browserify with npm install -g browserify
,
perform the following (assuming main.js is your entry file, that's to say your javascript file where you actually
use this library):
browserify main.js > bundle.js
Then include bundle.js in the HTML pages.
Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:
module: {
rules: [
{
parser: {
amd: false
}
}
]
}
Please follow the installation instruction and execute the following JS code:
var BitMexApi = require('bit_mex_api');
var defaultClient = BitMexApi.ApiClient.instance;
// Configure API key authorization: apiKey
var apiKey = defaultClient.authentications['apiKey'];
apiKey.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//apiKey.apiKeyPrefix['api-key'] = "Token"
// Configure API key authorization: apiNonce
var apiNonce = defaultClient.authentications['apiNonce'];
apiNonce.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//apiNonce.apiKeyPrefix['api-nonce'] = "Token"
// Configure API key authorization: apiSignature
var apiSignature = defaultClient.authentications['apiSignature'];
apiSignature.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//apiSignature.apiKeyPrefix['api-signature'] = "Token"
var api = new BitMexApi.APIKeyApi()
var apiKeyID = "apiKeyID_example"; // {String} API Key ID (public component).
var callback = function(error, data, response) {
if (error) {
console.error(error);
} else {
console.log('API called successfully. Returned data: ' + data);
}
};
api.aPIKeyDisable(apiKeyID, callback);
All URIs are relative to https://localhost/api/v1
Class | Method | HTTP request | Description |
---|---|---|---|
BitMexApi.APIKeyApi | aPIKeyDisable | POST /apiKey/disable | Disable an API Key. |
BitMexApi.APIKeyApi | aPIKeyEnable | POST /apiKey/enable | Enable an API Key. |
BitMexApi.APIKeyApi | aPIKeyGet | GET /apiKey | Get your API Keys. |
BitMexApi.APIKeyApi | aPIKeyNew | POST /apiKey | Create a new API Key. |
BitMexApi.APIKeyApi | aPIKeyRemove | DELETE /apiKey | Remove an API Key. |
BitMexApi.AnnouncementApi | announcementGet | GET /announcement | Get site announcements. |
BitMexApi.AnnouncementApi | announcementGetUrgent | GET /announcement/urgent | Get urgent (banner) announcements. |
BitMexApi.ChatApi | chatGet | GET /chat | Get chat messages. |
BitMexApi.ChatApi | chatGetChannels | GET /chat/channels | Get available channels. |
BitMexApi.ChatApi | chatGetConnected | GET /chat/connected | Get connected users. |
BitMexApi.ChatApi | chatNew | POST /chat | Send a chat message. |
BitMexApi.ExecutionApi | executionGet | GET /execution | Get all raw executions for your account. |
BitMexApi.ExecutionApi | executionGetTradeHistory | GET /execution/tradeHistory | Get all balance-affecting executions. This includes each trade, insurance charge, and settlement. |
BitMexApi.FundingApi | fundingGet | GET /funding | Get funding history. |
BitMexApi.InstrumentApi | instrumentGet | GET /instrument | Get instruments. |
BitMexApi.InstrumentApi | instrumentGetActive | GET /instrument/active | Get all active instruments and instruments that have expired in <24hrs. |
BitMexApi.InstrumentApi | instrumentGetActiveAndIndices | GET /instrument/activeAndIndices | Helper method. Gets all active instruments and all indices. This is a join of the result of /indices and /active. |
BitMexApi.InstrumentApi | instrumentGetActiveIntervals | GET /instrument/activeIntervals | Return all active contract series and interval pairs. |
BitMexApi.InstrumentApi | instrumentGetCompositeIndex | GET /instrument/compositeIndex | Show constituent parts of an index. |
BitMexApi.InstrumentApi | instrumentGetIndices | GET /instrument/indices | Get all price indices. |
BitMexApi.InsuranceApi | insuranceGet | GET /insurance | Get insurance fund history. |
BitMexApi.LeaderboardApi | leaderboardGet | GET /leaderboard | Get current leaderboard. |
BitMexApi.LeaderboardApi | leaderboardGetName | GET /leaderboard/name | Get your alias on the leaderboard. |
BitMexApi.LiquidationApi | liquidationGet | GET /liquidation | Get liquidation orders. |
BitMexApi.NotificationApi | notificationGet | GET /notification | Get your current notifications. |
BitMexApi.OrderApi | orderAmend | PUT /order | Amend the quantity or price of an open order. |
BitMexApi.OrderApi | orderAmendBulk | PUT /order/bulk | Amend multiple orders for the same symbol. |
BitMexApi.OrderApi | orderCancel | DELETE /order | Cancel order(s). Send multiple order IDs to cancel in bulk. |
BitMexApi.OrderApi | orderCancelAll | DELETE /order/all | Cancels all of your orders. |
BitMexApi.OrderApi | orderCancelAllAfter | POST /order/cancelAllAfter | Automatically cancel all your orders after a specified timeout. |
BitMexApi.OrderApi | orderClosePosition | POST /order/closePosition | Close a position. [Deprecated, use POST /order with execInst: 'Close'] |
BitMexApi.OrderApi | orderGetOrders | GET /order | Get your orders. |
BitMexApi.OrderApi | orderNew | POST /order | Create a new order. |
BitMexApi.OrderApi | orderNewBulk | POST /order/bulk | Create multiple new orders for the same symbol. |
BitMexApi.OrderBookApi | orderBookGetL2 | GET /orderBook/L2 | Get current orderbook in vertical format. |
BitMexApi.PositionApi | positionGet | GET /position | Get your positions. |
BitMexApi.PositionApi | positionIsolateMargin | POST /position/isolate | Enable isolated margin or cross margin per-position. |
BitMexApi.PositionApi | positionTransferIsolatedMargin | POST /position/transferMargin | Transfer equity in or out of a position. |
BitMexApi.PositionApi | positionUpdateLeverage | POST /position/leverage | Choose leverage for a position. |
BitMexApi.PositionApi | positionUpdateRiskLimit | POST /position/riskLimit | Update your risk limit. |
BitMexApi.QuoteApi | quoteGet | GET /quote | Get Quotes. |
BitMexApi.QuoteApi | quoteGetBucketed | GET /quote/bucketed | Get previous quotes in time buckets. |
BitMexApi.SchemaApi | schemaGet | GET /schema | Get model schemata for data objects returned by this API. |
BitMexApi.SchemaApi | schemaWebsocketHelp | GET /schema/websocketHelp | Returns help text & subject list for websocket usage. |
BitMexApi.SettlementApi | settlementGet | GET /settlement | Get settlement history. |
BitMexApi.StatsApi | statsGet | GET /stats | Get exchange-wide and per-series turnover and volume statistics. |
BitMexApi.StatsApi | statsHistory | GET /stats/history | Get historical exchange-wide and per-series turnover and volume statistics. |
BitMexApi.StatsApi | statsHistoryUSD | GET /stats/historyUSD | Get a summary of exchange statistics in USD. |
BitMexApi.TradeApi | tradeGet | GET /trade | Get Trades. |
BitMexApi.TradeApi | tradeGetBucketed | GET /trade/bucketed | Get previous trades in time buckets. |
BitMexApi.UserApi | userCancelWithdrawal | POST /user/cancelWithdrawal | Cancel a withdrawal. |
BitMexApi.UserApi | userCheckReferralCode | GET /user/checkReferralCode | Check if a referral code is valid. |
BitMexApi.UserApi | userConfirm | POST /user/confirmEmail | Confirm your email address with a token. |
BitMexApi.UserApi | userConfirmEnableTFA | POST /user/confirmEnableTFA | Confirm two-factor auth for this account. If using a Yubikey, simply send a token to this endpoint. |
BitMexApi.UserApi | userConfirmWithdrawal | POST /user/confirmWithdrawal | Confirm a withdrawal. |
BitMexApi.UserApi | userDisableTFA | POST /user/disableTFA | Disable two-factor auth for this account. |
BitMexApi.UserApi | userGet | GET /user | Get your user model. |
BitMexApi.UserApi | userGetAffiliateStatus | GET /user/affiliateStatus | Get your current affiliate/referral status. |
BitMexApi.UserApi | userGetCommission | GET /user/commission | Get your account's commission status. |
BitMexApi.UserApi | userGetDepositAddress | GET /user/depositAddress | Get a deposit address. |
BitMexApi.UserApi | userGetMargin | GET /user/margin | Get your account's margin status. Send a currency of "all" to receive an array of all supported currencies. |
BitMexApi.UserApi | userGetWallet | GET /user/wallet | Get your current wallet information. |
BitMexApi.UserApi | userGetWalletHistory | GET /user/walletHistory | Get a history of all of your wallet transactions (deposits, withdrawals, PNL). |
BitMexApi.UserApi | userGetWalletSummary | GET /user/walletSummary | Get a summary of all of your wallet transactions (deposits, withdrawals, PNL). |
BitMexApi.UserApi | userLogout | POST /user/logout | Log out of BitMEX. |
BitMexApi.UserApi | userLogoutAll | POST /user/logoutAll | Log all systems out of BitMEX. This will revoke all of your account's access tokens, logging you out on all devices. |
BitMexApi.UserApi | userMinWithdrawalFee | GET /user/minWithdrawalFee | Get the minimum withdrawal fee for a currency. |
BitMexApi.UserApi | userRequestEnableTFA | POST /user/requestEnableTFA | Get secret key for setting up two-factor auth. |
BitMexApi.UserApi | userRequestWithdrawal | POST /user/requestWithdrawal | Request a withdrawal to an external wallet. |
BitMexApi.UserApi | userSavePreferences | POST /user/preferences | Save user preferences. |
BitMexApi.UserApi | userUpdate | PUT /user | Update your password, name, and other attributes. |
- BitMexApi.APIKey
- BitMexApi.AccessToken
- BitMexApi.Affiliate
- BitMexApi.Announcement
- BitMexApi.Chat
- BitMexApi.ChatChannel
- BitMexApi.ConnectedUsers
- BitMexApi.Error
- BitMexApi.ErrorError
- BitMexApi.Execution
- BitMexApi.Funding
- BitMexApi.IndexComposite
- BitMexApi.InlineResponse200
- BitMexApi.InlineResponse2001
- BitMexApi.Instrument
- BitMexApi.InstrumentInterval
- BitMexApi.Insurance
- BitMexApi.Leaderboard
- BitMexApi.Liquidation
- BitMexApi.Margin
- BitMexApi.Notification
- BitMexApi.Order
- BitMexApi.OrderBookL2
- BitMexApi.Position
- BitMexApi.Quote
- BitMexApi.Settlement
- BitMexApi.Stats
- BitMexApi.StatsHistory
- BitMexApi.StatsUSD
- BitMexApi.Trade
- BitMexApi.TradeBin
- BitMexApi.Transaction
- BitMexApi.User
- BitMexApi.UserCommission
- BitMexApi.UserPreferences
- BitMexApi.Wallet
- BitMexApi.XAny
- Type: API key
- API key parameter name: api-key
- Location: HTTP header
- Type: API key
- API key parameter name: api-nonce
- Location: HTTP header
- Type: API key
- API key parameter name: api-signature
- Location: HTTP header