Delegate
Search
K

Overview

What is DelegateRegistry, who's using it, and how you can use it
delegate.xyz is the best solution to secure valuable onchain assets while still participating in NFT airdrop claims, ERC20 token governance, and more. Users link cold wallets with hot wallets, and then the hot wallet can act on behalf of the cold wallet, like crypto power-of-attorney. It can be incorporated into login flows, token-gated minting & claiming, gaming actions, DAO governance, and more. By integrating the registry, your product improves by (1) derisking new user acquisition from those who have already delegated; (2) making it safer and easier for existing users to interact with your app from hot/mobile wallets without risking security. Get in touch if you're interested in using!

Who's Using It?

We've seen 150+ project integrations onchain, and even more offchain. This is a list of highlights, not comprehensive. Analytics nerds can dive even deeper by looking at registry code integrations on Codeslaw. Unique usecases are bolded on their first appearance in the list.
Project
Summary
Description
Link
Azuki
Allowlisted minting
Directly enabled ~2000+ Elementals mints
OpenSea
Theft prevention
Introduced 3-hour hold period on transferred assets, using Delegate to wallet ownership
Yuga Labs HV-MTL
Gaming access
Mint HV-MTL from a hotwallet, then delegate gameplay rights to other addresses
Yuga Labs SewerPass
Gaming access
Mint Sewerpass from a hotwallet, then delegate gameplay rights to other addresses
Opepen
Tokengated reveal
Opepen holders can opt into a new set reveal with delegated wallet
Tokenproof
Event ticketing
Their offchain integration lets people claim event tickets/QR codes with a delegated wallet
EthPass/Moonpay
Event ticketing
Their offchain integration lets people claim event tickets/QR codes with a delegated wallet
ArtBlocks
Allowlisting platform minting
Their core drop allowlisting mechanic lets artists and friends mint using delegated wallets
Manifold
Allowlisting platform minting
Proves ownership of an allowlisted address
Premint
Allowlisting platform minting
Proves ownership of an allowlisted address
Braindrops
Allowlisting platform minting
Their core drop allowlisting mechanic lets artists and friends mint using delegated wallets
ForgottenRunes
NFT airdrop
Their Trick-Or-Treat experience gave an airdrop to cryptopunks, bored apes, and more
Nouns
Onchain governance
Users can pool nouns and take voting actions from a delegated wallet
InvisibleFriends
NFT airdrop
Their 3D drop gave a free claim to holders of the original collection
Phaver
Social media access control
Users can login to their crypto social with delegated wallets
Friendship Bracelets
NFT airdrop
Their airdrop gave a 2x free claim to artblocks holders
BendDAO
Utility access while in lending platform
Users keep utility access (discord chats, airdrop claims, etc) while using their NFT as collateral
ParaSpace
Utility access while in lending platform
Users keep utility access (discord chats, airdrop claims, etc) while using their NFT as collateral
Arcade
Utility access while in lending platform
Users keep utility access (discord chats, airdrop claims, etc) while using their NFT as collateral
Bitcoin Ordinals
Tokengated minting
Prove token ownership before using an ETH-BTC bridge to mint an ordinal version
Nakamigos
NFT airdrop
Free Cloaks to Nakamigos holders
CollabLand
Discord access
Connect a hot wallet to access tokengated Discord channels
Vulcan
Discord access
Connect a hot wallet to access tokengated Discord channels

What are the Features?

  • Fully Onchain
    There are no offchain signatures floating around a hidden relay network. This gives users important assurances that what you see is what you get. Attack vectors like the OpenSea stale listings problem are prevented.
  • Fully Enumerable
    We provide onchain methods to get a complete list of all delegations for both cold and hot wallets. No event parsing needed. This greatly simplifies integration efforts for both smart contract and frontend developers.
  • Fully Independent
    There are zero external dependencies or admin/governance control, so the attack surface is locked down and the registry can deployed on any EVM chain of your choice.
  • Fully Immutable
    There are zero admin powers. Because governance is an attack vector, there should be none of it in a neutral trustless delegation standard. The standard is designed to be as flexible as possible, but upgrades are always possible by deploying a new registry with different functionality.
  • Fully Verifiable
    By using vanity addresses for CREATE2 deployment, the contract can be permissionlessly deployed at the same 14-leading-zeros address across multiple chains. This makes it easier for end users to verify that they’re interacting with the correct contract.

How does it work for normal crypto users?

You’ll use https://delegate.xyz/ to assign a hotwallet delegate for your coldwallet vault - that's it. The delegate has permission to claim airdrops or other utility on behalf of the vault, but it cannot touch anything within the vault. The granular permissioning lets you assign a delegate for either (1) everything; (2) a specific contract; (3) a specific token. For fungible ERC20/1155 tokens you'll be prompted to enter a specific token amount to delegate; for nonfungible ERC721/1155 tokens you'll be prompted to enter a specific token id to delegate.

How about smart contract wallets like Gnosis Safe or 4337?

Since the registry does not rely on offchain signatures and instead exclusively uses `msg.sender` for authentication, it works just as well for smart contract wallets as it does for externally-owned-accounts (EOAs) like Metamask/Rabby/Rainbow.
For Gnosis Safe, follow the instructions here for using WalletConnect. WalletConnect should also work for other smart contract wallet types.

How does it work for smart contract devs?

Writing a smart contract? Follow the instructions in Smart Contract Examples. Import the the IDelegateRegistry.sol interface to interact with the deployed registry address found in Contract Addresses. You'll query the registry to see if a delegated address has permissions to act on behalf of another.
Sample smart contract integration

How does it work for frontend devs?

Use the JavaScript SDK or HTTP REST API found in Setup to fetch a list of incoming and outgoing delegations for a connected wallet.

Comparison with Status Quo

Contract interaction with DelegateRegistry for Solidity devs
Last modified 11d ago