Logo
RPC Assistant

API de Arbitrum: Endpoints, Métodos y Consejos de Producción

Resumen

La API de Arbitrum permite a los desarrolladores interactuar con Arbitrum One y Arbitrum Nova utilizando métodos estándar JSON-RPC de Ethereum, con total compatibilidad EVM. Este artículo cubre configuraciones de red, llamadas API comunes, criterios de selección de proveedores y mejores prácticas para dApps en producción.

Lista de Verificación para la Decisión sobre la API de Arbitrum

Antes de integrar la API de Arbitrum en tu proyecto, evalúa estas áreas clave:

CriterioQué verificarPor qué es importante
Selección de redArbitrum One vs Arbitrum Nova vs testnet (Sepolia)Diferentes cadenas sirven diferentes casos de uso: One para DeFi, Nova para juegos/redes sociales, Sepolia para staging
Proveedor RPCEndpoints compatibles, límites de tasa, disponibilidad de WebSocket, datos de archivoLos endpoints públicos gratuitos no son confiables para producción; un nodo dedicado o servicio gestionado asegura disponibilidad
Compatibilidad de métodosTodos los métodos estándar eth_ funcionan; verifica métodos personalizados de ArbitrumArbitrum extiende Ethereum RPC con métodos específicos de rollup como arb_getL1BaseFee
Precios de gasEIP-1559, componente de tarifa de datos L1La estimación de costos de transacción difiere de la mainnet de Ethereum; usa eth_estimateGas y arb_gasPrice
Soporte WebSocketPara suscripciones en tiempo real (eth_subscribe)Esencial para monitorear eventos, transacciones pendientes y feeds de precios
Datos de archivoAcceso a trazas y estado históricoLa depuración, análisis e indexación a menudo requieren nodos de archivo
Failover y redundanciaMúltiples endpoints, reintentos automáticos, balanceo de cargaElimina puntos únicos de fallo en entornos de producción

Resumen de la Red Arbitrum

Arbitrum es una solución de escalado de Capa 2 líder para Ethereum, que utiliza rollups optimistas para ofrecer transacciones rápidas y de bajo costo mientras hereda la seguridad de Ethereum. Es totalmente compatible con EVM, lo que significa que los contratos Solidity existentes y las herramientas de Ethereum (Hardhat, Foundry, ethers.js) funcionan con cambios mínimos. Las redes principales son:

  • Arbitrum One – Mainnet para DeFi de alto valor, trading y dApps de propósito general (ID de cadena: 42161).
  • Arbitrum Nova – Sidechain basada en AnyTrust optimizada para juegos y aplicaciones sociales (ID de cadena: 42170).
  • Arbitrum Sepolia – Testnet para desarrollo y staging (ID de cadena: 421614).

Todas las redes exponen la misma interfaz JSON-RPC, pero los proveedores pueden limitar el acceso a ciertas redes o endpoints.

Endpoints de la API de Arbitrum

Para interactuar con Arbitrum, envías solicitudes JSON-RPC a un endpoint RPC. Existen endpoints públicos, pero a menudo tienen límites de tasa y no son confiables para uso en producción. Para cargas de trabajo de producción, usa un servicio RPC gestionado o ejecuta tu propio nodo.

Ejemplo de endpoint de mainnet de Arbitrum One (solo para pruebas):

https://arb1.arbitrum.io/rpc

Ejemplo de solicitud usando curl:

curl https://arb1.arbitrum.io/rpc \
  -X POST \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

Respuesta:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": "0x1234567"
}

Para endpoints privados con límites de tasa más altos y soporte WebSocket, servicios como OnFinality ofrecen endpoints RPC dedicados de Arbitrum con límites configurables y análisis.

Métodos JSON-RPC Soportados

Arbitrum soporta todos los métodos JSON-RPC estándar de Ethereum (eth_*, net_*, web3_*). Además, proporciona métodos específicos de Arbitrum para consultas relacionadas con rollup:

MétodoDescripción
eth_blockNumberNúmero de bloque más reciente
eth_getBalanceSaldo de cuenta (en wei)
eth_callEjecutar una llamada de función constante
eth_sendRawTransactionTransmitir una transacción firmada
eth_getTransactionReceiptRecibo de transacción por hash
eth_estimateGasEstimar el costo de gas de una transacción
eth_subscribeSuscribirse a eventos (solo WebSocket)
arb_getL1BaseFeeTarifa base L1 actual (en wei)
arb_gasPricePrecio de gas actual incluyendo tarifa de datos L1

Uso de la API de Arbitrum en JavaScript

Así es como conectarse a Arbitrum usando viem (o ethers.js):

import { createPublicClient, http } from 'viem'
import { arbitrum } from 'viem/chains'

const client = createPublicClient({
  chain: arbitrum,
  transport: http('https://arb1.arbitrum.io/rpc')
})

async function getBlockNumber() {
  const blockNumber = await client.getBlockNumber()
  console.log('Current block:', blockNumber)
}

Para producción, reemplaza el endpoint público por el endpoint privado de tu proveedor para evitar límites de tasa.

Precios de Gas en Arbitrum

Las transacciones de Arbitrum incluyen dos componentes de tarifa:

  • Tarifa de ejecución L2 – Cubre la computación en el rollup, denominada en gwei (EIP-1559).
  • Tarifa de datos L1 – Costo de publicar datos de transacción en Ethereum L1, varía con los precios de gas de L1.

Usa arb_gasPrice para obtener el precio total del gas (incluyendo la sobrecarga L1). Al estimar gas, llama a eth_estimateGas y luego aplica un buffer (por ejemplo, 20%) para evitar errores de falta de gas durante alta congestión L1.

Ejemplo de estimación con curl:

curl https://arb1.arbitrum.io/rpc \
  -X POST \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_estimateGas","params":[{"from":"0x...","to":"0x...","value":"0x0"}],"id":1}'

Elección de un Proveedor RPC para Arbitrum

Al seleccionar un proveedor para tu dApp en Arbitrum, considera:

  • Límites de tasa – Los límites del nivel gratuito pueden bloquear solicitudes de alta frecuencia. Verifica el volumen de solicitudes esperado de tu aplicación.
  • Soporte WebSocket – Necesario para feeds de datos en tiempo real. Muchos endpoints públicos deshabilitan WebSocket.
  • Datos de archivo – Si necesitas estado histórico o trazas (por ejemplo, para exploradores o análisis), asegúrate de que el proveedor ofrezca nodos de archivo.
  • Latencia geográfica – Elige endpoints cercanos a tu base de usuarios o despliega en múltiples regiones.

Los proveedores gestionados como OnFinality ofrecen endpoints dedicados de Arbitrum con límites de tasa personalizables, WebSocket y acceso a archivos. Compara precios de RPC para encontrar un plan que se ajuste a tu escala.

Errores Comunes y Solución de Problemas

  1. ID de red incorrecto – Verifica el ID de cadena: Arbitrum One es 42161, Nova es 42170, testnet Sepolia es 421614.
  2. Fluctuaciones de tarifa de datos L1 – Los precios de gas L1 pueden dispararse, haciendo que las transacciones sean más costosas. Monitorea arb_getL1BaseFee regularmente.
  3. Datos desactualizados con endpoints públicos – Los endpoints públicos pueden retrasarse respecto al último bloque. Usa endpoints privados con baja latencia confirmada.
  4. Desconexiones de WebSocket – Implementa lógica de reconexión (por ejemplo, retroceso exponencial) para manejar fallos temporales.
  5. Gestión de nonce – Arbitrum usa el mismo sistema de nonce que Ethereum. Mantén un registro de las transacciones pendientes para evitar desajustes de nonce.

Conclusiones Clave

  • La API de Arbitrum es totalmente compatible con JSON-RPC de Ethereum, por lo que la mayoría del código existente funciona sin cambios.
  • Usa arb_gasPrice y arb_getL1BaseFee para una estimación precisa de tarifas.
  • Los endpoints RPC públicos son adecuados solo para desarrollo; las aplicaciones en producción requieren un proveedor confiable con soporte WebSocket y de archivo.
  • Evalúa a los proveedores según límites de tasa, cobertura geográfica y servicios adicionales como nodos dedicados.
  • Prueba en Arbitrum Sepolia antes de desplegar en mainnet para detectar problemas específicos de la red.

Preguntas Frecuentes

P: ¿La API de Arbitrum es igual que la API de Ethereum? R: Sí, Arbitrum soporta el conjunto completo de métodos JSON-RPC de Ethereum. Añade algunos métodos específicos de rollup para datos de tarifas L1.

P: ¿Necesito una clave API para usar Arbitrum? R: Los endpoints públicos no requieren clave API, pero tienen límites de tasa. La mayoría de los servicios gestionados requieren una clave API para autenticación y seguimiento de uso.

P: ¿Puedo usar el mismo código para Arbitrum One y Nova? R: Sí, ambas redes comparten la misma interfaz RPC. Solo actualiza el ID de cadena y la URL del endpoint.

P: ¿Cómo obtengo las tarifas de datos L1? R: Llama a arb_getL1BaseFee para obtener la tarifa base L1 actual en wei.

P: ¿Cuál es el mejor proveedor RPC para Arbitrum? R: El mejor proveedor depende de tu carga de trabajo. Evalúa opciones según límites de tasa, WebSocket, datos de archivo y soporte. Consulta redes compatibles para disponibilidad de Arbitrum entre proveedores.

Para más detalles, explora los endpoints RPC de Arbitrum de OnFinality y elige un plan que se ajuste a las necesidades de tu proyecto.

Base de conocimiento RPC

Detalles RPC relacionados

Nunca te preocupes por la infraestructura nuevamente

OnFinality elimina la carga pesada de DevOps para que puedas construir de forma más inteligente y rápida.

Comenzar