Saltar al contenido principal

Formato de errores

Todos los errores devuelven una respuesta JSON con un campo detail:
{
  "detail": "Insufficient balance"
}
Algunos errores incluyen un code estructurado para manejo programatico:
{
  "detail": {
    "error": {
      "code": "INSUFFICIENT_BALANCE",
      "message": "Not enough TRX balance"
    }
  }
}

Codigos de estado HTTP

CodigoSignificado
200Exito
400Solicitud incorrecta — parametros invalidos
401No autorizado — clave API faltante o invalida
403Prohibido — clave deshabilitada o accion no permitida
404No encontrado
409Conflicto — solicitud duplicada o conflicto de recursos
422Error de validacion — verifica el cuerpo de la solicitud
429Limite de tasa excedido
500Error del servidor

Codigos de error comunes

CodigoDescripcion
INSUFFICIENT_BALANCESaldo de la cuenta insuficiente para esta operacion
ADDRESS_ALREADY_ACTIVESmart Mode ya esta activo para esta direccion
ORDER_NOT_FOUNDEl ID de orden no existe
INVALID_ADDRESSDireccion TRON no valida
RATE_LIMITEDDemasiadas solicitudes, reintenta despues del tiempo de espera
PASSKEY_REQUIREDEl retiro requiere verificacion con passkey
2FA_REQUIREDEl retiro requiere codigo 2FA

Estrategia de reintentos

Para errores 429 y 5xx, implementa retroceso exponencial:
import time
import requests

def api_call_with_retry(url, **kwargs):
    for attempt in range(3):
        resp = requests.get(url, **kwargs)
        if resp.status_code == 429 or resp.status_code >= 500:
            time.sleep(2 ** attempt)
            continue
        return resp
    raise Exception("Max retries exceeded")