🙌

thirdwebで有効期限のついた「time-bound NFTs」を作ってみよう!

2022/11/24に公開

こんにちは、CryptoGamesの高橋です。

今日はthirdwebを用いて、「time-bound NFTs」を作ってみましょう。

これはチケットや証明書などで想定されている、有効期限がついたNFTです。

では、さっそくやっていきましょう。

1 コントラクトを作成する

まずは、下のthirdwebのページに行きます。
https://thirdweb.com/unlock-protocol.eth/PublicLock

「Deploy Now」を選択します。

画像のように、項目を設定していきます。

有効期限の設定が肝の部分だと思います。

2 Unlockプロトコル上で確認を行う

コントラクトができましたら、Unlockプロトコルのページに行きます。

内容確認の上、問題なければ登録を行ってください。
https://unlock-protocol.com/

「Launch App」へ進みます。

ウォレット接続を行うと、画像のように、先ほど作成したコントラクトが表示されました。

3 Unlockプロトコル上で配布を行う

画像のように、受取人などを設定の上、「Add recipient」を選択

画像のように追加されたことを確認の上、「Confirm Airdrop」を選択

これで、配布ができました。

4 Unlockプロトコル上の表示

配布はできましたが、画像のように、表示上、うまくいかないことがありました。

原因はわかりませんが、少し経つと、このように正常に表示されました。

5 OpenSeaで確認する

今回はGoerliというテストネットで作成したので、OpenSeaのテストネットで確認を行います。
https://testnets.opensea.io/

OpenSeaに出てすぐは、画像の「Dates」が出ていないと思うので「Refresh metadata」を押して、URLを更新します。

すると、画像のように「Dates」に有効期限が設定されました。

6 thirdwebで確認する

thirdwebでも確認してみましょう。

「Explorer」から「keyExpirationTimestampFor」で、画像のように確認ができます。

「timestamp」の値を下のように、みやすい値に変換すると、無事1ヶ月後を指定していました。

https://www.bad-company.jp/timestamp

「TokenURI」からも確認してみましょう。

下のように、TokenURIを取得します。

メタデータを確認すると、下のように、タイムスタンプが設定されていました。

今回は以上です。

ぜひやってみてください。

Discussion