Ir al contenido

API y Acceso a Nodos

Conéctate a la red de TRON utilizando las APIs HTTP nativas, JSON-RPC compatible con Ethereum o endpoints gRPC de alto rendimiento. Esta guía detalla las opciones de proveedores gestionados como TronGrid y Alchemy, junto con las interfaces específicas necesarias para la interacción con contratos, indexación e integración con exchanges.

TronGrid es el servicio oficial de nodos administrados de TRON, gestionado por el equipo de TronGrid. Es el camino más rápido hacia una conexión funcional y el equivalente de Infura o Alchemy para Ethereum.

RedURL base HTTP / JSON-RPCgRPC
Red principalhttps://api.trongrid.iogrpc.trongrid.io:50051
Red de prueba Nilehttps://nile.trongrid.iogrpc.nile.trongrid.io:50051
Red de prueba Shastahttps://api.shasta.trongrid.iogrpc.shasta.trongrid.io:50051

TronGrid sirve la API FullNode, la API SolidityNode y el servidor de eventos desde una única URL base.

TronGrid aplica límites de tasa en las solicitudes no autenticadas. Para uso en producción, regístrate para obtener una clave de API gratuita en trongrid.io y pásala en los encabezados de tu solicitud:

init_pro.js
// Tarea: Configurar el SDK con una clave de API Pro de TronGrid para límites de tasa más altos.
const tronWeb = new TronWeb({
fullHost: 'https://api.trongrid.io',
headers: { 'TRON-PRO-API-KEY': process.env.TRONGRID_API_KEY },
privateKey: process.env.PRIVATE_KEY,
});
Terminal
// Tarea: Realizar una solicitud HTTP autenticada a la API FullNode.
curl -H "TRON-PRO-API-KEY: your_key_here" \
https://api.trongrid.io/wallet/getnowblock

El nivel gratuito es suficiente para desarrollo y uso en producción de bajo volumen.


Varios proveedores de infraestructura importantes ofrecen acceso a nodos de TRON como servicio administrado, a menudo con límites de tasa más generosos o distribución geográfica que TronGrid.

ProveedorURL
Ankrankr.com/rpc/tron
Alchemyalchemy.com/docs/reference/tron-api-quickstart
QuickNodequicknode.com/chains/tron
GetBlockgetblock.io/nodes/trx
Chainstackchainstack.com/build-better-with-tron
Tatumtatum.io/chains/tron
TronQLtronql.com
NOWNodesnownodes.io/nodes/tron-trx

Todos los proveedores exponen la misma superficie de API HTTP de TRON — cambia la URL de fullHost en tronweb y tu código no necesita ningún otro cambio.


La API HTTP de TRON sigue una estructura similar a REST. Cada endpoint es una solicitud POST con un cuerpo JSON.

Common Endpoints
# Tarea: Interactuar con los endpoints de cuentas y transacciones mediante curl.
# Obtener el último bloque
curl -X POST https://api.trongrid.io/wallet/getnowblock
# Obtener información de cuenta
curl -X POST https://api.trongrid.io/wallet/getaccount \
-d '{ "address": "TN3W4H6rK2ce4vX9YnFQHwKENnHjoxb2Jq", "visible": true }'
# Obtener recursos de cuenta (Energía, Ancho de banda)
curl -X POST https://api.trongrid.io/wallet/getaccountresource \
-d '{ "address": "TN3W4H6rK2ce4vX9YnFQHwKENnHjoxb2Jq", "visible": true }'
# Transmitir una transacción firmada
curl -X POST https://api.trongrid.io/wallet/broadcasttransaction \
-d '{ "transaction": {...} }'
# Obtener transacción por hash
curl -X POST https://api.trongrid.io/wallet/gettransactionbyid \
-d '{ "value": "transaction_hash_hex" }'
# Obtener recibo de transacción
curl -X POST https://api.trongrid.io/wallet/gettransactioninfobyid \
-d '{ "value": "transaction_hash_hex" }'

TronGrid añade endpoints amigables para desarrolladores más allá de la API FullNode base:

TronGrid v1 API
# Tarea: Consultar historial indexado mediante la API v1 de TronGrid.
# Obtener transferencias de tokens TRC-20 de una dirección
curl https://api.trongrid.io/v1/accounts/{address}/transactions/trc20
# Obtener eventos del contrato
curl https://api.trongrid.io/v1/contracts/{contractAddress}/events
# Obtener transacciones de la cuenta
curl https://api.trongrid.io/v1/accounts/{address}/transactions

Estos admiten paginación mediante los parámetros de consulta limit, min_timestamp y max_timestamp.


TRON expone un endpoint JSON-RPC compatible con el espacio de nombres eth_* de Ethereum. Esto permite que las herramientas EVM — MetaMask, ethers.js, Hardhat — interactúen directamente con TRON sin reescribir para la API nativa.

Ventana de terminal
# Endpoint JSON-RPC
POST https://api.trongrid.io/jsonrpc
ethers_rpc.js
// Tarea: Usar bibliotecas EVM estándar (Ethers.js) para consultar TRON mediante JSON-RPC.
import { JsonRpcProvider } from "ethers"
const provider = new JsonRpcProvider('https://api.trongrid.io/jsonrpc');
const blockNumber = await provider.getBlockNumber();

Para aplicaciones de alto rendimiento — indexadores, backends de exchanges, pipelines de datos en tiempo real — la interfaz gRPC de TRON es significativamente más eficiente que HTTP.

Ventana de terminal
# gRPC de la red principal
grpc.trongrid.io:50051 # FullNode
grpc.trongrid.io:50052 # SolidityNode (solo estado finalizado)
# gRPC de la red de prueba Nile
grpc.nile.trongrid.io:50051
grpc.nile.trongrid.io:50061

Las definiciones de protocol buffers están publicadas en github.com/tronprotocol/protocol. El SDK Trident-java envuelve la interfaz gRPC para aplicaciones Java.


Caso de usoInterfaz recomendada
Frontend de DApp, scripts, uso generaltronweb sobre HTTP
Migración desde herramientas EVM de EthereumJSON-RPC
Aplicaciones backend en JavaTrident-java sobre gRPC
Aplicaciones backend en Gogotron-sdk
Indexación de alto volumengRPC directamente
Monitoreo de eventos de contratosAPI extendida de TronGrid (/v1/contracts/...)