KTHULU DOCS
  • 소개
    • 크툴루 소개
    • 스캐너 소개
  • 크툴루 가이드
    • 이용 가이드
      • 다운로드 및 계정 생성
      • 컬렉션 및 NFT 조회
      • NFT 전송
      • 계정 활동
  • 크툴루 개발가이드
    • Quick Start
    • WEB, APP SDK 개발 가이드
      • 계정 생성
      • 계정 복원
      • 계정 정보 조회
      • 지갑 모드
      • 가스비 추정
      • 트랜잭션 상태 확인
      • 토큰 발행
      • 토큰 정보 조회
      • 토큰 목록 조회
      • 토큰 잔고 조회
      • 토큰 거래내역
      • 토큰 전송
      • 토큰 승인
      • 토큰 스왑
      • 토큰 브릿지
      • NFT 컬렉션 생성
      • NFT 민트 (발행)
      • NFT 다중민트 (발행)
      • NFT 조회
      • NFT 거래내역
      • NFT 총발행량
      • NFT 전송
      • NFT 다중전송
      • NFT 소각
      • NFT 숨김
      • NFT 숨김 조회
      • NFT 브릿지
      • NFT 스캠방지
    • Scanner APP SDK 개발 가이드
      • NFT 홀더인증(서명)
      • NFT 홀더인증(검증)
      • NFT 홀더인증(확인)
    • 블록체인 End-Point
      • Ethereum
      • Klaytn
      • Polygon
      • BNB
    • 블록체인 스캐너(Crawler) 로직
      • crawler_table
      • nft_collection_table
      • nft_owner_table
      • nft_token_table
      • nft_transaction_table
      • nft_hide_table
      • nodes_table
      • statistics_table
      • token_owner_table
      • token_table
      • token_transfer_table
      • users_table
      • Crawler Flow
  • 모니터링
    • 모니터링24
  • 고객센터
    • 문의 및 제안
  • 공지사항
    • 공지사항
      • Kthulu App
      • Live Scanner
      • Blockchain Node
    • 릴리즈 노트
  • 크툴루 약관
    • 개인정보처리방침
    • 서비스이용약관
  • 스캐너 약관
    • 개인정보처리방침
    • 서비스이용약관
  • 참조
    • 매뉴얼
      • Live Scanner 운영자 메뉴얼
    • SW사양서
      • Kthulu SDK
      • Live Scanner(Crawler)
Powered by GitBook
On this page
  • 테이블 개요
  • 컬럼 정의
  • minted_time
  • token_uri
  • ipfs
  • token_info
  1. 크툴루 개발가이드
  2. 블록체인 스캐너(Crawler) 로직

nft_token_table

테이블 개요

NFT에 대한 상세정보 테이블입니다. 토큰 및 컬렉션 아이디, 토큰 이름 등의 기본적인 정보부터 image, attribute 등 tokenURI를 통해 가져온 metadata를 파싱한 컬럼들까지, '대체불가능한' 각 토큰의 주요 특징을 담고 있습니다.

컬럼 정의

컬럼명
설명

network collection_id token_id nft_type

토큰의 주요정보입니다. network = [ethereum, klaytn, polygon, bnb]

nft_name external_url image_url s3_image_url token_uri

token_info의 key를 파싱하여 가져옵니다.
 ex) token_info = {name: “ABC”, tags: “ABC” …}

block_number

해당 NFT에 대한 정보가 수집된 블럭의 번호를 의미합니다.

minted_time

해당 NFT가 발행(민트)된 시간을 의미합니다.

token_uri

토큰 URI를 의미합니다.

ipfs

탈중앙화 여부를 의미합니다.

token_info

해당 NFT의 metadata를 의미합니다.

minted_time

대부분의 토큰 민트 트랜잭션은 from 주소가 null address인 특징을 갖고 있습니다(민트함수를 새로 정의했거나, 인터널트랜잭션을 사용한 경우 등 예외있음). 크롤러는 민트 트랜잭션을 가려내 해당 트랜잭션이 발생한 시간을 'minted_time' 컬럼에 insert하고 있습니다.

token_uri

NFT는 tokenURI를 반환하는 메소드를 포함합니다. 기본적으로 tokenURI()를 호출하여 가져올 수 있습니다. *ERC721/1155 표준이므로 항상 있는것은 아닙니다. *721은 tokenURI(), 1155는 uri()로 정의합니다.

ipfs

ipfs(탈중앙화 저장소) 여부를 체크합니다. 아래와 같은 절차를 따릅니다. tokenURI 확인 > 메타데이터 image_url 확인 > tokenURI 및 image_url 주소에 ipfs를 포함하는지 확인 *최근 'arweave'를 이용하는 경우도 많아졌기에, 로직에 추가했습니다.

token_info

tokenURI는 정해진 규격이 없기 때문에 토큰마다 제각각 다른 형식으로 보입니다. 예를 들면 https://와 같은 프로토콜을 생략하는 경우가 있는데, 이런 경우 tokenURI에 접근할 수 없어 token_info 즉, metadata를 가져올 수 없습니다. 크롤러는 이러한 상황에서도 정상적으로 token_info를 받을 수 있게 설계되어 있습니다. metadata(token_info)는 기본적으로 json 형식을 지켜야 하기때문에 크롤러는 해당 부분을 철저하게 검증합니다.

Previousnft_owner_tableNextnft_transaction_table

Last updated 1 year ago