Account & Subaccount
Documentation on interacting with a variety of OKX account and subaccount API endpoint functions through the PENDAX Javascript SDK.
All Account and Subaccount API endpoints require authentication. Please create OKX API keys to interact with these functions successfully.
Account
Get Balance
Function Name:
getBalances()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getBalances(exchange, options) {
try {
let result = await exchange.getBalances(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getBalances(myOkxAccount)
Get Positions
Function Name:
getPositions()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getPositions(exchange, options) {
try {
let result = await exchange.getPositions(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getPositions(myOkxAccount)
Get Positions History
Function Name:
getPositionsHistory()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getPositionsHistory(exchange, options) {
try {
let result = await exchange.getPositionsHistory(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getPositionsHistory(myOkxAccount)
Get Account and Position Risk
Function Name:
getAccountPosAndRisk()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getAccountPosAndRisk(exchange, options) {
try {
let result = await exchange.getAccountPosAndRisk(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getAccountPosAndRisk(myOkxAccount)
Get Bills Details (last 7 days)
Function Name:
getBills()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getBills(exchange, options) {
try {
let result = await exchange.getBills(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getBills(myOkxAccount)
Get Bills Details (last 3 months)
Function Name:
getBillsArchive()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getBillsArchive(exchange, options) {
try {
let result = await exchange.getBillsArchive(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getBillsArchive(myOkxAccount)
Get Account Configuration
Function Name:
getAccountConfig()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getAccountConfig(exchange, options) {
try {
let result = await exchange.getAccountConfig(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getAccountConfig(myOkxAccount)
Set Position Mode
Function Name:
setPosMode()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function setPosMode(exchange, options) {
try {
let result = await exchange.setPosMode(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await setPosMode(myOkxAccount,
{
posMode:"long_short_mode"
}
)
Set Leverage
Function Name:
setLeverage()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function setLeverage(exchange, options) {
try {
let result = await exchange.setLeverage(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await setLeverage(myOkxAccount,
{
instId:"BTC-USDT",
lever:"5",
mgnMode:"isolated"
}
)
Get Maximum Buy/Sell Amount or Open Amount
Function Name:
getMaxSize()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getMaxSize(exchange, options) {
try {
let result = await exchange.getMaxSize(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getMaxSize(myOkxAccount,
{
instId:"BTC-USDT",
tdMode:"isolated"
}
)
Get Maximum Available Tradable Amount
Function Name:
getMaxAvailSize()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getMaxAvailSize(exchange, options) {
try {
let result = await exchange.getMaxAvailSize(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getMaxAvailSize(myOkxAccount,
{
instId:"BTC-USDT",
tdMode:"isolated"
}
)
Increase/Decrease Margin
Function Name:
adjustMargin()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function adjustMargin(exchange, options) {
try {
let result = await exchange.adjustMargin(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await adjustMargin(myOkxAccount,
{
instId:"BTC-USDT-200626",
posSide:"short",
type:"add",
amt:"1"
}
)
Get Leverage
Function Name:
getLeverage()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getLeverage(exchange, options) {
try {
let result = await exchange.getLeverage(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getLeverage(myOkxAccount,
{
instId:"BTC-USDT-200626",
mgnMode: "cross"
}
)
Get The Maximum Loan Of Instrument
Function Name:
getMaxLoan()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getMaxLoan(exchange, options) {
try {
let result = await exchange.getMaxLoan(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getMaxLoan(myOkxAccount,
{
instId:["BTC-USDT-200626"],
mgnMode: "cross"
}
)
Get Fee Rates
Function Name:
getFeeRates()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getFeeRates(exchange, options) {
try {
let result = await exchange.getFeeRates(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getFeeRates(myOkxAccount,
{
instType: "SPOT",
instID: "BTC-USDT"
}
)
Get Interest Accrued Data
Function Name:
getFeeRates()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getInterestAccrued(exchange, options) {
try {
let result = await exchange.getInterestAccrued(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getInterestAccrued(myOkxAccount)
Get Interest Rate
Function Name:
getInterestRate()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getInterestRate(exchange, options) {
try {
let result = await exchange.getInterestRate(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getInterestRate(myOkxAccount)
Set Greeks
Function Name:
setGreeks()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function setGreeks(exchange, options) {
try {
let result = await exchange.setGreeks(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await setGreeks(myOkxAccount, {
greeksType:"PA"
})
Isolated Margin Trading Settings
Function Name:
setIsolatedMode()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function setIsolatedMode(exchange, options) {
try {
let result = await exchange.setIsolatedMode(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await setIsolatedMode(myOkxAccount, {
isoMode:"automatic",
type:"MARGIN"
})
Get Maximum Withdrawals
Function Name:
getMaxWithdrawal()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getMaxWithdrawal(exchange, options) {
try {
let result = await exchange.getMaxWithdrawal(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getMaxWithdrawal(myOkxAccount)
Get Account Risk State
Function Name:
getRiskState()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getRiskState(exchange, options) {
try {
let result = await exchange.getRiskState(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getRiskState(myOkxAccount)
VIP Loans Borrow and Repay
Function Name:
vipLoanBorrowRepay()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function vipLoanBorrowRepay(exchange, options) {
try {
let result = await exchange.vipLoanBorrowRepay(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await vipLoanBorrowRepay(myOkxAccount, {
ccy:"USDT",
side:"borrow",
amt:"100"
})
Get Borrow and Repay History for VIP Loans
Function Name:
getVipLoanHistory()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getVipLoanHistory(exchange, options) {
try {
let result = await exchange.getVipLoanHistory(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getVipLoanHistory(myOkxAccount)
Get Borrow Interest and Limit
Function Name:
getBorrowInterestAndLimit()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getBorrowInterestAndLimit(exchange, options) {
try {
let result = await exchange.getBorrowInterestAndLimit(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getBorrowInterestAndLimit(myOkxAccount)
Position Builder
Function Name:
positionBuilder()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function positionBuilder(exchange, options) {
try {
let result = await exchange.positionBuilder(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await positionBuilder(myOkxAccount,
{
instType:"SWAP",
inclRealPos:"true",
simPos:[
{
pos:"10",
instId:"BTC-USDT-SWAP"
},
{
pos:"10",
instId:"LTC-USDT-SWAP"
}
]
})
Get Greeks
Function Name:
getGreeks()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getGreeks(exchange, options) {
try {
let result = await exchange.getGreeks(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getGreeks(myOkxAccount)
Subaccount
View Subaccount List
Function Name:
getSubaccountList()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getSubaccountList(exchange, options) {
try {
let result = await exchange.getSubaccountList(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getSubaccountList(myOkxAccount)
Get Subaccount Trading Balance
Function Name:
getSubaccountTradingBalance()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getSubaccountTradingBalance(exchange, options) {
try {
let result = await exchange.getSubaccountTradingBalance(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getSubaccountTradingBalance(myOkxAccount, {
subAcct: "mySubaccount"
})
Get Subaccount Funding Balance
Function Name:
getSubaccountFundingBalance()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getSubaccountFundingBalance(exchange, options) {
try {
let result = await exchange.getSubaccountFundingBalance(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getSubaccountFundingBalance(myOkxAccount, {
subAcct: "mySubaccount"
})
History of Subaccount Transfer
Function Name:
getSubaccountBills()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getSubaccountBills(exchange, options) {
try {
let result = await exchange.getSubaccountBills(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getSubaccountBills(myOkxAccount)
Master Accounts Manage the Transfers Between Subaccounts
Function Name:
subaccountTransfer()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function subaccountTransfer(exchange, options) {
try {
let result = await exchange.subaccountTransfer(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await subaccountTransfer(myOkxAccount,
{
ccy:"USDT",
amt:"1.5",
from:"6",
to:"6",
fromSubAccount:"test-1",
toSubAccount:"test-2"
})
Set Permission of Transfer Out
Function Name:
canTransferOut()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function canTransferOut(exchange, options) {
try {
let result = await exchange.canTransferOut(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await canTransferOut(myOkxAccount,
{
subAcct:"test-1",
canTransOut:true
})
Get Custody Trading Subaccount List
Function Name:
getCustodyTradingAccountList()
Usage:
import { createExchange } from "./exchanges/exchange.js";
let myOkxAccount = createExchange({
exchange: "okx",
authenticate: true,
key: "myKeys",
secret: "mySecret",
passphrase: "myPassphrase",
label: "okx",
marginType: "usdt"
});
async function getCustodyTradingAccountList(exchange, options) {
try {
let result = await exchange.getCustodyTradingAccountList(options);
console.log(result);
} catch (error) {
console.log(error.message);
}
}
const result = await getCustodyTradingAccountList(myOkxAccount)
Last updated