---
title: "Documentación del endpoint RPC de Solana"
description: "Usa ERPC como Solana RPC endpoint de baja latencia para solicitudes HTTP JSON-RPC y suscripciones WebSocket."
canonical: "https://erpc.global/es/doc/rpc/general/"
locale: "es"
---

# Documentación del endpoint RPC de Solana

## Documentación del endpoint RPC de Solana

Usa ERPC como tu endpoint RPC de Solana para solicitudes HTTP JSON-RPC y suscripciones WebSocket. La misma URL de endpoint de Solana funciona con los métodos RPC estándar, y la API key se gestiona desde ERPC Dashboard.

Añade tu API key al parámetro 'api-key'.

```text
https://edge.erpc.global?api-key=<YOUR_API_KEY>
```

### Ejemplos:

Este es un ejemplo de solicitud HTTP.

```bash
curl https://edge.erpc.global?api-key=<YOUR_API_KEY> --header 'Content-Type: application/json' --data '{
  "jsonrpc":"2.0","id":1,
  "method":"getBlockHeight"
}'
```

Este es un ejemplo de suscripción WebSocket. El host es el mismo que HTTP.

```text
wss://edge.erpc.global?api-key=<YOUR_API_KEY>
```

```bash
# Example: subscribe to slot updates
wscat -c "wss://edge.erpc.global?api-key=<YOUR_API_KEY>"
# After connected, send:
{"jsonrpc":"2.0","id":1,"method":"slotSubscribe"}
```

Puedes obtener y comprobar tu API key en ERPC Dashboard: [ERPC Dashboard](https://dashboard.erpc.global/es)

Si necesitas menor latencia que WebSocket, considera Geyser gRPC o ShredStream. Puedes hablar de los detalles con nosotros a través de ERPC Dashboard.

### History Access

Añade `history=true` a la URL `edge.erpc.global` de una solicitud HTTP para consultar bloques y transacciones más antiguos; el valor debe ser exactamente `true`, en minúsculas. Excepto `getTransactionsForAddress`, una solicitud sin `history=true` se responde desde el rango reciente que conserva cada nodo; la opción se aplica a estos métodos:

- `getBlock`
- `getBlockTime`
- `getBlocks`
- `getBlocksWithLimit`
- `getTransaction`, incluido `getParsedTransaction`
- `getSignaturesForAddress`
- `getSignatureStatuses`, cuando `searchTransactionHistory` es `true`
- `getTransactionsForAddress`, cuando `transactionDetails` es `"full"` (se requiere History Access)

Incluye la API key y la opción en la URL como parámetros de consulta:

```text
https://edge.erpc.global?api-key=<YOUR_API_KEY>&history=true
```

O envía `Authorization: Bearer <YOUR_API_KEY>` como cabecera, con la opción en la URL:

```text
https://edge.erpc.global?history=true
```

Este es un ejemplo de solicitud HTTP que usa History Access.

```bash
curl 'https://edge.erpc.global?history=true' \
  --header 'Authorization: Bearer <YOUR_API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{
  "jsonrpc":"2.0","id":1,
  "method":"getBlock",
  "params":[<SLOT>,{"maxSupportedTransactionVersion":1}]
}'
```

Para todos los métodos excepto `getTransactionsForAddress` en modo `"full"`:

- Cada llamada respondida por History Access cuesta 640 tokens más que su precio normal: `getBlock` cuesta 42 + 640 = 682.
- Un resultado `null`, vacío o parcial de History Access también lleva el recargo. Una consulta fallida no lleva recargo.
- Una llamada respondida con datos recientes mantiene su precio normal, incluso con `history=true`.
- Un lote cuenta cada llamada por separado; `getSignatureStatuses` cuenta una vez por llamada, no por firma.
- No uses `history=true` al sondear transacciones recientes: cada `null` de ese sondeo lleva el recargo.

Las asignaciones gratuitas, incluidas las del Plan Free, tienen un límite para History Access. El Plan Free se limita a una solicitud de History Access cada 10 segundos.

Una llamada a `getTransactionsForAddress` con `transactionDetails` establecido en `"full"` es History Access, tanto si las transacciones son recientes como antiguas:

- La llamada requiere `history=true` en la URL `edge.erpc.global`. Una solicitud sin esta opción se rechaza con el error de History Access (código `-32011`) y no conlleva ningún cargo.
- Con `history=true`, la llamada cuesta 420 + 640 × N tokens: su precio normal de 420, más 640 por cada una de las N transacciones obtenidas, recientes o antiguas. Una fila sin transacción no se cuenta.
- La llamada debe enviarse como una solicitud independiente. Un lote que la contenga se rechaza, con o sin `history=true`: cada llamada del lote se responde con el error `-32600` y el mensaje `This request is not available in a mixed JSON-RPC batch. Please send it as a separate request.`, y ninguna de ellas se envía.

El modo `signatures` predeterminado no necesita `history=true` y no lleva recargo. Para sondear una dirección en busca de transacciones nuevas, usa el modo `signatures` y obtén las que necesites con `getTransaction`.

Una consulta de bloques o transacciones más antiguos puede tardar mucho más que una solicitud normal, en algunos casos segundos. History Access es una opción independiente que mantiene estas consultas separadas de las solicitudes normales, de modo que las solicitudes normales sigan siendo rápidas.

Sin `history=true`, una solicitud `getBlock` o `getBlockTime` para un slot más antiguo puede devolver este error:

```json
{
  "jsonrpc": "2.0",
  "error": {
    "code": -32011,
    "message": "This request needs history access. Add history=true to the endpoint URL.",
    "data": {
      "erpcCode": "ERPC_HISTORY_OPTION_REQUIRED"
    }
  },
  "id": 1
}
```

`getTransaction`, `getParsedTransaction` y `getSignatureStatuses` (con `searchTransactionHistory: true`) devuelven `null` para una firma más antigua de lo que conserva el nodo, mientras que `getSignaturesForAddress`, `getBlocks` y `getBlocksWithLimit` devuelven un resultado vacío o parcial.

Una solicitud con `history=true` puede devolver estos mensajes:

- `This plan has reached its limit for history access. Add a paid plan to use tokens for history access.` — se muestra cuando una asignación, como la del Plan Free, alcanza su límite.
- `History access is unavailable while your token balance is low. Add tokens.` — se muestra en un plan de pago cuando el saldo de tokens es bajo.
- `On the Free plan, history access is limited to one request per 10 seconds. Slow down or use a paid plan.` — se muestra en el Plan Free cuando las solicitudes de History Access llegan demasiado rápido.

### Métodos compatibles con Unlimited Endpoint

Los Unlimited Endpoints son endpoints HTTP dedicados, optimizados para llamadas estándar de Solana RPC de baja latencia. Estos son los métodos estándar de Solana RPC compatibles:

- `getSlot`
- `getBlockHeight`
- `getLatestBlockhash`
- `getBalance`
- `getAccountInfo`
- `getMultipleAccounts`
- `getTransaction`
- `sendTransaction`
- `simulateTransaction`
- `getSignatureStatuses`
- `getRecentPrioritizationFees`
- `getHealth`
- `getVersion`
- `getEpochInfo`
- `getBlock`

Para los métodos fuera de este conjunto compatible, usa `https://edge.erpc.global?api-key=<YOUR_API_KEY>`.

### Métodos y documentación de Solana RPC

Para la lista completa de métodos, parámetros y especificaciones de suscripción, consulta la documentación oficial. Cubre tanto el uso por HTTP como por WebSocket.

[https://solana.com/docs/rpc](https://solana.com/docs/rpc)
