메인 콘텐츠로 건너뛰기
SuperEarn 서브그래프는 EarnUSDT 포트폴리오와 쿨다운/리딤션 흐름을 조회하기 위한 표준 GraphQL API입니다. 주요 사용처는 다음과 같습니다.
  • 포트폴리오 뷰: 총자산, 지분 가격, 포지션, 이동 중 자산 파악
  • 사용자 포지션: 예치/리딤 내역, 대기 중 출금 요청, EarnUSDT 잔액
  • 운영 모니터링: 전략별 배분, 크로스체인 대기 큐, 브릿지 경로상의 자산

1. 엔드포인트

최신 엔드포인트/네임스페이스는 배포 노트나 smart-contracts.mdx의 주소 섹션을 참고하세요.
일반적으로 Kaia 메인넷 서브그래프를 조회합니다. 원격 체인(Ethereum 등) RemoteVault 데이터도 노출됩니다.

2. 주요 엔티티

SuperVault

  • EarnUSDT를 뒷받침하는 집계 볼트(Kaia).
  • 필드 예시: id, totalAssets, pricePerShare, strategies, pendingRedemptions.

CooldownVault

  • 입·출금 큐 모델을 담당.
  • 필드 예시: pendingWithdrawals, cooldownPeriod, lossLimitBps.

OriginVault

  • 크로스체인 허브(Kaia).
  • 필드 예시: assetsInTransit, pendingDeposits, pendingWithdrawals.

RemoteVault

  • 원격 체인 집계 볼트(Ethereum 등).
  • 필드 예시: totalAssets, idleAssets, pendingWithdrawals, chainId.

UserPosition

  • 사용자별 EarnUSDT 잔액, 예치/리딤 이력, 대기 요청.

RedemptionRequest

  • 사용자 리딤션 요청(쿨다운 포함).
  • 필드 예시: id, user, shares, assetsRequested, cooldownEndsAt, status.

3. 쿼리 예시

3.1 EarnUSDT 지분 가격과 총자산

{
  superVault(id: "<SUPER_VAULT_ADDRESS>") {
    id
    totalAssets
    pricePerShare
    strategies {
      id
      debtRatio
      totalDebt
    }
  }
}

3.2 사용자 포지션과 대기 중 리딤션

{
  userPosition(id: "<USER_ADDRESS>") {
    id
    earnUSDTBalance
    deposits(orderBy: timestamp, orderDirection: desc, first: 5) {
      amount
      sharesMinted
      timestamp
    }
    redemptions(orderBy: timestamp, orderDirection: desc, first: 5) {
      shares
      assetsRequested
      status
      cooldownEndsAt
    }
  }
}

3.3 크로스체인 큐 상태(Origin / Remote)

{
  originVault(id: "<ORIGIN_VAULT_ADDRESS>") {
    id
    assetsInTransit
    pendingDeposits {
      amount
      destinationChainId
    }
    pendingWithdrawals {
      amount
      destinationChainId
    }
  }
  remoteVaults {
    id
    chainId
    totalAssets
    idleAssets
    pendingWithdrawals {
      amount
      cooldownEndsAt
    }
  }
}

4. 베스트 프랙티스

  • 지분 가격 모델: EarnUSDT는 리베이스하지 않으므로 pricePerShare를 곱해 가치 계산.
  • 쿨다운 표시: cooldownEndsAt 기반 예상 완료 시간을 UI에 노출.
  • 대기 큐 감시: pendingWithdrawals/assetsInTransit로 유동성 상황을 표시.
  • 체인 식별: chainId 필드로 원격 체인 구분.
  • 페이지네이션: 대량 이력을 조회할 때 skip/first를 사용.

5. 문제 해결

  • 값이 보수적으로 보이는 경우: 크로스체인 스냅샷 덕분에 이동 중 자산을 이중 계산하지 않도록 설계되어 있어, 짧은 기간 동안 보수적으로 표시될 수 있습니다.
  • 최신 스키마/필드는 배포 노트나 레포의 서브그래프 폴더를 확인하세요.