Saldo
Requiere autenticaciónObtenga el saldo actual de la cuenta y opcionalmente suscríbase a actualizaciones de saldo en tiempo real.
Cambio crítico
New solo devuelve el saldo actual de la cuenta — soporte de múltiples cuentas y parámetro
loginid eliminados.Comparación Rápida
Cambios Importantes
1. Parámetro de cuenta eliminado
El parámetro account (para obtener "todas" las cuentas, "actual" o ID de cuenta específica) ha sido eliminado.
2. Respuesta de múltiples cuentas eliminada
El objeto accounts en la respuesta que contenía información detallada sobre todas las cuentas activas ha sido eliminado.
3. Saldos totales eliminados
El objeto total que proporcionaba totales de resumen por tipo de cuenta (deriv, deriv_demo, mt5, mt5_demo) ha sido eliminado.
4. Parámetro de ID de inicio de sesión eliminado
El parámetro loginid ha sido eliminado. Este parámetro era obligatorio cuando se proporcionaban múltiples tokens durante la autorización.
Cambio requerido: Use conexiones WebSocket separadas o llamadas de autorización separadas para cada cuenta que necesite consultar.
Estructura de Solicitud
Legacy APIejemplo de solicitud
{
"balance": 1,
"account": "all", // ❌ Removed in New
"loginid": "CR123456", // ❌ Removed in New
"subscribe": 1
}New APIejemplo de solicitud
{
"balance": 1,
"subscribe": 1
}Estructura de Respuesta
Legacy APIejemplo de respuesta
{
"balance": {
"balance": 10000.50,
"currency": "USD",
"loginid": "CR123456",
"accounts": { // ❌ Not in New
"CR123456": {
"balance": 10000.50,
"converted_amount": 10000.50,
"currency": "USD",
"demo_account": 0,
"status": 1,
"type": "deriv"
}
}
}
}New APIejemplo de respuesta
{
"balance": {
"balance": 10000.50,
"currency": "USD",
"loginid": "CR123456"
},
"msg_type": "balance"
}Ejemplos de código
Legacy APIimplementación
async function getCurrentBalance() {
const request = {
balance: 1,
subscribe: 1
};
ws.send(JSON.stringify(request));
ws.onmessage = (event) => {
const response = JSON.parse(event.data);
if (response.msg_type === 'balance') {
console.log('Balance:', response.balance.balance);
console.log('Currency:', response.balance.currency);
console.log('Login ID:', response.balance.loginid);
// Access multi-account data
if (response.balance.accounts) {
Object.keys(response.balance.accounts).forEach(id => {
const acc = response.balance.accounts[id];
console.log(`Account ${id}: ${acc.balance}`);
});
}
}
};
}New APIimplementación
async function getCurrentBalance() {
const request = {
balance: 1,
subscribe: 1
};
ws.send(JSON.stringify(request));
ws.onmessage = (event) => {
const response = JSON.parse(event.data);
if (response.msg_type === 'balance') {
console.log('Balance:', response.balance.balance);
console.log('Currency:', response.balance.currency);
console.log('Login ID:', response.balance.loginid);
// Multi-account data no longer available
// Make separate calls for each account
}
};
}¿Alguna otra pregunta? Póngase en contacto