Claiming NFTs through Passes

[pounding on the desk] This is it! I'm telling you this is it! - Jeremy Irons (Margin Call)

Overview

This feature extends the current Hedera capability by adding the concept of relationships between NFTs, a NFT pass can be a parent, while child NFTs can be linked for distribution to any holder. While the ledger automatically keeps state with no off-chain storage.

Or as a user story...

As a project with an NFT pass, I want to be able to generate future NFTs that my community may be able to claim.

Or for an art project...

As an artist I want to have an NFT pass to build a community with so I can reward my pass owners with future peridoic drops.

How it works

There is a fair bit of logic to make this work, we rely on Mirrornodes to read currently minted NFTs and respective holders.

  • Check that an account owns an NFT, or many.

  • Check that the minted and supply of the child NFT matches the parent NFT pass.

  • Check that a child NFT has been fully pre-minted.

  • Check that the child NFT serial is held by treasury

  • Attempt to send, or receive a generic association failure error.

POST https://hedera-serverless-consensus.vercel.app/api/nft/claim

Enable an account to claim an NFT through a pass they own.

Headers

Name
Type
Description

x-api-key*

String

The API_SECRET_KEY from the client's environment variables.

Request Body

Name
Type
Description

token_id*

String

Hedera token id to send

receiver_id*

String

Hedera account to send the NFT to

serial_number*

String

Serial number of the NFT to send

nft_pass_token_id*

String

Hedera token id of pass to send

{
    // Response
}

Last updated