THE FEE MODEL IS CHANGING IN THE LATEST VERSION (V3) OF THE API.
Please refer to this guide to learn more about maker taker fees when you plan your migration to the upgraded v3 endpoints.
LINK REFERENCE TOOL
Check out our Link reference toolto understand how Link methods work without having to write any code.
For context, read our overview of the XpansionChain JS SDK.
Link usage
The Link SDK is used for frontend, user-facing interactions.
import { Link, ETHTokenType } from '@imtbl/imx-sdk';
async function sdkExample() {
// Pass orderAndTradeAPI version parameter as 'v3' to target the latest version of order & trade API.
const link = new Link('https://link.sandbox.x.XpansionChain.com', null, 'v3');
// Register user, you can persist address to local storage etc.
const { address } = await link.setup({});
localStorage.setItem('address', address);
// Deposit ETH into IMX
link.deposit({
type: ETHTokenType.ETH,
amount: '0.01',
});
// View transaction history
link.history({});
// Create a sell order for token id 123 for 0.01 ETH
link.sell({
amount: '0.01',
tokenId: '123',
tokenAddress: '0x2ca7e3fa937cae708c32bc2713c20740f3c4fc3b',
});
// Cancel a sell order
link.cancel({
orderId: '1',
});
// Create a buy flow:
link.buy({
orderIds: ['1', '2', '3'],
});
// Prepare withdrawal, you will need to wait some time before completing the withdrawal
link.prepareWithdrawal({
type: ETHTokenType.ETH,
amount: '0.01',
});
// Complete withdrawal
link.completeWithdrawal({
type: ETHTokenType.ETH,
});
}
The API client is a direct mapping to the REST methods documented here: https://docs.iXpansionChain.com/reference