利用可能なガード

Gatekeeperガード

概要

Gatekeeperガードは、ミントを行うウォレットが指定されたGatekeeper Networkから有効なGateway Tokenを持っているかどうかを確認します。

ほとんどの場合、このトークンはCaptchaチャレンジを完了した後に取得されますが、任意のGatekeeper Networkを使用できます。

Core Candy Machine側で設定することはあまりありませんが、選択したGatekeeper Networkによっては、必要なGateway Tokenを付与するために、ミントを行うウォレットに事前検証チェックを実行するよう求める必要がある場合があります。

Gatekeep Networkを設定する際に役立つ追加の推奨資料をいくつか紹介します。

ガード設定

Gatekeeperガードには以下の設定が含まれます:

  • Gatekeeper Network: ミントを行うウォレットの有効性を確認するために使用されるGatekeeper NetworkのPublic Key。たとえば、「Civic Captcha Pass」Network(ミントを行うウォレットがCaptchaを通過したことを確認する)を使用する場合は、次のアドレスを使用できます: ignREusXmGrscGNUesoU9mxfds9AiYTezUKex2PsZV6
  • Expire On Use: NFTがミントされた後、ミントを行うウォレットのGateway Tokenを期限切れとしてマークするかどうか。
    • trueに設定すると、別のNFTをミントするには、再度Gatekeeper Networkを通過する必要があります。
    • falseに設定すると、Gateway Tokenが自然に期限切れになるまで別のNFTをミントできます。

Gatekeeperガードを使用してCore Candy Machineをセットアップする

create(umi, {
// ...
guards: {
gatekeeper: some({
network: publicKey("ignREusXmGrscGNUesoU9mxfds9AiYTezUKex2PsZV6"),
expireOnUse: true,
}),
},
});

APIリファレンス: create, Gatekeeper

ミント設定

Gatekeeperガードは以下のミント設定を受け入れます:

  • Gatekeeper Network: ミントを行うウォレットの有効性を確認するために使用されるGatekeeper NetworkのPublic Key。
  • Expire On Use: NFTがミントされた後、ミントを行うウォレットのGateway Tokenを期限切れとしてマークするかどうか。
  • Token Account (オプション): 免責事項として、この設定を提供する必要があることは非常にまれですが、必要な場合に備えてここにあります。これは、支払者とGatekeeper Networkから派生したGateway Token PDAを参照し、支払者がミントする資格があるかどうかを確認するために使用されます。このPDAアドレスはSDKによって推論できるため、提供する必要はありません。ただし、一部のGatekeeper Networkは同じウォレットに複数のGateway Tokenを発行する場合があります。PDAアドレスを区別するために、デフォルトで[0, 0, 0, 0, 0, 0, 0, 0]であるSeeds配列を使用します。

SDKを使用せずに手動で命令を構築する場合は、これらのミント設定などを命令の引数と残りのアカウントの組み合わせとして提供する必要があることに注意してください。詳細については、Candy Guardのプログラムドキュメントを参照してください。

Gatekeeperガードを使用してミントする

GatekeeperガードのMint Settingsは、次のようにmintArgs引数を使用して渡すことができます。

mintV1(umi, {
// ...
mintArgs: {
gatekeeper: some({
network: publicKey("ignREusXmGrscGNUesoU9mxfds9AiYTezUKex2PsZV6"),
expireOnUse: true,
}),
},
});

ルート命令

Gatekeeperガードはルート命令をサポートしていません。