커스텀 NFT
커스텀 NFT란?
NFT 커스텀 컨트랙트 배포 신청 API를 이용하면 여러 옵션을 선택하여 원하는 형태의 NFT 컨트랙트를 배포할 수 있습니다.
현재 EVM 계열 플랫폼을 지원합니다.
권한 시스템
지원되는 권한 시스템은 다음과 같습니다.
권한 | 내용 |
---|---|
OWNABLE | 관리자가 모든 권한을 가집니다. |
ROLES | 각 기능 별 권한을 분리할 수 있습니다. |
Ownable
관리자가 컨트랙트에 대한 모든 권한을 가집니다. 해당 오너쉽은 NFT Contract Method Execution 신청 API를 이용하여 이관할 수 있습니다. (transferOwnership
)
Roles
권한을 기능 별로 분리할 수 있습니다. NFT Contract Method Execution 신청 API를 이용하여 각 권한을 부여하거나 해제할 수 있습니다. (grant
, revoke
)
NFT 기능
아래와 같은 NFT 기능을 활성화할 수 있습니다.
기능 | 내용 |
---|---|
[공통] | |
| NFT 소유자가 자신의 NFT를 소각할 수 있습니다. |
| 관리자가 특정 NFT를 소각할 수 있습니다. |
| 관리자가 컨트랙트를 중지시킬 수 있습니다. ( |
| 관리자가 NFT를 발행할 수 있습니다. |
| 관리자가 같은 종류의 NFT를 여러 주소에게 발행할 수 있습니다. |
[ERC-721] | |
| 모든 NFT 리스트를 블록체인 상에서 확인할 수 있습니다. |
| NFT를 발행할 때마다 URI를 입력받고 연결시킵니다. |
| NFT 아이템의 번호를 0번부터 순차적으로 부여합니다. |
[ERC-1155] | |
| 토큰아이디 별 총 발행량을 확인할 수 있습니다. |
| 관리자가 URI를 수정할 수 있습니다. |
요청 예시
curl --request POST \
--url https://{{apiEndpoint}}/2.0/wallets/55/nfts/contracts/custom-deployments \
--header 'Authorization: Bearer ' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"contractSpec": "ERC721",
"nftRoleSystem": "ownable",
"nftFeatures": [
"MINTABLE",
"BURNABLE",
"OWNER_BURNABLE"
],
"requestId": "random-string",
"contractName": "test",
"tokenSymbol": "TEST",
"senderAddress": "0x3840a99FFB6A6c85CEB5697EEC0C55b1734baDaC"
}
'
응답 예시
{
"uuid": "745dc90f-8888-46f9-a9b5-a65ea5073d45"
}
Updated 21 days ago