# HashKey MCP connector

The HashKey connector brings HashKey market data, futures positions, balances, withdrawals and whitelisted wallets into Claude, ChatGPT, Cursor and the Elaichi Agent, with each person signed in as themselves and every call logged.

Source: https://elaichi.ai/connectors/hashkey/

## Facts

| | |
| --- | --- |
| Application | HashKey |
| Category | Default |
| AI tools | 103 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 103 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once HashKey is connected

- What is the current funding rate on BTC perpetuals?
- Show our open HashKey futures positions and leverage
- Summarize the 24 hour ticker for ETH against its mark price

## Connect HashKey in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick HashKey.
2. Optionally set Share with, then press Connect.
3. Paste a HashKey API key. One person generates a token in HashKey and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which HashKey tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect HashKey to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect HashKey to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect HashKey to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect HashKey to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a HashKey tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with HashKey through Elaichi

### Check positions and funding before the open

Trading. Ask for your open HashKey futures positions, current leverage and the funding rate on each contract, and get one plain answer instead of switching between screens.

### Move funds to a whitelisted wallet

Treasury. Confirm which HashKey wallets are already whitelisted, then raise an account withdraw or a fiat withdraw to one of them without leaving the conversation.

### Watch leverage and liquidation status

Risk. Pull leverage, risk limits and liquidation assign status across HashKey futures accounts and get a flag when a position drifts toward its limit.

### Pull price history for a report

Research. Request klines, 24 hour tickers, mark price and index price for any HashKey pair and have the agent summarize the move in a paragraph you can paste into a note.

### Reconcile balances and commission rates

Finance. Read HashKey futures balances alongside the commission rate on each account so month-end reconciliation starts from live numbers rather than a screenshot.

### Review whitelist verifications and withdrawals

Compliance. List every HashKey whitelist verification and see who raised each withdraw, with the Elaichi audit log naming the person behind every request.

## Frequently asked questions

### How do I connect HashKey to Claude?

Connect HashKey in Elaichi first: paste the API key from your HashKey account and Elaichi holds it for you. Then in Claude open Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp. There is no OAuth application to register and no client ID or secret to generate, so the whole thing takes a few minutes.

### Does HashKey work with ChatGPT and Cursor as well as Claude?

Yes. Once HashKey is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client and the Elaichi Agent. You connect HashKey once and every client sees it.

### What can an AI agent actually do with my HashKey data?

With HashKey connected, an agent can read order book depth, recent trades, klines, tickers, mark and index prices and coin details, and it can report your futures positions, balances, leverage, funding rates and risk limits. It can also list whitelisted wallets and raise account or fiat withdrawals if you allow that. HashKey exposes a lot of tools, so short concrete asks such as "funding rate on BTC perpetuals" work better than long paragraphs.

### Does connecting HashKey give the AI access to my whole exchange account?

No. Access follows the HashKey API key of the person who connected, so the agent can only do what that key already permits in HashKey. Elaichi can narrow that further by hiding actions like withdrawals from a team, but it can never widen what HashKey itself allows.

### Can my team share one HashKey connection?

Yes. One person connects HashKey in Elaichi and shares the connection with a team, and nobody else ever handles the API key. Each teammate still signs in to Elaichi as themselves, so every HashKey call in the audit log carries their own name.

### Can I stop an agent from making withdrawals or changing things in HashKey?

Yes. Restrictions in Elaichi work per action, so you can allow market data and positions from HashKey while blocking account withdraws, fiat withdraws and wallet signing. A blocked action is never shown to Claude, ChatGPT or Cursor at all, so no prompt can reach it.

### What happens to a HashKey connection when someone leaves?

Offboarding that person in Elaichi ends their access to HashKey at once, across every client they used. A HashKey connection they shared keeps working for everyone else on the team. If you want HashKey gone entirely, disconnecting it once in Elaichi removes it from every client.

## All 103 HashKey tools

Every tool below is callable through https://api.elaichi.ai/mcp once HashKey is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all HashKey whitelist verifies** (List). Get a micro-payment depositing address for whitelist verification in HashKey. Returns: site, topic, params, data. Required: coin, chainType, quantity. For the same coin, chainType, and walletId, specifying the same quantity always produces the same deposit random amount (micropayment). The signAddress parameter is only needed for signature verification, not for micropayment verification.
- **Create a HashKey account withdraw** (Create). Submit a digital asset withdrawal request on Hashkey. Returns: success, id, orderId, site, topic, params, data. Required: coin, quantity, address, chainType, clientOrderId. The withdrawal address must be whitelisted in advance via the Hashkey website or app.
- **Create a HashKey fiat withdraw** (Create). Create a fiat withdrawal in HashKey. Returns the withdrawal order including orderId, asset, grossAmount, netAmount, fee, status, channel, and clientOrderId. A 2FA token is required when two-factor authentication is enabled for the account; each token is valid for 30 seconds and single-use.
- **Create a HashKey whitelist wallet signing** (Create). Verify a wallet address for whitelisting in HashKey via signature challenge. Returns: site, topic, params, data. Required: coin, chainType, fromAddress, signPhrase, signResult, walletId, timestamp.
- **HashKey market data get exchange info** (Get). Get current exchange trading rules and symbol information from HashKey. Returns: data, topic. Each item in data includes symbol, productType, buyMakerFeeCurrency, buyTakerFeeCurrency, sellMakerFeeCurrency, sellTakerFeeCurrency, actualMakerRate, and actualTakerRate.
- **HashKey market data get depth** (Get). Get the current order book depth for a trading pair on HashKey. Returns: topic, data. Required: symbol. Supports up to 200 depth levels.
- **HashKey market data get trades** (Get). Get the recent trade list for a currency pair in HashKey. Returns an array of trade objects with t (traded timestamp), p (traded price), q (volume), and ibm (buyer's maker order flag). Required: symbol.
- **HashKey market data get klines** (Get). Get Kline (candlestick) data for a trading pair on HashKey. Returns an array of kline entries with kline_open_time, open_price, high_price, low_price, close_price, volume, kline_close_time, quote_asset_volume, number_of_trades, taker_buy_base_asset_volume, and taker_buy_quote_asset_volume. Required: symbol, interval. Max 1000 bars per request.
- **HashKey market data get ticker 24 hr** (Get). Get 24-hour rolling price change statistics for all HashKey trading symbols. Returns an array of ticker records with s (symbol), c (latest price), h (high), l (low), o (open), b (bid), a (ask), v (base volume), qv (quote volume), t (timestamp), and it (instrument type).
- **HashKey market data get ticker price** (Get). Retrieve the latest price ticker for a trading symbol in HashKey. Returns: symbol, price.
- **HashKey market data get book ticker** (Get). Get the current top-of-book ticker for a trading symbol on HashKey. Returns the best bid and ask price and quantity levels from the order book for the requested symbol.
- **HashKey market data get merged depth** (Get). Get aggregated (merged) order book depth for a trading pair in HashKey. Returns the depth with symbol (s), bids (b), asks (a), timestamp (t), and version (v). Required: symbol.
- **HashKey market data get mark price** (Get). Get the current mark price for trading symbols on Hashkey. Returns: price, topic, data.
- **HashKey market data get index price** (Get). Get index prices from HashKey. Returns: index (object mapping each symbol to its current index price) and edp (object mapping each symbol to its 10-minute average index price). Returns results for all symbols if the optional symbol parameter is omitted.
- **HashKey market data get coin info** (Get). Get the supported list of coin information from HashKey, including withdrawal fees, min/max deposit and withdrawal quantities, precision, and per-chain deposit/withdrawal rules. Returns: status, topic, data.
- **HashKey futures get funding rate** (Get). Get the current funding rate for HashKey futures contracts. Returns: symbol, rate, nextSettleTime, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Results for all symbols are returned when the symbol parameter is omitted.
- **HashKey futures get history funding rate** (Get). Get the history of futures funding rates in HashKey. Returns an array of funding rate records, each with id, symbol, settleTime, and settleRate. The symbol parameter is optional; omitting it returns results for all symbols.
- **HashKey futures get leverage** (Get). Query the current futures leverage setting for a contract in HashKey. Returns: code, symbolId, leverage, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Optional: symbol (e.g. BTCUSDT-PERPETUAL) to target a specific contract.
- **HashKey futures get positions** (Get). List futures positions in HashKey, optionally filtered by contract symbol and position side. Returns: symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Results for all symbols and both sides are returned when no filters are supplied.
- **HashKey futures get balance** (Get). Query the HashKey futures account balance. Returns: balances, userId, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp.
- **HashKey futures get liquidation assign status** (Get). Get the liquidation assign status for futures in HashKey. Returns: status, minAccountBalance, maintAccountBalance, liqOrderLimitRatio, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp.
- **HashKey futures get risk limit** (Get). Query futures risk limit levels in HashKey. Returns a list of risk limit tiers with riskLimitAmount, maintainMargin, initialMargin, and side for each tier.
- **HashKey futures get commission rate** (Get). Query futures commission rates in HashKey. Returns: symbol, openMakerFee, openTakerFee, closeMakerFee, closeTakerFee, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp.
- **HashKey futures get best order** (Get). Get the best (top-of-book) buy and sell orders for a futures contract in HashKey. Returns: bid, ask, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. The symbol parameter is optional; results for all symbols are returned when omitted.
- **HashKey futures set leverage** (Set). Set the leverage for a HashKey futures contract. Returns: code, symbolId, leverage, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Required: symbol, leverage.
- **HashKey futures change margin type** (Action). Change the margin mode (cross or isolated) for a HashKey futures contract symbol. Returns: code, symbol, marginType, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Required: symbol, marginType.
- **HashKey futures modify position margin** (Action). Modify the isolated position margin for a HashKey futures contract position, increasing or decreasing the margin amount. Returns: code, symbol, margin, timestamp, side, quantity, price, priceType, timeInForce, clientOrderId. Required: symbol, side, amount. Use a positive amount to increase margin and a negative amount to decrease it.
- **HashKey futures set trading stop** (Set). Set the take-profit and stop-loss trading stop for a HashKey futures position. Returns: symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Required: symbol, side, and at least one of stopProfit or stopLoss.
- **HashKey misc test connectivity** (Test). Test connectivity to the HashKey API to verify the connection is valid. Returns an empty 200 response on success.
- **HashKey misc get server time** (Get). Get the current HashKey server time as a UNIX timestamp in milliseconds. Returns: serverTime. Useful for testing connectivity and synchronizing timestamps for signed requests.
- **HashKey misc create listen key** (Create). Create a listen key in HashKey to start a user data stream for websocket subscriptions. Returns: listenKey, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. The key is valid for 60 minutes; send a reset request before expiry to keep the stream alive.
- **HashKey misc reset listen key** (Action). Reset the validity period of a HashKey listen key to 60 minutes. Returns: listenKey. Required: listenKey.
- **HashKey misc delete listen key** (Delete). Delete a HashKey listen key. Returns an empty 204 response on success. Required: listenKey.
- **List all HashKey spot orders** (List). Query a single Hashkey spot order by origClientOrderId. Returns the full order record including orderId, symbol, price, executedQty, status, side, type, feeCoin, feeAmount, and sumFeeAmount. Required: origClientOrderId.
- **HashKey spot orders get open orders** (Get). Get all currently active (open) spot orders in Hashkey. Optionally filter by symbol, side, or start from a specific order ID. Returns: accountId, exchangeId, symbol, symbolName, clientOrderId, orderId, price, origQty, executedQty, cummulativeQuoteQty, cumulativeQuoteQty, avgPrice, status, timeInForce, type, side, stopPrice, icebergQty, time, updateTime, isWorking, reqAmount.
- **HashKey spot orders get all traded orders** (Get). Retrieve all historically traded spot orders from Hashkey. Optionally filter by symbol, side, or a time range using startTime and endTime. Returns: accountId, exchangeId, symbol, symbolName, clientOrderId, orderId, price, origQty, executedQty, cummulativeQuoteQty, cumulativeQuoteQty, avgPrice, status, timeInForce, type, side, stopPrice, icebergQty, time, updateTime, isWorking, reqAmount.
- **HashKey spot orders test order** (Test). Validate a new spot order request against the Hashkey test endpoint without sending it to the matching engine. Returns an empty 200 response if the parameters are valid. Required: symbol, side, type, quantity, price.
- **Create a HashKey spot order** (Create). Create a single spot order for Spot Trading on Hashkey Exchange. Required funds are ringfenced for the duration of the order. Returns the new order including orderId, clientOrderId, symbol, status, side, type, price, origQty, executedQty, transactTime, timeInForce, reqAmount, and concentration. Required: symbol, side, type, quantity.
- **HashKey spot orders create v 1 1** (Create). Create a new spot order in Hashkey (v1.1). Returns code, result (array of per-order entries each containing the created order object with orderId, symbol, status, price, side, and type), and concentration. Required: symbol, side, type, quantity.
- **HashKey spot orders create batch** (Create). Create multiple spot orders in a single batch request in Hashkey. Supports up to 20 orders at a time; currently only orders for the same symbol are supported. Returns code, result (per-order entries each containing the created order object with orderId, symbol, status, price, side, and type), and concentration. Each order in the batch requires symbol, side, type, and quantity.
- **HashKey spot orders cancel** (Cancel). Cancel an existing spot order in Hashkey. Returns an empty 204 response on success. Either orderId or clientOrderId must be sent.
- **HashKey spot orders cancel all open by symbol** (Cancel). Cancel all open spot orders for a given symbol in Hashkey (max 200 orders per request). Returns: code, message, timestamp, lastOrderId. Required: symbol.
- **HashKey spot orders cancel multiple by IDS** (Cancel). Cancel multiple open spot orders by order IDs in Hashkey (maximum 100 orders per batch). Returns: code, result. Required: ids.
- **HashKey spot orders cancel all open** (Cancel). Cancel all open spot orders in Hashkey (up to 200 orders per request). Returns: code, message, timestamp, lastOrderId. Optionally filter by symbol, side, or fromOrderId. Orders from the main trading account only are cancelled when using a main account API key.
- **List all HashKey futures orders** (List). List futures orders in HashKey. Returns each order with accountId, symbol, symbolName, orderId, clientOrderId, price, origQty, executedQty, status, side, type, timeInForce, transactTime, and reqAmount.
- **HashKey futures orders get open orders** (Get). List all open futures orders in HashKey. Returns each order's orderId, symbol, side, status, type, price, origQty, executedQty, timeInForce, clientOrderId, transactTime, and accountId.
- **HashKey futures orders get history orders** (Get). List futures historical orders in HashKey. Returns: code, result, concentration, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. History limited to the last 180 days.
- **Create a HashKey futures order** (Create). Create a new futures order in HashKey. Supports LIMIT and STOP order types with configurable price types and time-in-force settings. Returns: code, result, concentration, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Required: symbol, side, type, quantity, timestamp. Price is required for LIMIT orders with INPUT price type; stopPrice is required for STOP orders.
- **HashKey futures orders create batch** (Create). Create up to 20 HashKey futures orders in a single batch request for the same symbol. Returns: code, result (array of per-order results each with code and an order object including orderId, clientOrderId, symbol, status, price, origQty, executedQty), and concentration. Required: a JSON array of order objects each with symbol, side, type, and quantity.
- **HashKey futures orders cancel** (Cancel). Cancel an existing HashKey futures order by orderId or clientOrderId. Returns the cancelled order object including accountId, symbol, orderId, clientOrderId, status, price, origQty, executedQty, and side. Required: symbol and either orderId or clientOrderId.
- **HashKey futures orders cancel by IDS** (Cancel). Batch cancel HashKey Global futures orders by order IDs (maximum 100 per batch). Returns: code, result, concentration, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Required: orderIds.
- **HashKey futures orders cancel all open** (Cancel). Cancel all open futures orders in HashKey (max 200 orders per request). If using a main trading account API key, only orders from the main account are cancelled — sub-account orders are not affected. Returns: code, result, concentration, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp.
- **HashKey account get vip info** (Get). Get VIP information in HashKey, including VIP level and per-symbol trading fee rates. Returns: code, msg, vipLevel, tradeVol30Day, totalAssetBal, data, updateTimestamp, accountId, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert.
- **HashKey account get account info** (Get). Get account information in HashKey, including balances for all assets. Returns: balances, userId, accountId, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert.
- **HashKey account get trades** (Get). Get the account trade list in HashKey, querying account history and transaction records. Returns: id, clientOrderId, ticketId, symbol, symbolName, orderId, matchOrderId, price, qty, commission, commissionAsset, time, isBuyer, isMaker, fee, feeCoinId, feeAmount, feeSupplementaryAmount, makerRebate, accountId, hskDeduct, hskDeductPrice, transactTime, origQty, executedQty, status, timeInForce, side,…
- **HashKey account get account type** (Get). Query the account type in HashKey. Returns: accountType, accountId, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert.
- **HashKey account get API key type** (Get). Get the API key type in HashKey, indicating whether the current API key has read-only or read-write permissions. Returns: type, accountId, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert.
- **HashKey account get fund statement** (Get). Get fund statement (balance flow) records for a HashKey account. Returns: id, accountId, coin, coinId, coinName, flowTypeValue, flowType, flowName, change, total, created, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert. Required: startTime, endTime. Trade history supports 7 days per request; other…
- **HashKey account internal transfer** (Action). Transfer assets internally between HashKey accounts. Returns: success, timestamp, clientOrderId, orderId, accountId, symbol, symbolName, transactTime, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert. Required: fromAccountId, toAccountId, coin, quantity. Should be called no more than once per second.
- **HashKey account get fiat history** (Get). List fiat deposit and withdrawal history in HashKey. Returns: id, accountId, type, netFiatAmount, fiatCcy, fiatBalance, fee, feeCcy, orderId, remark, transactTime, symbol, symbolName, clientOrderId, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert. Supported for the past 30 days.
- **HashKey account get eod balance** (Get). Get the end-of-day balance for a HashKey account on a specified reporting date. Returns: balances, userId, accountId, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, status, timeInForce, side, reqAmount, concentration, alert. Required: reportDate. The reportDate must be in yyyy-mm-dd format and can only query up to 7 days in the past.
- **HashKey account get trades by client order ID** (Get). Get a HashKey account trade list by clientOrderId. Returns: accountId, exchangeId, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, cummulativeQuoteQty, cumulativeQuoteQty, avgPrice, status, timeInForce, type, side, stopPrice, icebergQty, time, updateTime, isWorking, reqAmount, concentration, alert, feeCoin, feeAmount, feeSupplementaryAmount, sumFeeAmount,…
- **HashKey account get opt order history** (Get). Get HashKey options (OPT) order history for the account. Returns: accountId, exchangeId, symbol, symbolName, clientOrderId, orderId, transactTime, price, origQty, executedQty, cummulativeQuoteQty, cumulativeQuoteQty, avgPrice, status, timeInForce, type, side, reqAmount, concentration, alert, stopPrice, icebergQty, time, updateTime, isWorking, feeCoin, feeAmount, feeSupplementaryAmount,…
- **HashKey wallet get chain type** (Get). Get the supported list of chain types for a specific coin in Hashkey (e.g. ETH, Optimism, Arbitrum for ETH). Returns a list of per-coin objects including coinId, coinName, and chainTypeList — useful for determining valid chain types when constructing deposit or withdrawal requests.
- **HashKey wallet get deposit address** (Get). Retrieve the system-generated deposit address for a specific asset and chain in Hashkey. Returns: event, topic, data, id, timestamp. Required: coin, chainType.
- **HashKey wallet get deposit history** (Get). Retrieve on-chain deposit order history for the Hashkey account. Returns per-deposit records including time, coin, coinName, address, quantity, status, statusCode, and txId. Optionally filter by coin, startTime, or endTime.
- **HashKey wallet get withdraw history** (Get). Retrieve withdrawal order history for the Hashkey account. Returns per-withdrawal records including id, time, coin, address, quantity, arriveQuantity, status, txId, fee, feeCoinId, and failedReason. Optionally filter by coin, startTime, endTime, memo, or remark.
- **HashKey wallet authenticate deposit address** (Action). Authenticate a deposit address in Hashkey to verify the sender's identity and address ownership. Returns: event, topic, data, id, timestamp.
- **HashKey wallet withdraw** (Action). Submit a digital asset withdrawal request in Hashkey. Returns the outcome of the request including success, id, and orderId. Required: coin, quantity, address, chainType, clientOrderId. The withdrawal address must be whitelisted in advance via the Hashkey website or app.
- **HashKey wallet get verify whitelist address** (Get). Get the micro-payment depositing address for whitelist verification in Hashkey. Returns the deposit details including coin, depositAddress, depositAmount, addressExt, and chainType. For the same coin, chainType, and walletId, providing the same quantity value will always return the same micropayment deposit amount.
- **HashKey wallet wallet signing verification** (Action). Submit a wallet signing verification request in HashKey. Returns the on-chain verification result including txId, walletId, refundOrderId, and chainType.
- **HashKey wallet get whitelisted address** (Get). Get the whitelisted wallet address registered on a Hashkey account, confirming whether an address has been approved for withdrawals. Returns: whitelistedAddress, sigVerification, code, msg, event, topic, data, id, timestamp.
- **HashKey wallet withdraw fiat** (Action). Submit a fiat currency withdrawal request in HashKey Exchange. Returns: success, id, orderId, site, topic, params, data.
- **HashKey wallet deposit refund** (Action). Initiate a deposit refund request in Hashkey for a specified deposit order, submitting optional third-party proof documents as multipart form data. Returns: quantity, site, topic, params, data. Required: depositOrderId, walletId.
- **HashKey wallet post deposit refund** (Action). Submit a deposit refund request for PD Omnibus clients in Hashkey. Used when a deposit passes HashKey's KYT checks but is subsequently rejected by the Omnibus provider's KYT process, requiring funds already credited to the user's account to be refunded. Returns: txId, walletId, refundOrderId, chainType, event, topic, data, id, timestamp. Required: depositOrderId, refundCode, timestamp.
- **HashKey wallet get refund orders** (Get). List deposit refund orders in Hashkey for the authenticated account. Returns a list of refund order records associated with prior deposit refund requests; the upstream source does not enumerate specific response fields for this endpoint.
- **HashKey sub account get spot open orders** (Get). Get currently active spot orders for a Hashkey sub-account. Returns: symbol, type, site, topic, params, data. Required: subAccountId.
- **HashKey sub account get spot trade orders** (Get). Get all traded (historical) spot orders for a Hashkey sub-account. Returns: symbol, type, site, topic, params, data. Required: subAccountId.
- **HashKey sub account get trades** (Get). Get executed spot trades for a Hashkey sub-account. Returns: id, symbol, site, topic, params, data. Required: subAccountId.
- **HashKey sub account get futures open orders** (Get). Get currently active futures open orders for a Hashkey sub-account, filtered by contract symbol and order type. Returns: symbol, type, site, topic, params, data. Required: subAccountId, symbol, type.
- **HashKey sub account get futures history orders** (Get). Get historical futures orders for a Hashkey sub-account filtered by contract symbol, order type, and optional time range. Returns: symbol, type, site, topic, params, data. Required: subAccountId, symbol, type.
- **HashKey sub account get futures trades** (Get). Get futures trade history for a specific Hashkey sub-account. Returns a list of trade records including tradeId, orderId, symbol, price, quantity, commissionAsset, commission, makerRebate, type, side, realizedPnl, and isMarker. Required: symbol, subAccountId.
- **HashKey hsk get deduction switch** (Get). Get the HSK fee deduction switch status for the master user in HashKey. The switch always applies to the master user regardless of whether the API key is bound to a master or sub account. Returns: deductionSwitch, updateTime.
- **HashKey hsk update deduction switch** (Update). Update the HSK fee deduction switch for the master user in HashKey. Returns: deductionSwitch, updateTime. Required: deductionSwitch. The switch always applies to the master user regardless of whether the API Key is bound to a master or sub account.
- **HashKey market place get quote pairs** (Get). List tradable quote pairs available in the HashKey market place. Returns: productId, productName, productDesc, minApy, maxApy, currency, minAmount, maxAmount, latestUnitValue, purchasePrecision, redeemPrecision, status, productType.
- **HashKey market place create rfq** (Create). Create a Request for Quote (RFQ) in HashKey's market place, specifying the currency pair, sell amount, and RFQ mode. Returns: rfqCreateTime, rfqId, quoteId, rfqClOrderId, rfqMode, quoteMode, buyCcy, sellCcy, buyAmount, sellAmount, price, status. Required: buyCcy, sellCcy, sellAmount, rfqMode, timestamp. The rfqMode accepts real-time or delayed; expireSec controls the RFQ validity period (10–60…
- **HashKey market place cancel rfq** (Cancel). Cancel an active RFQ (Request for Quote) in HashKey. Returns: rfqId, status. Required: rfqId.
- **HashKey market place accept quote** (Accept). Accept or decline a Market Place quote in HashKey. Returns: expiryTime, quoteId, rfqId, status, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Required: quoteId, rfqId, action, timestamp. The decline action only works for manual orders; after decline the RFQ becomes failed.
- **HashKey market place get rfq history** (Get). List HashKey market-place RFQ (Request for Quote) history records. Returns: productId, productName, productDesc, minApy, maxApy, currency, minAmount, maxAmount, latestUnitValue, purchasePrecision, redeemPrecision, status, productType.
- **HashKey market place get active quotes** (Get). List all active market place product quotes in HashKey. Returns: productId, productName, productDesc, minApy, maxApy, currency, minAmount, maxAmount, latestUnitValue, purchasePrecision, redeemPrecision, status, productType.
- **HashKey convert get quote pairs** (Convert). Get the supported currency quote pairs for FX conversion in HashKey. Returns: quotePair.
- **HashKey convert get quote** (Convert). Get an FX quote for currency conversion in HashKey. A quote must be obtained before placing a currency conversion order. Returns: quoteId, buyCurrency, sellCurrency, rate, quoteCreatedTime, quoteExpiryTime, sellAmount, channel. Required: buyCurrency, sellCurrency, sellAmount.
- **HashKey convert transact** (Convert). Place an FX currency conversion order in HashKey. A quote must be obtained first via the getQuote endpoint before requesting a conversion. Returns: clientOrderId, symbol, side, quantity, price, priceType, timeInForce, timestamp. Required: quoteId, buyCurrency, sellCurrency, sellAmount.
- **HashKey convert get transaction history** (Convert). List HashKey FX (currency conversion) transaction history. Returns: orderId, accountId, status, buyCurrency, sellCurrency, buyAmount, sellAmount, rate, transactTime, quoteId. Required: startTime, endTime.
- **HashKey earn get offers** (Get). List available earn product offers in HashKey, covering both standard (sto) and staking products. Returns: site, topic, params, data. Optionally filter by productType.
- **HashKey earn purchase** (Action). Subscribe to an earn product in HashKey by specifying the product, currency, and amount. Returns: site, topic, params, data. Required: productId, currency, amount, clOrderId.
- **HashKey earn cancel purchase** (Cancel). Cancel a pending earn product purchase order in HashKey before it is filled. Supply either orderId (system-generated) or clOrderId (client-defined); at least one is required. Returns an empty 204 response on success.
- **HashKey earn redeem** (Action). Redeem an earn product in Hashkey via a form-encoded POST request. The upstream documentation does not enumerate specific request or response fields for this endpoint; consult the Hashkey Earn API docs directly for the full field list.
- **HashKey earn cancel redeem** (Cancel). Cancel a pending earn product redemption in Hashkey. Returns an empty 204 response on success.
- **HashKey earn get orders** (Get). List earn orders for the authenticated account in Hashkey's Earn Channel, covering purchase and redemption activity. Returns a list of earn order records from the /api/v1/earn/orders endpoint.
- **HashKey earn get balance** (Get). Get the current position overview of the user's earn channel holdings in HashKey. Returns: timestamp, balanceData, site, topic, params, data. Supports optional filtering by productId and productType (sto or staking).
- **HashKey webhook subscribe** (Action). Subscribe to HashKey deposit and withdrawal webhook notifications. Returns: msg, code, subscriptionSuccess, subscriptionId, createdTime, symbol, side, quantity, price, priceType, timeInForce, clientOrderId, timestamp. Required: webhookBaseUrl, eventType, timestamp.
- **HashKey webhook unsubscribe** (Action). Unsubscribe from HashKey deposit and withdrawal webhook notifications. Returns: msg, code, success. Required: subscriptionId, timestamp.
