Resumen
# Guía de la API de Solana: Endpoints RPC, Métodos y Mejores Prácticas La API de Solana es una interfaz JSON-RPC que permite a los desarrolladores interactuar con la blockchain de Solana. Proporciona métodos para leer el estado de la red, enviar transacciones, simular ejecuciones y suscribirse a actualizaciones en vivo. Esta guía cubre los métodos principales de la API, cómo conectarse a diferentes clústeres y consideraciones para elegir un proveedor RPC confiable para aplicaciones en producción.
Puntos clave
- La API de Solana usa JSON-RPC 2.0 sobre HTTP POST y WebSocket para suscripciones.
- Los métodos HTTP clave incluyen getBalance, getTransaction, sendTransaction y getProgramAccounts.
- Los endpoints RPC públicos tienen límites de tasa y no son adecuados para producción; usa un proveedor dedicado.
- Solana ofrece tres clústeres principales: Mainnet, Devnet y Testnet, cada uno con propósitos distintos.
- Las suscripciones WebSocket permiten actualizaciones en tiempo real para cuentas, logs y programas.
- Elegir un proveedor con baja latencia y alta confiabilidad es crítico para la experiencia del usuario.
- OnFinality proporciona endpoints RPC de Solana escalables con opciones de nodos dedicados para cargas de trabajo en producción.
¿Qué es la API de Solana?
La API de Solana es una interfaz JSON-RPC que permite a las aplicaciones comunicarse con la blockchain de Solana. Sigue la especificación JSON-RPC 2.0 y admite transporte HTTP y WebSocket. A través de esta API, los desarrolladores pueden consultar saldos de cuentas, enviar transacciones, obtener datos de bloques y suscribirse a eventos en tiempo real.
La documentación oficial de Solana proporciona una lista completa de métodos RPC, pero para aplicaciones en producción, no se recomienda depender de endpoints públicos debido a límites de tasa y problemas de confiabilidad. En su lugar, los desarrolladores suelen usar proveedores RPC de terceros que ofrecen infraestructura dedicada.
Resumen de Métodos de la API de Solana
La API de Solana incluye docenas de métodos organizados en categorías: cuentas, tokens, transacciones, bloques, información del clúster y economía. Algunos de los métodos más utilizados son:
- getBalance – Devuelve el saldo de SOL de una cuenta.
- getTransaction – Recupera una transacción confirmada por su firma.
- sendTransaction – Envía una transacción firmada al clúster.
- getProgramAccounts – Devuelve todas las cuentas propiedad de un programa.
- getLatestBlockhash – Obtiene el último hash de bloque para la construcción de transacciones.
- simulateTransaction – Simula una transacción sin confirmarla.
- getSlot – Devuelve el número de slot actual.
- getBlock – Obtiene un bloque por su número de slot.
| Criterio | Qué revisar | Por qué importa |
|---|---|---|
| Workload fit | Does the provider support the Solana RPC methods and environments your product depends on? | A provider that works for a quick read may still be a poor fit for wallets, trading systems, indexers, or release pipelines. |
| Operational visibility | Can the team see request volume, errors, limits, and usage patterns? | Visibility makes it easier to debug failed requests and plan capacity before users feel the problem. |
| Scaling path | Is there a clear path from shared RPC to higher-capacity plans or dedicated nodes? | The right starting point should not force a rebuild when traffic or reliability requirements increase. |
Conexión a Clústeres de Solana
Solana opera tres clústeres principales: Mainnet, Devnet y Testnet. Cada clúster tiene un endpoint RPC público, pero estos son compartidos y tienen límites de tasa. Para aplicaciones en producción, debes usar un proveedor RPC dedicado que ofrezca mayor rendimiento y confiabilidad.
Los endpoints públicos son:
Mainnet: https://api.mainnet.solana.com
Devnet: https://api.devnet.solana.com
Testnet: https://api.testnet.solana.com
- Mainnet – Red de producción que usa SOL real. Úsala para dApps en vivo.
- Devnet – Red de pruebas para desarrolladores con SOL gratuito del faucet. Ideal para desarrollo y pruebas.
- Testnet – Red de pruebas para validadores. Se usa para pruebas de rendimiento de la red.
Realizando tu Primera Llamada a la API
Aquí tienes un ejemplo simple usando curl para llamar al método getSlot en Mainnet de Solana a través de un endpoint público:
curl https://api.mainnet.solana.com -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1,"method":"getSlot","params":[]}'
Para producción, reemplazarías el endpoint público con una URL específica del proveedor. Por ejemplo, usando el endpoint RPC de Solana de OnFinality:
curl https://solana.api.onfinality.io/public -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1,"method":"getSlot","params":[]}'
- Mainnet – Production network using real SOL. Use for live dApps.
- Devnet – Developer testing network with free SOL from the faucet. Ideal for development and testing.
- Testnet – Validator testing network. Used for network performance testing.
Suscripciones WebSocket
La API de Solana también admite suscripciones WebSocket para actualizaciones en tiempo real. Puedes suscribirte a cambios de cuentas, logs de programas y actualizaciones de slots. Esto es útil para construir dApps receptivas que reaccionen a eventos en la cadena.
Ejemplo de suscripción a cambios de cuenta:
wscat -c wss://api.mainnet.solana.com
> {"jsonrpc":"2.0","id":1,"method":"accountSubscribe","params":["PUBLIC_KEY",{"commitment":"finalized"}]}
Elegir un Proveedor RPC de Solana
Al seleccionar un proveedor RPC de Solana para producción, considera los siguientes criterios:
| Criterio | Qué revisar | Por qué importa |
|---|---|---|
| Tiempo de actividad y confiabilidad | Acuerdos de Nivel de Servicio (support terms) y estadísticas históricas de tiempo de actividad. | El tiempo de inactividad puede romper tu aplicación y causar pérdida de confianza del usuario. |
| Latencia | Distribución geográfica de los endpoints y tiempos de respuesta. | La baja latencia mejora la experiencia del usuario, especialmente en aplicaciones en tiempo real. |
| Límites de tasa | Límites de solicitudes por segundo (RPS) y si escalan con tus necesidades. | Los límites de tasa pueden ralentizar tu aplicación durante picos de uso. |
| Nodos dedicados vs compartidos | Si el proveedor ofrece nodos dedicados con recursos garantizados. | Los nodos dedicados proporcionan un rendimiento consistente y son esenciales para aplicaciones de alto tráfico. |
| Soporte de red | Disponibilidad de endpoints de Mainnet, Devnet y Testnet. | Necesitas acceso a redes de prueba para desarrollo y staging. |
¿Por qué usar OnFinality para RPC de Solana?
OnFinality ofrece endpoints RPC de Solana confiables con soporte para Mainnet, Devnet y Testnet. Nuestra infraestructura está diseñada para cargas de trabajo en producción, con baja latencia y alta disponibilidad. Ya sea que necesites un endpoint público compartido o un nodo dedicado, OnFinality proporciona opciones flexibles para adaptarse a tu escala.
Comienza con una clave API gratuita y experimenta el rendimiento y la confiabilidad que OnFinality ofrece.
| Criterio | Qué revisar | Por qué importa |
|---|---|---|
| availability and Reliability | Service Level Agreements (SLAs) and historical availability statistics. | Downtime can break your application and cause loss of user trust. |
| Latency | Geographic distribution of endpoints and response times. | Low latency improves user experience, especially for real-time applications. |
| Rate Limits | Requests per second (RPS) limits and whether they scale with your needs. | Rate limits can throttle your application during peak usage. |
| Dedicated vs Shared Nodes | Whether the provider offers dedicated nodes with isolated resources. | Dedicated nodes provide consistent performance and are essential for high-traffic applications. |
| Network Support | Availability of Mainnet, Devnet, and Testnet endpoints. | You need access to test networks for development and staging. |
Why Use OnFinality for Solana RPC?
OnFinality offers reliable Solana RPC endpoints with support for Mainnet, Devnet, and Testnet. Our infrastructure is designed for production workloads, with low latency and high availability. Whether you need a shared public endpoint or a dedicated node, OnFinality provides flexible options to match your scale.
Get started with a free API key and experience the performance and reliability that OnFinality delivers.
Preguntas frecuentes
¿Qué es la API de Solana?
La API de Solana es una interfaz JSON-RPC que permite a los desarrolladores interactuar con la blockchain de Solana. Proporciona métodos para consultar el estado de la red, enviar transacciones y suscribirse a eventos en tiempo real.
¿Cómo obtengo una clave API de Solana?
Puedes obtener una clave API gratuita de proveedores como OnFinality. Simplemente regístrate y crea una clave API para acceder a los endpoints RPC de Solana.
¿Cuál es la diferencia entre Mainnet, Devnet y Testnet de Solana?
Mainnet es la red de producción que usa SOL real. Devnet es para que los desarrolladores prueben aplicaciones con SOL gratuito. Testnet es para pruebas de validadores y rendimiento de la red.
¿Puedo usar el endpoint RPC público de Solana para producción?
Los endpoints públicos tienen límites de tasa y son compartidos, lo que los hace inadecuados para producción. Usa un proveedor RPC dedicado para acceso confiable y escalable.
¿Cuáles son los métodos más comunes de la API de Solana?
Los métodos comunes incluyen getBalance, getTransaction, sendTransaction, getProgramAccounts, getLatestBlockhash y getSlot.