Saltar al contenido principal
POST
getHistoricalAccountInfo
getHistoricalAccountInfo está en fase beta. Los parámetros, los precios, los formatos de respuesta y la cobertura de datos pueden cambiar.

Descripción general

getHistoricalAccountInfo devuelve una cuenta de Solana tal como estaba en un slot anterior o inmediatamente después de una transacción específica de ese slot. Es un método RPC exclusivo de Helius. El método estándar getAccountInfo solo devuelve el estado actual. La respuesta tiene los mismos campos de cuenta que getAccountInfo, además de lastUpdatedAt: el slot y la transacción que escribieron por última vez el estado que recibiste. El historial está disponible a partir del slot 444,959,999 (7 de septiembre de 2026), que corresponde al estado al inicio de la época 1030. Las solicitudes de slots anteriores devuelven el error -32018. getHistoricalAccountInfo está disponible en mainnet para los planes Business y superiores, y cuesta 0 créditos por llamada durante el período beta. Los precios están sujetos a cambios.

Elige una posición en el historial

El segundo parámetro es un objeto de consulta que selecciona qué punto del historial se leerá: transactionIndex requiere slot. Para leer una cuenta justo antes de la transacción con índice N, consulta transactionIndex: N - 1. Para la primera transacción de un slot, consulta el slot anterior sin transactionIndex. Las escrituras que no corresponden a transacciones, como las recompensas de época, se aplican al final del slot. Una consulta con transactionIndex nunca las incluye.

Solicitud de ejemplo

Lee la respuesta

  • value es la cuenta tal como estaba en la posición solicitada, o null si la cuenta no existía en ese momento: aún no se había creado o ya se había cerrado. Una respuesta null no tiene lastUpdatedAt.
  • lastUpdatedAt.slot y lastUpdatedAt.transactionIndex identifican la escritura que produjo este estado. La escritura se encuentra en la posición que solicitaste o antes de ella.
  • lastUpdatedAt.transactionIndex es null cuando la escritura ocurrió fuera de una transacción, como sucede con las recompensas de época.
  • Un valor lastUpdatedAt.slot de 444,959,999 con un valor transactionIndex de null significa que la cuenta no ha cambiado desde que comenzó la cobertura del historial. No significa que la cuenta se haya escrito en ese slot.
  • context.slot es el último slot que Helius había indexado cuando procesó la solicitud, no el slot que consultaste.
  • Las cuentas de tokens jsonParsed usan los decimales del mint correspondientes a la posición solicitada. Si el mint no se puede leer en esa posición, la cuenta recurre a base64.
Para enumerar todos los estados anteriores de una cuenta, usa lastUpdatedAt como cursor. Consulta Recorrer hacia atrás el historial de una cuenta.

Errores

Métodos relacionados

Historical Accounts Guide

Cómo funcionan las posiciones, la cobertura y lastUpdatedAt en los métodos de cuentas históricas

getHistoricalTokenAccountsByOwner

Enumera las cuentas de tokens de una billetera en un slot anterior

getTransactionsForAddress

Encuentra el slot y el transactionIndex de las transacciones que quieres inspeccionar

getAccountInfo

Lee el estado actual de una cuenta

Parámetros de la solicitud

string
requerido
Dirección de la cuenta que quieres leer, codificada en base 58.
number
Slot en el que se leerá el estado. Devuelve la cuenta tal como estaba al final de este slot. El primer slot compatible es 444959999, que corresponde al estado al inicio de la época 1030. Si se omite, lee el último slot indexado, limitado por el nivel de confirmación solicitado.
number
Posición de una transacción dentro del slot. Devuelve el estado de la cuenta inmediatamente después de que se ejecutó esa transacción, en lugar del estado al final del slot. Requiere slot.
string
predeterminado:"base64"
Formato de codificación de los datos de la cuenta. base58 y binary no son compatibles.
  • base64
  • base64+zstd
  • jsonParsed
object
Devuelve solo una sección de los datos de cada cuenta. Se aplica a las codificaciones base64 y base64+zstd.
number
requerido
Desplazamiento en bytes desde el que se comenzará a leer.
number
requerido
Número de bytes que se devolverán.
string
predeterminado:"finalized"
Nivel de confirmación. processed no es compatible.
  • finalized
  • confirmed
number
Slot mínimo en el que se puede evaluar la solicitud.

Autorizaciones

api-key
string
query
requerido

Tu clave de API de Helius. Puedes obtener una gratis en el panel.

Cuerpo

application/json
jsonrpc
enum<string>
predeterminado:2.0
requerido

La versión del protocolo JSON-RPC.

Opciones disponibles:
2.0
Ejemplo:

"2.0"

id
string
predeterminado:1
requerido

Un identificador único para la solicitud.

Ejemplo:

"1"

method
enum<string>
predeterminado:getHistoricalAccountInfo
requerido

Nombre del método RPC que se invocará.

Opciones disponibles:
getHistoricalAccountInfo
Ejemplo:

"getHistoricalAccountInfo"

params
(string | Consulta · object | Configuración · object)[]
requerido

Arreglo que contiene la dirección de la cuenta, un objeto de consulta opcional que selecciona la posición del historial y un objeto de configuración opcional.

Required array length: 1 - 3 elements

Dirección codificada en base 58 de la cuenta que se leerá.

Ejemplo:

"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"

Respuesta

El estado histórico de la cuenta se recuperó correctamente.

jsonrpc
enum<string>

La versión del protocolo JSON-RPC.

Opciones disponibles:
2.0
Ejemplo:

"2.0"

id
string

Identificador que coincide con la solicitud.

Ejemplo:

"1"

result
object