Wallet API는 베타 버전입니다. 엔드포인트 및 응답 형식이 변경될 수 있습니다.
개요
Transaction History 엔드포인트는 Enhanced Transactions API를 사용하여 Solana 지갑의 전체 거래 기록을 검색합니다. 이는 최신 거래부터 역순으로 각 거래의 잔액 변화를 포함한 사람이 읽을 수 있는 파싱된 거래를 반환합니다. 엔드포인트는 요청당 최대 100개의 거래를 반환하므로 페이지 매김은 수동입니다. 다음 페이지를 가져오려면before 매개변수를 pagination.nextCursor와 함께 사용하고, 더 많은 결과가 있는지 알아보려면 pagination.hasMore를 읽으세요. 각 요청은 단일 API 호출이며 100 크레딧이 소모됩니다.
tokenAccounts 매개변수는 지갑이 소유한 토큰 계정과 관련된 거래가 포함될지 여부를 제어합니다:
balanceChanged(권장): 스팸을 필터링하여 토큰 계정 잔액을 변경한 거래 포함.none: 직접적인 지갑 상호작용만 포함.all: 스팸을 포함한 모든 토큰 계정 거래.
사용 시기
Transaction History API를 사용해야 할 경우:- 거래 피드 표시: 사용자에게 전체 거래 기록을 보여줍니다.
- 손익 계산: 모든 거래의 수익 및 손실을 추적합니다.
- 세금 및 회계: 세금 신고를 위한 전체 거래 보고서를 생성합니다.
- 포트폴리오 분석: 거래 패턴 및 활동을 분석합니다.
- 감사 추적: 지갑 활동의 완전한 기록을 유지합니다.
- 잔액 재구성: 과거 데이터를 통해 현재 잔액을 재구성합니다.
빠른 시작
기본 기록 조회
잔액 변화를 포함한 가장 최근 거래 가져오기:- JavaScript
- Python
- cURL
전체 기록에 대한 페이지 매김
before 매개변수와 함께 페이지 매김을 사용하여 모든 거래를 가져오세요:
- JavaScript
- Python
쿼리 매개변수
사용 가능한 거래 유형
type 매개변수는 다음 거래 유형별 필터링을 지원합니다:
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
필터 예제
- 유형별 필터
- 토큰 계정 필터
- 결합 필터
응답 형식
필드 노트
timestamp: Unix 초. 아직 완전히 처리되지 않은 매우 최근의 거래에는null가 있을 수 있습니다.error: 성공적인 거래에는null; 실패한 경우 오류 값이 있습니다. 실패한 거래도 수수료가 부과됩니다.balanceChanges: 거래에서 지갑 보유량이 변경된 방식 — 양수amount는 받은 토큰, 음수amount는 전송되거나 사용된 토큰입니다.mint(balanceChanges내): 토큰 민트 주소 또는 네이티브 SOL의 경우"SOL".amount(balanceChanges내): 사람이 읽을 수 있는 형식으로 이미decimals로 나누어져 있습니다 —-0.05는 −0.05 SOL를 의미하지 −0.05 lamports를 의미하지 않습니다. 이 엔드포인트는 원래amountRaw필드를 포함하지 않습니다.
잔액 변경 예제
사용 사례
총 거래량 계산
모든 전송을 합산하여 거래량을 계산하세요:세금 보고서 생성
세금 신고를 위한 거래 보고서를 만드세요:실패한 거래 추적
실패한 거래를 찾아 오류를 이해하세요:과거 잔액 재구성
특정 시점의 잔액을 계산하세요:거래 수수료 분석
지불한 총 수수료를 계산하세요:모범 사례
- 전체 기록을 위한 페이지 매김 사용. 일부 지갑에는 수십만 건의 거래가 있으므로 모든 거래를 가져올 때 항상 페이지 매김을 사용하세요.
- 역사 데이터 캐시. 과거 거래는 변경되지 않습니다. 로컬에 캐시하고 새 거래만 가져오세요.
- 실패한 거래 처리.
error필드를 확인하여 성공 여부를 구분하세요. 실패한 거래도 수수료가 부과됩니다. - 날짜 필터링을 위한 타임스탬프 사용. 타임스탬프는 Unix 초로 제공됩니다. 표시 및 필터링을 위해 로컬 날짜로 변환하세요.
일반적인 오류
다음 단계
토큰 전송
발신자/수신자 정보를 포함한 전송 전용 보기 — 전체 기록보다 간단합니다.
Wallet API 개요
모든 Wallet API 엔드포인트 및 공유 관례.
API 참조
거래 기록에 대한 요청 및 응답 스키마.