Features

Delegating Trees

Last updated February 24, 2026

Summary

Delegating trees allows the tree creator to authorize another account to mint cNFTs from a private Bubblegum Tree. This page covers approving and revoking tree delegate authority.

  • Approve a tree delegate to mint cNFTs on behalf of the tree creator
  • Revoke a tree delegate by setting the delegate back to the creator
  • Only relevant for private trees (public trees allow anyone to mint)

Similarly to how the owner of a Compressed NFT can approve a Delegate Authority, the creator of a Bubblegum Tree can also approve another account to perform actions on their behalf.

Once a Delegate Authority is approved for a Bubblegum Tree, it will be able to mint Compressed NFTs on behalf of the creator. Note that this is only relevant for private trees, since anyone can mint on public trees.

Approving a Delegate Authority for a Tree

To approve a new Delegate Authority on a Bubblegum Tree, its creator may use the Set Tree Delegate instruction, which accepts the following parameters:

  • Merkle Tree: The address of the Merkle Tree to delegate.
  • Tree Creator: The creator of the Merkle Tree as a Signer.
  • New Tree Delegate: The new Delegate Authority to approve.

Delegate a Bubblegum Tree

import { setTreeDelegate } from '@metaplex-foundation/mpl-bubblegum'
await setTreeDelegate(umi, {
merkleTree,
treeCreator,
newTreeDelegate,
}).sendAndConfirm(umi)

Revoking a Delegate Authority for a Tree

To revoke an existing Delegate Authority, the creator of the tree simply needs to set themselves as the new Delegate Authority.

Revoke the Delegate Authority of a Bubblegum Tree

import { setTreeDelegate } from '@metaplex-foundation/mpl-bubblegum'
await setTreeDelegate(umi, {
merkleTree,
treeCreator,
newTreeDelegate: treeCreator.publicKey,
}).sendAndConfirm(umi)

Notes

  • Tree delegation is only relevant for private trees. Public trees allow anyone to mint.
  • Only one tree delegate can be active at a time. Approving a new delegate replaces the previous one.
  • The tree creator retains full authority even when a delegate is set.

FAQ

What can a tree delegate do?

A tree delegate can mint compressed NFTs from the tree on behalf of the tree creator. This is only relevant for private trees.

How do I revoke a tree delegate?

Use setTreeDelegate with newTreeDelegate set to the tree creator's own public key.

Glossary

TermDefinition
Tree DelegateAn account authorized by the tree creator to mint cNFTs from a private tree
Tree CreatorThe account that created the Bubblegum Tree and has full management authority
setTreeDelegateThe instruction used to approve or revoke a tree delegate