Skip to main content
Enhanced Transactions API는 유지 모드의 레거시 제품입니다. 여전히 작동하며 이 페이지들은 사용 가능하지만 새로운 파서 유형 또는 기능 작업을 받지는 않습니다. 후속 제품은 Parsed Events로 IDL 카탈로그를 통해 명령어를 디코딩하며 클로즈드 베타 상태입니다. 거래 내역 및 백필을 위해 getTransactionsForAddress를 사용할 수 있으며, 사람이 읽을 수 있는 지갑 데이터를 위해 Wallet API를 사용할 수 있습니다.

개요

Transaction History 엔드포인트는 어떤 Solana 주소에 대한 사람이 읽을 수 있는 거래 내역을 반환합니다. 원시 명령어 데이터 및 계정 목록을 다루는 대신 다음과 같은 구조화된 정보를 제공합니다:
  • 거래에서 발생한 내용(전송, 스왑, NFT 활동).
  • 관련된 계정.
  • 전송된 SOL 또는 토큰의 양.
  • 관련 메타데이터(토큰 민트 주소, 토큰 이름, 토큰 심볼 등).
GET 요청을 /v0/addresses/{address}/transactions로 보내십시오. 이 엔드포인트는 getTransactionsForAddress RPC 메소드에 의해 지원됩니다.

사용할 때

  • 사용자에게 주소의 거래 내역을 표시할 때(지갑, 포트폴리오 트래커, 탐색기).
  • 자체 디코더를 작성하지 않고 사전 파싱된 사람이 읽을 수 있는 내역이 필요할 때.
  • 거래 유형, 시간 범위 또는 슬롯 범위로 내역을 필터링해야 할 때.
  • 관련 토큰 계정(ATA)을 포함하여 지갑의 전체 토큰 내역이 필요할 때 — 아래를 참조하십시오.
새 빌드에서는 서버 측 필터링 및 토큰 계정 조회가 가능한 현대적인 getTransactionsForAddress가 Helius 네이티브 경로입니다.

빠른 시작

1

API 키 받기

dashboard.helius.dev에 가입하고 API 키를 복사하세요.
2

주소 거래 엔드포인트 가져오기

어떤 Solana 주소의 거래 내역을 검색하세요.
3

필터링 및 페이지 매김

아래의 type, 시간 및 슬롯 필터로 결과를 좁히고 서명 커서를 통해 높은 볼륨의 주소를 페이지 매김하세요.

네트워크 지원

요청 파라미터

시간 기반 필터링

슬롯 기반 필터링

필터링 노트:
  • 시간 매개변수는 Unix 타임스탬프(초 단위), 슬롯 매개변수는 Solana 슬롯 번호를 사용합니다.
  • 동일한 요청에서 시간 기반 및 슬롯 기반 필터를 결합할 수 없습니다.
  • sort-order=asc는 오름차순(가장 오래된 첫 번째), sort-order=desc는 내림차순(가장 최근 첫 번째)을 사용하십시오.
  • 대략적인 기간을 알고 있을 때 시간 또는 슬롯 필터를 사용하여 검색 범위를 줄이고, limit와 함께 사용하여 페이지 크기를 제어하세요.

관련 토큰 계정

Solana에서 지갑은 직접적으로 토큰을 보유하지 않습니다. 대신 지갑은 토큰 계정을 소유하며, 해당 토큰 계정이 토큰을 보유합니다. 누군가가 USDC를 보내면, 이는 메인 지갑 주소가 아닌 USDC 토큰 계정으로 갑니다. 이 엔드포인트는 관련 토큰 계정(ATA)를 포함한 지갑의 전체 토큰 내역을 쿼리할 수 있기 때문에 독특합니다. getSignaturesForAddress와 같은 기본 RPC 메서드는 ATA를 포함하지 않습니다. token-accounts 필터는 이 동작을 제어합니다:
  • none (기본값) — 지갑 주소를 직접 참조하는 거래만 반환합니다. 직접적인 지갑 상호작용만 관심이 있을 때 사용하세요.
  • balanceChanged (권장) — 지갑 주소를 참조하거나 지갑이 소유한 토큰 계정의 잔액을 수정하는 거래를 반환합니다. 스팸 및 수수료 수집 또는 위임과 같은 관련 없는 작업을 제거하여 의미 있는 지갑 활동의 깨끗한 보기를 제공합니다.
  • all — 지갑 주소나 지갑이 소유한 모든 토큰 계정을 참조하는 모든 거래를 반환합니다.
token-accounts 필터는 토큰 잔액 메타데이터의 owner 필드에 의존하며, 이는 슬롯 111,491,819 (~2022년 12월) 이전에는 사용할 수 없었습니다. 이 슬롯 이전에 활성화된 토큰 계정과 관련된 거래는 balanceChangedall 결과에서 누락될 수 있습니다. 전체 코드 예제를 포함한 우회 방법은 getTransactionsForAddress tutorial를 참조하세요.

필터

거래 유형별 필터링

NFT 판매, 토큰 전송 또는 스왑 등의 특정 거래 유형만 가져옵니다:
지원되는 거래 유형의 전체 목록은 Transaction History API reference를 참조하십시오.

런타임 유형 필터링

유형 필터링은 런타임에 발생합니다: API는 최소 50개의 일치 항목을 찾을 때까지 거래를 순차적으로 검색합니다. 검색 창 내에서 일치 항목을 찾지 못하면 검색을 계속할 수 있도록 서명과 함께 오류를 반환합니다. 이는 정상적인 동작이며 실패가 아닙니다.
현재 검색 창 내에서 일치하는 거래를 찾지 못하면 API는 다음과 같은 오류 응답을 반환합니다:
계속하려면 오류 메시지에서 서명을 사용하여 다음 요청에 적절한 매개변수(before-signature는 내림차순, after-signature는 오름차순)를 사용하세요.
주요 사항:
  • 유형 필터를 사용할 때 API는 한 번에 최대 50개의 거래를 검색합니다.
  • 일치 항목이 없으면 오류 메시지의 서명을 사용하여 검색을 계속하세요.
  • 내림차순으로 검색할 때는(before-signature 기본값, 가장 최근 것이 첫 번째) 사용합니다.
  • 오름차순으로 검색할 때는(after-signature, 가장 오래된 것이 첫 번째 — 순차적 검색에 필요) 사용합니다.
  • 무한 루프를 방지하기 위해 최대 재시도 제한을 구현하세요.

예시

다음 시나리오는 시간 및 슬롯 범위, 정렬 순서, ATA 및 결합 필터를 다룹니다.
특정 시간 창 내의 거래 가져오기:
특정 슬롯 범위 내의 거래 가져오기:
오름차순으로 거래 가져오기(가장 오래된 것부터):
연관된 토큰 주소(ATA)를 포함한 지갑의 전체 기록을 쿼리합니다:
거래 유형 필터링을 시간 범위 및 사용자 지정 정렬 순서와 결합하십시오:

페이지 매김

고용량 주소의 경우 각 배치에서 마지막 서명을 커서로 사용하여 결과를 페이지 매김하십시오:
시간 범위 내에서 페이지를 매길 때는 각 요청에 시간 필터를 유지하고 각 루프에 before-signature 커서를 진행하십시오:

다음 단계

getTransactionsForAddress

현대적이고 Helius 네이티브 거래 내역 및 백필의 대안입니다.

Wallet API

잔액, 내역 및 전송에 대한 사람이 읽을 수 있는 지갑 데이터에 대한 REST 엔드포인트입니다.

Parse Transactions

하나 이상의 거래 서명을 사람이 읽을 수 있는 데이터로 파싱합니다.

Getting Data overview

Solana 데이터를 쿼리하기 위한 모든 Helius 옵션을 비교합니다.