機能

圧縮NFTのデリゲート

Last updated February 24, 2026

Summary

圧縮NFTのデリゲートでは、所有者が別のアカウントに代わりにアクションを実行する権限を付与できます。このページでは、個々のcNFTでデリゲート権限を承認および取り消す方法について説明します。

  • 所有者に代わってcNFTを転送、バーン、または凍結するためのリーフデリゲートを承認する
  • 所有者自身のアドレスへ再デリゲートすることでデリゲートを取り消す
  • デリゲート権限は転送後に自動的にリセットされる

圧縮NFTの所有者は、cNFTの所有権を保持したまま、別のアカウントにデリゲートできます。

これにより、デリゲートされたアカウント(デリゲート権限とも呼ばれます)は、所有者に代わってアクションを実行できます。これらのアクションは以下の通りです:

これらのアクションはそれぞれ、デリゲート権限を使用してそれらを実行する方法の例を提供します。通常、リーフ所有者アカウントの代わりにリーフデリゲートアカウントを署名者として提供するだけです。 圧縮NFTのデリゲート権限を承認・取り消しする方法を見てみましょう。

デリゲート権限の承認

デリゲート権限を承認または置き換えるには、所有者がデリゲート命令を送信する必要があります。この命令は以下のパラメータを受け入れます:

  • リーフ所有者:署名者としての圧縮NFTの現在の所有者。デフォルトではトランザクションの支払者です。
  • 前のリーフデリゲート:前のデリゲート権限(存在する場合)。そうでなければ、これはリーフ所有者に設定する必要があります。
  • 新しいリーフデリゲート:承認する新しいデリゲート権限。

さらに、この命令はBubblegumツリー上のリーフを置き換えるため、圧縮NFTの整合性を検証するためにより多くのパラメータを提供する必要があります。これらのパラメータはリーフを変更するすべての命令に共通であるため、次のFAQでドキュメント化されています。幸いなことに、Metaplex DAS APIを使用してこれらのパラメータを自動的に取得するヘルパーメソッドを使用できます。

圧縮NFTのデリゲート

import { getAssetWithProof, delegate } from '@metaplex-foundation/mpl-bubblegum';
const assetWithProof = await getAssetWithProof(umi, assetId, { truncateCanopy: true });
await delegate(umi, {
...assetWithProof,
leafOwner,
previousLeafDelegate: leafOwner.publicKey,
newLeafDelegate: newDelegate,
}).sendAndConfirm(umi);

デリゲート権限の取り消し

既存のデリゲート権限を取り消すには、所有者は単に自分自身を新しいデリゲート権限として設定する必要があります。

圧縮NFTのデリゲート権限の取り消し

import { getAssetWithProof, delegate } from '@metaplex-foundation/mpl-bubblegum';
const assetWithProof = await getAssetWithProof(umi, assetId, {truncateCanopy: true});
await delegate(umi, {
...assetWithProof,
leafOwner,
previousLeafDelegate: currentDelegate,
newLeafDelegate: leafOwner.publicKey,
}).sendAndConfirm(umi);

Notes

  • Delegate authority is reset to the new owner after a transfer. The new owner must re-delegate if needed.
  • Only one leaf delegate can be active at a time per cNFT. Approving a new delegate replaces the previous one.
  • To revoke a delegate, set the new delegate to the owner's own public key.

FAQ

Glossary

TermDefinition
Leaf DelegateAn account authorized by the cNFT owner to perform transfer, burn, and freeze actions
Delegate AuthorityThe approved account that can act on behalf of the cNFT owner
Previous Leaf DelegateThe current delegate being replaced, or the owner if no delegate was previously set