KIP-17 API
KIP-17은 Klaytn(Kaia의 전신)에서 정의한 NFT(Non-fungible Token) 컨트랙트 표준입니다. KAS는 KIP-17 토큰을 쉽게 생성하고 편리하게 관리할 수 있도록 KIP-17 API를 제공합니다. 이더리움의 ERC-721과 동일한 기능을 하면서 토큰 발행/소각 등의 기능 옵션을 확장했습니다. 토큰 발행/전송/소각 API일 경우 이더리움과 다르게 이벤트 로그를 필수적으로 남깁니다. KIP-17 API의 기능은 다음과 같습니다.
-
컨트랙트 배포
- 컨트랙트 목록 조회
- 컨트랙트 정보 조회
- 컨트랙트 정보 수정
-
토큰 발행
- 토큰 발행 내역 조회
- 토큰 정보 조회
-
토큰 전송
- 토큰 전송 권한 부여/해제
- 모든 토큰 전송 권한 부여/해제
- 토큰 소각
-
특정 소유자의 토큰 목록 조회
- 토큰 소유권 변경 내역 조회
컨트랙트 배포
주어진 파라미터를 기반으로 새로운 KIP-17 컨트랙트를 배포합니다. 컨트랙트 별칭(alias), 심볼, 이름을 입력한 후 API를 실행하면 배포 여부를 표시하는 상태값과 트랜잭션 해시를 반환합니다.
-
alias
KAS에서는 파라미터에서 컨트랙트 주소를 요구할 때 대신 사용할 별칭 기능을 제공합니다. 쉽게 기억할 수 있는 별칭을 지정하면 복잡한 컨트랙트 주소를 쓰지 않고도 API를 편리하게 호출할 수 있습니다.
-
symbol
배포할 컨트랙트 심볼입니다.
-
name
배포할 컨트랙트 이름입니다.
토큰 발행
배포한 컨트랙트를 활용해 새로운 토큰을 발행합니다. 컨트랙트 주소 또는 별칭을 입력해 컨트랙트를 지정할 수 있습니다. KIP-17 토큰은 KIP-17 컨트랙트를 활용해서만 발행할 수 있습니다. 발행한 토큰을 받을 컨트랙트 주소, 토큰 ID와 URI를 입력한 후 API를 실행하면 발행 여부를 표시하는 상태값과 트랜잭션 해시를 반환합니다.
-
to
발행할 토큰을 보관하는 계정입니다.
-
id
발행할 토큰의 ID입니다.
-
uri
발행할 토큰의 메타데이터를 저장할 URI입니다.
토큰 전송
발행한 토큰을 전송합니다. 컨트랙트 주소 또는 별칭을 입력해 컨트랙트를 지정할 수 있습니다. 토큰을 받을 컨트랙트 주소와 전송량을 입력한 후 API를 실행하면 전송 여부를 표시하는 상태값과 트랜잭션 해시를 반환합니다.
-
to
전송할 토큰을 수신하는 계정입니다.
-
amount
전송할 토큰의 양입니다.
API를 실행하며 입력한 파라미터는 KAS Console Service > KIP Series > KIP-17 > Contracts 페이지에 저장됩니다. KIP-17 API를 실행해보고 싶으신가요? 그렇다면 튜토리얼 문서를 읽고 따라해보세요. 각 기능별 API 레퍼런스는 KAS API Reference에서 확인할 수 있습니다.
KIP-17 표준에 대해 자세히 알고 싶다면 Klaytn Improvement Proposals를 참고하세요.