Resumen
La API de la blockchain de Polygon incluye endpoints JSON-RPC para interacción directa con nodos, APIs REST como Open Money Stack para pagos, y SDKs cliente como Matic.js y ethers.js. Elegir la API correcta depende de tu caso de uso: si necesitas acceso de bajo nivel a la cadena, pagos con stablecoins o interacciones con contratos inteligentes. Este artículo cubre los tipos de API disponibles, cuándo usar cada uno y las mejores prácticas para implementaciones en producción.
Lista de verificación de decisiones para la API de Polygon
- Determina tu caso de uso: ¿Estás construyendo una dApp que necesita interacción con contratos inteligentes, una aplicación de pagos que requiere transferencias de stablecoins o una herramienta de análisis que lee datos en cadena?
- Elige la capa de API adecuada: Usa JSON-RPC para acceso de bajo nivel a la cadena, la API REST de Open Money Stack para flujos de pago, o un SDK cliente como ethers.js para desarrollo de contratos.
- Selecciona un proveedor de RPC: Evalúa proveedores según límites de tasa, soporte de datos de archivo, disponibilidad de WebSocket y latencia geográfica. OnFinality ofrece endpoints RPC de Polygon con opciones de nodos dedicados para cargas de trabajo en producción.
- Prueba primero con testnet: Despliega y prueba en Polygon Amoy antes de mainnet para detectar problemas temprano.
- Monitorea y maneja errores: Implementa lógica de reintentos para límites de tasa, verifica códigos de error JSON-RPC y registra solicitudes fallidas.
¿Qué es la API de la Blockchain de Polygon?
La API de la blockchain de Polygon se refiere al conjunto de interfaces que los desarrolladores utilizan para interactuar con la red Polygon. Polygon es una solución de escalado de capa 2 para Ethereum que proporciona transacciones más rápidas y económicas mientras mantiene compatibilidad con EVM. El panorama de API incluye:
- API JSON-RPC: Interfaz estándar compatible con Ethereum para leer datos de la cadena, enviar transacciones e interactuar con contratos inteligentes.
- APIs REST: La API de Open Money Stack para pagos, más endpoints REST específicos de proveedores para datos de la cadena.
- SDKs cliente: Bibliotecas como ethers.js, web3.js y Matic.js que envuelven llamadas JSON-RPC en métodos convenientes.
Entender estas opciones te ayuda a elegir la mejor herramienta para tu proyecto.
Tipos de APIs de Polygon: RPC, REST y SDKs
| Tipo de API | Interfaz | Mejor para | Ejemplo de caso de uso |
|---|---|---|---|
| JSON-RPC | Solicitudes POST a un endpoint | Acceso de bajo nivel a la cadena, consultas personalizadas, interacción directa con nodos | Obtener el último bloque, llamar a cualquier contrato inteligente |
| API REST | HTTP GET/POST a endpoints estructurados | Flujos de pago, rampas fiat, recuperación de datos de alto nivel | Enviar pagos con stablecoins vía Open Money Stack |
| SDK cliente | Biblioteca JavaScript/TypeScript | Desarrollo de contratos inteligentes, frontends de dApp, prototipado rápido | Ethers.js para desplegar y llamar contratos |
API JSON-RPC
La interfaz principal para Polygon es JSON-RPC, idéntica a la API de Ethereum. Puedes enviar solicitudes a cualquier endpoint RPC de Polygon. Ejemplo: obtener el número del último bloque.
curl -X POST https://polygon-rpc.com \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "eth_blockNumber",
"params": [],
"id": 1
}'
Para producción, usa un proveedor confiable como OnFinality para evitar límites de tasa y tiempo de inactividad. Consulta redes soportadas para endpoints disponibles.
APIs REST: Open Money Stack
Open Money Stack de Polygon es un conjunto de API REST para mover dinero. Proporciona endpoints para transferencias de stablecoins, rampas de entrada/salida y billeteras no custodiadas. Esta API es RESTful y devuelve JSON. Abstrae la complejidad de las transacciones brutas de la cadena.
SDKs Cliente
- Ethers.js y web3.js: SDKs genéricos de Ethereum que funcionan con Polygon debido a la compatibilidad con EVM. Úsalos para interacciones con contratos.
- Matic.js: SDK heredado de Polygon para operaciones de puente. Proporciona APIs de Lectura y Escritura para el puente PoS.
Ejemplo usando ethers.js:
const { ethers } = require("ethers");
const provider = new ethers.providers.JsonRpcProvider("https://polygon-rpc.com");
async function getBlockNumber() {
const blockNumber = await provider.getBlockNumber();
console.log("Current block:", blockNumber);
}
getBlockNumber();
Cuándo Usar JSON-RPC vs. REST vs. SDK
- JSON-RPC: Úsalo cuando necesites máxima flexibilidad: llamar a cualquier método EVM, leer el estado del contrato o enviar transacciones con parámetros de gas personalizados. Esencial para trabajo a nivel de infraestructura.
- APIs REST: Mejor para flujos de pago donde quieras evitar la construcción de transacciones brutas. Open Money Stack maneja la estimación de tarifas, gestión de nonces y reintentos.
- SDKs Cliente: Ideales para dApps front-end y prototipado rápido. Simplifican el código pero dependen de un endpoint RPC subyacente.
Para una comparación más profunda de proveedores, consulta Cómo Elegir un Proveedor de RPC.
Endpoints RPC de Polygon y Configuración de la Cadena
| Configuración | Valor Mainnet | Valor Testnet (Amoy) |
|---|---|---|
| ID de cadena | 137 | 80002 |
| Endpoint RPC (compartido) | https://polygon-rpc.com | https://rpc-amoy.polygon.technology |
| Símbolo de moneda | POL | POL |
| Explorador de bloques | https://polygonscan.com | https://amoy.polygonscan.com |
Para producción, considera usar un servicio de nodos dedicados para garantizar el rendimiento. OnFinality proporciona nodos dedicados de Polygon con capacidad personalizable.
Métodos Comunes de API para Desarrollo en Polygon
Aquí hay métodos JSON-RPC de uso frecuente:
eth_blockNumber– Obtener el número del último bloqueeth_getBalance– Obtener el saldo de POL para una direccióneth_call– Ejecutar una llamada de contrato de solo lecturaeth_sendRawTransaction– Transmitir una transacción firmadaeth_getTransactionReceipt– Obtener el recibo de una transaccióneth_gasPrice– Obtener el precio actual del gas
Estos métodos son idénticos a los de Ethereum, por lo que cualquier herramienta de Ethereum funciona en Polygon.
Solución de Problemas en Llamadas a la API de Polygon
Problemas comunes y soluciones:
- Límite de tasa: Los endpoints públicos gratuitos pueden limitar. Cambia a un proveedor con límites más altos o un nodo dedicado. Consulta precios de RPC para opciones.
- ID de cadena incorrecto: Asegúrate de usar el ID de cadena 137 (mainnet) o 80002 (testnet Amoy).
- Errores de nonce: Para operaciones de escritura, asegúrate de rastrear los nonces correctamente por dirección.
- Fallos en la estimación de gas: Usa
eth_estimateGasantes de enviar transacciones. - Tiempos de espera de conexión: Usa un proveedor con múltiples endpoints y conmutación por error. OnFinality ofrece infraestructura redundante.
Conclusiones Clave
- La API de Polygon es compatible con EVM, por lo que las herramientas de Ethereum funcionan sin problemas.
- Elige JSON-RPC para control de bajo nivel, REST para flujos de pago y SDKs para conveniencia.
- La confiabilidad importa en producción: evalúa proveedores según tiempo de actividad, límites de tasa y soporte.
- Siempre prueba en testnet Amoy antes de desplegar en mainnet.
- OnFinality proporciona endpoints RPC robustos de Polygon e infraestructura de nodos dedicados para aplicaciones exigentes.
Preguntas Frecuentes
P: ¿Puedo usar bibliotecas de Ethereum en Polygon? R: Sí, debido a la compatibilidad con EVM, bibliotecas como ethers.js y web3.js funcionan directamente con endpoints RPC de Polygon.
P: ¿Cuál es la diferencia entre Matic.js y ethers.js? R: Matic.js es un SDK especializado para operaciones de puente de Polygon (depósito, retiro). Ethers.js es un SDK de uso general para Ethereum que también puede interactuar con Polygon.
P: ¿Cómo obtengo un endpoint RPC gratuito de Polygon? R: Endpoints públicos como https://polygon-rpc.com están disponibles pero tienen límites de tasa. Para producción, considera un servicio como OnFinality con opciones de nivel gratuito.
P: ¿Qué es la API de Open Money Stack? R: Es una API REST para mover dinero en Polygon: pagos con stablecoins, rampas de entrada/salida y gestión de billeteras. Simplifica la integración de pagos.
P: ¿Cómo manejo la testnet de Polygon? R: Usa la testnet Amoy (ID de cadena 80002) y obtén POL de prueba de un faucet. Muchos proveedores ofrecen endpoints RPC de Amoy.
Para más detalles sobre las redes disponibles, visita redes soportadas.