메타 정보 조회

이 페이지는 Node API - Metadata API로 토큰(FT, NFT) 컨트랙트, NFT 정보를 조회하는 방법을 안내합니다.

튜토리얼에 앞서

  • API 호출에 사용되는 x-chain-id 값은 8217(Cypress) 또는 1001(Baobab)입니다.

  • API 호출에 필요한 필수 파라미터는 각 예시에 설명됩니다.

API 호출 시 사용자가 입력해야 하는 값은 중괄호 1개({})로 표시합니다. 사용자가 입력해야 하는 값은 아래 테이블과 같습니다.

항목

비고

chain-id

8217 또는 1001

Cypress(Klaytn 메인넷) 또는 Baobab(Klaytn 테스트넷)

access-key-id

인증 아이디

KAS 콘솔 - Security - Credential에서 발급받은 accessKeyId

secret-access-key

인증 비밀번호

KAS 콘솔 - Security - Credential에서 발급받은 secretAccessKey

krn

(optional) 계정 저장소의 ID

기본 계정 저장소 사용 시 불필요

API 인증 키가 있으면 모든 KAS 서비스를 사용할 수 있으며 Wallet API를 호출해 만든 Klaytn 계정에 대한 모든 권한을 소유합니다. 모든 권한에는 Klaytn 계정의 자산(KLAY 등) 이동이나 트랜잭션 전송 및 실행 권한이 포함됩니다. 만약 API 인증 키에 타인이 접근한다면 Klaytn 계정 권한을 탈취당해 원치 않는 트랜잭션이 발생할 수 있습니다.

Klaytn Node에서 Klaytn 계정 정보를 확인하려면 계정 저장소와 계정을 생성하고 사용할 계정을 선택해야 합니다. 계정 저장소 생성, 계정 생성, 계정 선택에 관한 자세한 내용은 Getting Started를 확인하십시오.

Klaytn Node - Metadata API는 SDK(caver-js, caver-java)를 지원하지 않습니다.

이 문서 혹은 KAS에 관한 문의는 개발자 포럼을 방문해 도움을 받으십시오.

FT 컨트랙트 정보 조회

FT 컨트랙트란 클레이튼에 배포되는 스마트 컨트랙트의 일종입니다. 이 컨트랙트는 대체 가능 토큰(Fungible Token, FT)을 발행, 삭제, 전송하는 기능을 제공합니다.

조회할 FT 컨트랙트는 반드시 ERC-20 또는 KIP-7 표준을 지켜야 하며 name(), symbol(), decimals() 함수들을 반드시 미리 구현해야합니다. 반드시 미리 구현해야 할 함수에 관한 더 자세한 정보는 ERC-20, KIP-7를 확인하십시오.

API 호출

curl --location --request GET "https://node-api.klaytnapi.com/v2/metadata/ft/0x3b3b30a76d169f72a0a38ae01b0d6e0fbee3cc2e" \
    --header "x-chain-id: {chain-id}" \
    -u {access-key-id}:{secret-access-key}

컨트랙트가 클레이튼상에 없다면 컨트랙트 주소를 제외한 모든 응답값은 빈 문자열 또는 0/-1입니다. ERC-20/KIP-7 표준을 따르지 않으면 컨트랙트에 따라 다른 응답값이 반환됩니다. 필수 함수를 구현하지 않으면 응답값에서 해당 함수가 채워주는 필드들은 빈 문자열 또는 0/-1입니다.

API 응답

{
    "address": "0x3b3b30a76d169f72a0a38ae01b0d6e0fbee3cc2e",
    "decimals": 18,
    "name": "TEMCO",
    "symbol": "TEMCO",
    "totalSupply": "0x1363156bbee3016d70000000"
}

이 API에 관한 자세한 내용은 다음을 확인하십시오. 이 문서 혹은 KAS에 관한 문의는 개발자 포럼을 방문해 도움을 받으십시오.

NFT 컨트랙트 정보 조회

NFT 컨트랙트란 클레이튼에 배포되는 스마트 컨트랙트의 일종입니다. 이 컨트랙트는 대체 불가 토큰(Non-Fungible Token, NFT)을 발행, 삭제, 전송하는 기능을 제공합니다.

조회할 NFT 컨트랙트는 반드시 ERC-721 또는 KIP-17 표준을 지켜야 하며 name(), symbol(), totalSupply() 함수들을 반드시 미리 구현해야합니다. 반드시 미리 구현해야 할 함수에 관한 더 자세한 정보는 ERC-721, KIP-17을 확인하십시오.

API 호출

curl --location --request GET "https://node-api.klaytnapi.com/v2/metadata/nft/0x369611bc873b38175b91d6cc8c4018bdd3068b86" \
    --header "x-chain-id: {chain-id}" \
    -u {access-key-id}:{secret-access-key}

컨트랙트가 클레이튼상에 없다면 컨트랙트 주소를 제외한 모든 응답값은 빈 문자열 또는 0/-1입니다. ERC-721/KIP-17 표준을 따르지 않으면 컨트랙트에 따라 다른 응답값이 반환됩니다. 필수 함수를 구현하지 않으면 응답값에서 해당 함수가 채워주는 필드들은 빈 문자열 또는 0/-1입니다.

API 응답

API가 성공적으로 실행되면 다음과 같은 응답을 받습니다.

{
    "address": "0x369611bc873b38175b91d6cc8c4018bdd3068b80",
    "name": "Test NFT",
    "symbol": "TNC",
    "totalSupply": "0x86"
}

이 API에 관한 자세한 내용은 다음을 확인하십시오. 이 문서 혹은 KAS에 관한 문의는 개발자 포럼을 방문해 도움을 받으십시오.

NFT 정보 조회

NFT 정보를 조회합니다. NFT 컨트랙트란 클레이튼에 배포되는 스마트 컨트랙트의 일종입니다. 이 컨트랙트는 대체 불가 토큰(Non-Fungible Token, NFT)을 발행, 삭제, 전송하는 기능을 제공합니다.

정보를 불러오려는 NFT의 토큰 ID값과 이 NFT를 발행한 NFT 컨트랙트 주소값을 입력하고 정보를 불러옵니다. 이 NFT 컨트랙트는 반드시 ERC-721 또는 KIP-17 표준을 지켜야 하며, 올바른 정보 반환을 위해 tokenUri() 함수를 반드시 구현해야합니다.

API 호출

curl --location --request GET "https://node-api.klaytnapi.com/v2/metadata/nft/0x369611bc873b38175b91d6cc8c4018bdd3068b80/0x1" \
    --header "x-chain-id: {chain-id}" \
    -u {access-key-id}:{secret-access-key}
  • 조회하려는 NFT를 발행한 NFT 컨트랙트 주소값 0x369611bc873b38175b91d6cc8c4018bdd3068b80은 예시값입니다.

  • 조회하는 토큰 ID값 0x1은 예시값입니다.

API 응답

API가 성공적으로 실행되면 다음과 같은 응답을 받습니다.

{
    "uri": "https://media.nft.com/card_asset/165616/cced4c1b-6407-45a4-b6d9-ec040870df5e.json",
    "owner": "0x3cb01b8f935069b3f3d57cff07be4e4c09164f71"
}

이 API에 관한 자세한 내용은 다음을 확인하십시오. 이 문서 혹은 KAS에 관한 문의는 개발자 포럼을 방문해 도움을 받으십시오.

Last updated

Was this helpful?