TRON Referencia de la API HTTP: puntos finales esenciales para desarrolladores — TRON Wiki

TRON Referencia de la API HTTP: puntos finales esenciales para desarrolladores

11 min de lectura · ⌘K buscar

Los nodos completos TRON exponen una API JSON sobre HTTP similar en espíritu al JSON-RPC de Ethereum pero orientada a métodos: wallet/getaccount, wallet/createtransaction, wallet/triggersmartcontract y docenas más. TronGrid aloja puntos finales con carga equilibrada, por lo que la mayoría de los desarrolladores nunca ejecutan su propio nodo.

Esta referencia enumera los puntos finales que utilizará diariamente para saldos, transacciones, llamadas de contratos e indexación de eventos.

URL base

RedTronGrid URL base
Red principalhttps://api.trongrid.io
Red de prueba de Shastahttps://api.shasta.trongrid.io
Red de prueba del Nilohttps://nile.trongrid.io

Todas las rutas agregan /wallet/... o usan contenedores REST /v1/....

Registre la clave API: trongrid.io - encabezado TRON-PRO-API-KEY.

Análisis profundo: TronGrid Guía API.

Formato de solicitud

La mayoría de los puntos finales wallet/*:

Código
POST /wallet/getaccount
Content-Type: application/json

{"address": "TLa2f6VPqDgRE67v1736s7bJ8Ray5wYjU7", "visible": true}

visible: true → Direcciones Base58. false → hexadecimal con prefijo 41.

Puntos finales de la cuenta

Punto finalPropósito
wallet/getaccountTRX saldo, congelados, votos, permisos
wallet/getaccountresourceEnergía, ancho de banda disponible
wallet/validateaddressValidación de suma de comprobación
wallet/createaccountActivar nueva cuenta (costos TRX)

ejemplo de obtención de cuenta

Código
curl -X POST https://api.trongrid.io/wallet/getaccount \
  -H "TRON-PRO-API-KEY: $KEY" \
  -d '{"address":"TYourAddress","visible":true}'

Los saldos TRC-20 utilizan llamadas de contrato o API v1: consulta saldo TRC-20.

Puntos finales de transacción

Punto finalPropósito
wallet/createtransactionTransferencia de compilación TRX
wallet/broadcasttransactionEnviar tx firmado
wallet/gettransactionbyidTransacción sin procesar por txid
wallet/gettransactioninfobyidRecibo, tarifa, registros, resultado
wallet/gettransactioncountbyblocknumBloquear recuento de tx

Verificar flujo: verificar API de transacción.

Código
const info = await fetch('https://api.trongrid.io/wallet/gettransactioninfobyid', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json', 'TRON-PRO-API-KEY': key },
  body: JSON.stringify({ value: txid })
}).then(r => r.json());

// info.receipt.result === 'SUCCESS'

Puntos finales de contrato inteligentes

Punto finalPropósito
wallet/triggersmartcontractLlamada de cambio de estado
wallet/triggerconstantcontractLlamada de sólo lectura
wallet/deploycontractImplementar código de bytes
wallet/getcontractMetadatos del contrato

Guía: activar contrato inteligente.

API REST v1

DESCANSO de nivel superior en /v1/:

CaminoPropósito
GET /v1/accounts/{address}Resumen de cuenta
GET /v1/accounts/{address}/transactionsTRX txs
GET /v1/accounts/{address}/transactions/trc20Transferencias TRC-20
GET /v1/contracts/{address}/eventsEventos de contrato

Ejemplo de historial TRC-20:

Código
GET /v1/accounts/TAddr.../transactions/trc20?only_confirmed=true&contract_address=TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t&limit=20

Puntos finales de eventos

Código
GET /v1/contracts/{contract}/events?event_name=Transfer&only_confirmed=true

Filtre el lado del cliente para la dirección to o utilice filtros de marca de tiempo de bloque.

Oyentes de eventos patrones.

Bloquear puntos finales

Punto finalPropósito
wallet/getnowblockÚltimo bloque
wallet/getblockbynumBloquear por número
wallet/getblockbyidBloquear por hash

Útil para el recuento de confirmación en sistemas de pago: aceptar pagos USDT.

Flujo de trabajo de firma

Flujo típico del servidor:

  1. createtransaction o triggersmartcontract → tx sin firmar
  2. Firmar con clave privada (TronWeb trx.sign)
  3. broadcasttransaction → txid

TronWeb envuelve los tres: TronWeb introducción.

Límites de tarifas y errores

Código HTTPSignificado
429Tarifa limitada: retroceso, clave de actualización
503Sobrecarga de nodo: reintentar
400Solicitud con formato incorrecto: marque visible y formato de dirección

Producción: lecturas de caché, alternativas de websocket limitadas: encuesta con disciplina.

TronWeb frente a HTTP sin formato

Utilice TronWebUtilice HTTP sin formato
Node.js/navegador dAppServicios Python, Go y Rust
Codificación ABIMicroservicios personalizados
Creación rápida de prototiposEstricto control de dependencia

Seguridad

  • Nunca PUBLICAR claves privadas en TronGrid
  • Firmar localmente o HSM
  • La clave API no es secreta como la clave privada, pero no se comprometa con Git
  • Validar todas las direcciones del lado del servidor — verificar dirección válida

Diferencias de Testnet

Mismas rutas de punto final, diferente URL base. USDT la dirección del contrato difiere en testnet: use tokens faucet.

Mainnet vs testnet.

Lista de verificación para solucionar problemas

Si algo sale mal en TRON, trátelo como un problema de depuración estructurado: confirme el txid exacto en la cadena, verifique la dirección del contrato de destino y solo entonces decida si la falla es recuperable. En TRON, muchos problemas "misteriosos" son simplemente uno de: red incorrecta (mainnet vs testnet), contrato de token incorrecto (falso USDT/tokens con nombres similares), recursos insuficientes (OUT_OF_ENERGY/ancho de banda) o retraso en la interfaz de usuario/indexador entre la billetera y el explorador.

Comience con estas comprobaciones en cadena:- Copie siempre el txid/hash completo de su billetera o explorador.

  • Confirme el estado del resultado del tx en TronScan (SUCCESS, REVERT, OUT_OF_ENERGY o aún pendiente).
  • Compruebe si la dirección del destinatario/contrato coincide con la que desea enviar.
  • Si se trata de una llamada de contrato, confirme que el selector de función y los parámetros coincidan con el estándar de token que cree que está utilizando (TRC-20 vs TRC-10 vs BEP-20 en BSC).

Luego aplique la ruta de corrección para su categoría:

  • Confirmar el estado y los parámetros de la transacción.
  • Verificar direcciones (contrato de token, destinatario, enrutador/gastador).
  • Agregar o delegar recursos (Energía/Ancho de banda) cuando el fallo esté basado en recursos.

Errores comunes

Estos patrones causan la mayoría de los errores a nivel de usuario:

  • Usar direcciones de mainnet en testnet (o al revés).
  • Copiar un símbolo de token en lugar de la dirección del contrato TRC-20 real.
  • Firmar la dirección de aprobación/gastador incorrecta porque el enlace de la interfaz de usuario es malicioso o está desactualizado.
  • Reintentar sin cambiar la entrada fallida (por ejemplo, REVERT sigue revirtiéndose hasta que corrija el parámetro).

Si no está seguro, no “simplemente envíe de nuevo”. Realice un cambio controlado, verifique en TronScan y luego continúe.

Preguntas frecuentes

¿Cómo sé si una transacción está realmente confirmada?

Utilice TronScan y verifique el estado del resultado del tx. Las etiquetas "pendientes" de la billetera pueden retrasarse; El estado de la cadena es la fuente de la verdad. Copie txid y verifique SUCCESS/REVERT/OUT_OF_ENERGY, no solo el texto de la interfaz de usuario.

¿Por qué la interfaz de usuario difiere de TronScan?

Algunas billeteras y dApps utilizan diferentes indexadores o capas de caché. Es normal que haya un breve retraso entre la transmisión y la indexación; compare txid y espere a que la cadena se estabilice antes de concluir que hay una falla.

¿Qué debo hacer después de un REVERT?

Detenga y decodifique la llamada fallida. La mayoría de los REVERT se deben a parámetros no válidos, dirección de contrato incorrecta, aprobaciones faltantes o una falta de coincidencia entre el estándar del token y el método. Solucione la causa y luego vuelva a firmar.

¿Es seguro firmar una aprobación ilimitada?

Las aprobaciones ilimitadas son seguras solo para direcciones de gastadores confiables que usted haya verificado (fuente verificada, enrutador correcto y contrato de token esperado). Para las pruebas, prefiera aprobaciones limitadas y revoque una vez que haya terminado.

¿Qué recursos requiere TRON para las llamadas de contrato?

La ejecución de contratos inteligentes consume principalmente energía, mientras que los bytes de transacciones consumen ancho de banda. Si recibe OUT_OF_ENERGY, agregue/congela/delegue energía. Si se agota el ancho de banda, concéntrese en mantener suficiente líquido TRX para bytes y asignación de recursos.

¿Cómo puedo reducir los tickets de soporte?

Muestre a los usuarios un mensaje claro de "qué sucedió" basado en el estado de la cadena y vincule directamente a la guía relevante (pendiente, fallida, sin energía o verificación). Guarda txid para que puedas conciliar rápidamente.

Guías relacionadas

Preguntas frecuentes

¿Cuál es la URL base para la API de la red principal TRON?

https://api.trongrid.io para TronGrid. Los nodos autohospedados utilizan las mismas rutas en su host.

¿Necesito una clave API para TronGrid?

Recomendado para producción: límites de velocidad más altos a través del encabezado TRON-PRO-API-KEY.

¿Es TRON API REST o JSON-RPC?

Híbrido: billetera heredada/* POST JSON más recursos REST v1. No es idéntico a Ethereum JSON-RPC.

¿Cómo obtengo saldo de USDT a través de API?

triggerconstantcontract balanceOf(address) o puntos finales de lista de tokens de cuenta v1 trc20.

¿Dónde está la documentación oficial de la API?

TronGrid documentos en desarrolladores.tron.network y trongrid.io: este artículo resume los puntos finales comunes.