Skip to main content
A Wallet API está em Beta. Os endpoints e formatos de resposta podem mudar.

Visão Geral

O endpoint Histórico de Transações recupera o histórico completo de transações para uma carteira Solana usando a Enhanced Transactions API. Ele retorna transações analisadas e legíveis, com alterações de saldo para cada transação, em ordem cronológica inversa (mais recentes primeiro). O endpoint retorna até 100 transações por solicitação, então a paginação é manual. Use o parâmetro before com pagination.nextCursor para buscar a próxima página, e leia pagination.hasMore para saber quando mais resultados estão disponíveis. Cada solicitação é uma única chamada de API e custa 100 créditos. O parâmetro tokenAccounts controla se as transações envolvendo contas de token pertencentes à carteira são incluídas:
  • balanceChanged (recomendado): inclui transações que alteraram saldos de contas de token, filtrando spam.
  • none: apenas interações diretas com a carteira.
  • all: todas as transações de contas de token, incluindo spam.
O filtro tokenAccounts depende do campo owner nos metadados de saldo do token, que não estava disponível antes do slot 111.491.819 (~Dezembro de 2022). Transações envolvendo contas de token ativas antes deste slot podem estar ausentes. Veja o tutorial getTransactionsForAddress para uma solução alternativa.

Quando usar isto

Use a API de Histórico de Transações quando precisar:
  • Exibir um feed de transações: mostrar aos usuários seu histórico completo de transações.
  • Calcular PnL: rastrear ganhos e perdas em todas as transações.
  • Impostos e contabilidade: gerar relatórios completos de transações para declaração de impostos.
  • Análise de portfólio: analisar padrões de negociação e atividade.
  • Trilhas de auditoria: manter registros completos da atividade da carteira.
  • Reconstrução de saldo: reconstruir saldos atuais a partir de dados históricos.

Início Rápido

Consulta de histórico básico

Obtenha as transações mais recentes com alterações de saldo:

Paginação para histórico completo

Busque todas as transações usando paginação com o parâmetro before:

Parâmetros de consulta

Tipos de transação disponíveis

O parâmetro type suporta filtragem por esses tipos de transação: SWAP, TRANSFER, NFT_SALE, NFT_BID, NFT_LISTING, NFT_MINT, NFT_CANCEL_LISTING, TOKEN_MINT, BURN, COMPRESSED_NFT_MINT, COMPRESSED_NFT_TRANSFER, COMPRESSED_NFT_BURN, CREATE_STORE, WHITELIST_CREATOR, ADD_TO_WHITELIST, REMOVE_FROM_WHITELIST, AUCTION_MANAGER_CLAIM_BID, EMPTY_PAYMENT_ACCOUNT, UPDATE_PRIMARY_SALE_METADATA, ADD_TOKEN_TO_VAULT, ACTIVATE_VAULT, INIT_VAULT, INIT_BANK, INIT_STAKE, MERGE_STAKE, SPLIT_STAKE, CREATE_AUCTION_MANAGER, START_AUCTION, CREATE_AUCTION_MANAGER_V2, UPDATE_EXTERNAL_PRICE_ACCOUNT, EXECUTE_TRANSACTION

Exemplos de filtro

Formato da resposta

Notas sobre os campos

  • timestamp: segundos Unix. Pode ser null para transações muito recentes que ainda não foram totalmente processadas.
  • error: null para transações bem-sucedidas; um valor de erro para as falhas. Transações falhas ainda geram taxas.
  • balanceChanges: como as posses da carteira mudaram na transação — um amount positivo é tokens recebidos, um amount negativo é tokens enviados ou gastos.
  • mint (dentro de balanceChanges): endereço de mint dos tokens, ou "SOL" para SOL nativo.
  • amount (dentro de balanceChanges): legível, já dividido por decimals-0.05 significa -0,05 SOL, não -0,05 lamports. Este endpoint não inclui um campo amountRaw bruto.

Exemplo de alterações de saldo

Casos de uso

Calcular volume total de negociação

Some todas as transferências para obter o volume de negociação:

Gerar um relatório de impostos

Crie um relatório de transações para declaração de impostos:

Rastreamento de transações falhas

Encontre todas as transações falhas para entender erros:

Reconstruir um saldo histórico

Calcule qual era o saldo em um ponto específico no tempo:
Para o saldo exato de um único token em um ponto no tempo, o endpoint Saldo Histórico lê diretamente dos pós-saldos on-chain em vez de somar as alterações no lado do cliente.

Analisar taxas de transação

Calcule as taxas totais pagas:

Melhores práticas

  • Use paginação para o histórico completo. Algumas carteiras têm centenas de milhares de transações; sempre faça paginação ao buscá-las.
  • Cacheie dados históricos. Transações históricas nunca mudam. Armazene-as localmente em cache e busque apenas transações novas.
  • Maneje transações falhas. Verifique o campo error para diferenciar transações bem-sucedidas de falhas. Transações falhas ainda geram taxas.
  • Use timestamps para filtragem por data. Timestamps estão em segundos Unix. Converta para datas locais para exibição e filtragem.

Erros comuns

Próximos passos

Transferências de Tokens

Uma visão somente de transferências com informações de remetente/destinatário — mais simples que o histórico completo.

Visão Geral da Wallet API

Todos os endpoints da Wallet API e convenções compartilhadas.

Referência de API

Esquemas de solicitação e resposta para histórico de transações.