Resumen
Moonbeam es una parachain compatible con Ethereum en Polkadot. Para interactuar con ella, necesitas un endpoint JSON-RPC. Esta página cubre endpoints públicos, métodos JSON-RPC compatibles y cómo elegir un proveedor RPC de nivel de producción para Moonbeam, Moonriver y Moonbase Alpha.
Lista de verificación para la API de Moonbeam
Antes de empezar a construir en Moonbeam, evalúa estos factores para elegir el enfoque de API adecuado:
| Criterio | Qué verificar | Por qué es importante |
|---|---|---|
| Tipo de red | Moonbeam (Polkadot), Moonriver (Kusama) o Moonbase Alpha (testnet) | Cada una tiene un endpoint separado y token GLMR/MOVR/DEV |
| Confiabilidad del endpoint | Historial de tiempo de actividad, límites de velocidad y opciones de nodo dedicado | Los endpoints públicos pueden limitar; las aplicaciones de producción necesitan disponibilidad constante |
| Datos de archivo | ¿El proveedor soporta solicitudes de nodo archivo? | Necesario para consultas de estado histórico (ej., eth_call en bloques pasados) |
| Soporte WebSocket | URL WSS disponible | Necesario para suscripciones en tiempo real (ej., transacciones pendientes) |
| Cobertura de métodos JSON-RPC | Compatibilidad total con API de Ethereum más métodos específicos de Moonbeam | La mayoría de dApps requieren eth_, net_, web3_*, más debug/trace |
| Modelo de precios | Pago por uso vs. suscripción plana vs. nodo dedicado | Elige según tu volumen de solicitudes y presupuesto |
Resumen de la red Moonbeam
Moonbeam es una parachain totalmente compatible con Ethereum en la red Polkadot. Permite a los desarrolladores desplegar contratos inteligentes Solidity existentes con cambios mínimos, mientras se benefician de la seguridad compartida de Polkadot y la interoperabilidad entre cadenas. La red tiene tres entornos principales:
- Moonbeam (mainnet) – token GLMR, conectado a Polkadot
- Moonriver (canary net) – token MOVR, conectado a Kusama
- Moonbase Alpha (testnet) – token DEV, para desarrollo y pruebas
Los tres soportan la interfaz JSON-RPC estándar de Ethereum, lo que los hace compatibles con MetaMask, Hardhat, Truffle y otras herramientas de desarrollo conocidas.
Endpoints RPC públicos vs. de producción
Endpoints públicos (gratuitos, limitados)
La Fundación Moonbeam y otros proveedores ofrecen endpoints públicos para desarrollo y uso de bajo volumen. Tienen límites de velocidad y no se recomiendan para aplicaciones de producción.
| Red | URL HTTPS | URL WSS | Límite de velocidad |
|---|---|---|---|
| Moonbeam | https://rpc.api.moonbeam.network | wss://wss.api.moonbeam.network | 25 req/s |
| Moonriver | https://rpc.api.moonriver.moonbeam.network | wss://wss.api.moonriver.moonbeam.network | 25 req/s |
| Moonbase Alpha | https://rpc.api.moonbase.moonbeam.network | wss://wss.api.moonbase.moonbeam.network | 25 req/s |
Opciones de proveedor RPC de producción
Para dApps de producción, necesitas un proveedor RPC confiable que ofrezca límites de velocidad más altos, nodos dedicados y datos de archivo. OnFinality proporciona endpoints RPC para todas las redes Moonbeam con infraestructura escalable. También puedes considerar proveedores listados en la documentación de Moonbeam.
Al elegir un proveedor, busca:
- Precios transparentes (ej., nivel gratuito, pago por uso, nodos dedicados)
- Soporte de nodo archivo
- Disponibilidad de WebSocket (WSS)
- Failover multirregión y garantías de tiempo de actividad (usar redacción cautelosa)
- Panel de control para desarrolladores y claves API
Métodos JSON-RPC esenciales en Moonbeam
Moonbeam soporta los métodos JSON-RPC estándar de Ethereum más algunas APIs adicionales. A continuación se muestran los métodos más utilizados.
Métodos principales de Ethereum
// Ejemplo: Obtener el número del último bloque
curl -X POST https://moonbeam.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0",
"method":"eth_blockNumber",
"params":[],
"id":1
}'
Lista de métodos
| Método | Descripción | Notas |
|---|---|---|
eth_blockNumber | Número del último bloque | |
eth_getBalance | Saldo de una cuenta | Soporta etiqueta de bloque |
eth_call | Ejecutar una llamada de solo lectura a un contrato | Soporta bloques de archivo |
eth_estimateGas | Estimar gas para una transacción | |
eth_gasPrice | Precio actual del gas | |
eth_getLogs | Filtrar registros de eventos | Usar address, topics, rango de bloques |
eth_getTransactionReceipt | Obtener recibo por hash | |
eth_sendRawTransaction | Enviar una transacción firmada | |
net_version | ID de red (1284 para Moonbeam) | |
web3_clientVersion | Versión del cliente |
Específicos de Moonbeam y Debug/Trace
debug_traceTransaction: Para depurar la ejecución de transacciones (requiere nodo archivo)trace_filter: Filtrado de trazas estilo Parityeth_subscribe(WSS): Suscripciones a eventos en tiempo real
Nota: Algunos métodos (como
trace_*) requieren un proveedor que soporte trace API. Verifica con tu proveedor antes de depender de estas funcionalidades.
Cómo conectarse con herramientas populares
MetaMask
- Abre MetaMask y haz clic en "Agregar red" manualmente.
- Ingresa estos detalles para Moonbeam:
- Nombre de la red: Moonbeam
- URL RPC:
https://moonbeam.api.onfinality.io/public - ID de cadena:
1284 - Símbolo de moneda:
GLMR - URL del explorador de bloques:
https://moonbeam.subscan.io
Hardhat
// hardhat.config.js
module.exports = {
networks: {
moonbeam: {
url: "https://moonbeam.api.onfinality.io/public",
chainId: 1284,
accounts: ["<PRIVATE_KEY>"]
}
}
};
ethers.js
const { ethers } = require("ethers");
const provider = new ethers.JsonRpcProvider(
"https://moonbeam.api.onfinality.io/public"
);
const blockNumber = await provider.getBlockNumber();
console.log("Current block:", blockNumber);
Errores comunes y solución de problemas
- Límite de velocidad: Los endpoints públicos limitarán después de un cierto número de solicitudes por segundo. Usa un endpoint privado dedicado o compartido para producción.
- Datos de archivo: Muchos proveedores ofrecen solo nodos completos (estado más reciente). Si necesitas eth_call en bloques históricos, asegúrate de que el proveedor soporte modo archivo.
- Desconexiones de WebSocket: Para dApps en tiempo real, monitorea la salud de la conexión e implementa lógica de reconexión.
- ID de cadena incorrecto: Moonbeam usa 1284, Moonriver usa 1285, Moonbase Alpha usa 1287. Verifica al configurar billeteras.
- Faucet: Para tokens DEV de prueba de Moonbase Alpha, usa el faucet oficial.
Elegir un proveedor: qué comparar
No todos los proveedores RPC son iguales para Moonbeam. Usa esta lista de verificación al evaluar:
- Límites de velocidad: Deben coincidir con tu volumen de solicitudes esperado. Los planes gratuitos son buenos para pruebas; la producción necesita límites más altos.
- Distribución geográfica: Los endpoints globales reducen la latencia para tus usuarios.
- Soporte de archivo: Esencial para análisis, dApps históricas y algunos protocolos DeFi.
- API Trace: Necesaria para herramientas como Tenderly o depuración personalizada.
- Transparencia de precios: Sin tarifas ocultas, precios claros por solicitud o mensuales.
- Soporte: SLA y disponibilidad de soporte para desarrolladores.
OnFinality ofrece servicios RPC para Moonbeam con múltiples niveles, soporte de archivo y endpoints WebSocket. Consulta la página de red de Moonbeam para detalles de endpoints.
Preguntas frecuentes
P: ¿Cuál es la diferencia entre Moonbeam y Moonriver? Moonbeam es la parachain mainnet en Polkadot (GLMR), mientras que Moonriver es la red canary en Kusama (MOVR). Ambas comparten la misma compatibilidad con Ethereum pero tienen diferentes tokenomics y modelos de seguridad.
P: ¿Puedo usar librerías de Ethereum (ethers.js, web3.js) en Moonbeam? Sí, Moonbeam es totalmente compatible con Ethereum. Todas las librerías estándar de Ethereum funcionan sin cambios con un endpoint RPC de Moonbeam.
P: ¿Cómo obtengo tokens DEV gratuitos para Moonbase Alpha? Usa el faucet oficial de Moonbase Alpha para recibir tokens DEV diariamente.
P: ¿Moonbeam soporta EIP-1559?
Sí, Moonbeam soporta el mercado de tarifas EIP-1559. Usa los métodos eth_feeHistory y eth_maxPriorityFeePerGas.
P: ¿Dónde encuentro la lista completa de métodos JSON-RPC?
La visión general de la API de Moonbeam lista todos los métodos compatibles. Además, puedes usar eth_subscribe para eventos en tiempo real.
Conclusiones clave
- Moonbeam proporciona endpoints JSON-RPC compatibles con Ethereum para mainnet, canary y testnet.
- Los endpoints públicos son adecuados para desarrollo pero no para producción debido a los límites de velocidad.
- Elige un proveedor RPC de producción según límites de velocidad, soporte de archivo, WebSocket y precios.
- Las herramientas estándar de Ethereum (MetaMask, Hardhat, ethers.js) funcionan perfectamente con Moonbeam.
- Para depuración y casos de uso avanzados, asegúrate de que tu proveedor soporte APIs de trace y archivo.
Comienza a construir en Moonbeam hoy conectándote a una API RPC confiable de OnFinality u otro proveedor que cumpla con tus requisitos.