NFT Indexer Bounty


Anywhere Remote only

Freelance / Contractor

Engineering - Backend

Apr 6


We are offering a $10,000 bounty for developers to help us build an NFT metadata indexer for NFTs on the Flow blockchain.

This indexer must be:

  • Written in golang
  • Able to index old NFTs (through our database of historical Flow events) and newly minted NFTs in real-time (we have an API to listen events in real-time)
  • Indexes the name, mint date, mint transaction, and minter as the base attribute. Depending on the NFT collection, additional metadata might be necessary.

You may take from these data sources to build the index of NFT metadata:

  • Our own SQL database, where we have indexed all events on the Flow blockchain. We also has a database of all current owners of all NFTs so you can use this to borrow the NFT for getting their metadata.
  • Flow Smart contracts
  • IPFS
  • External APIs (only if it's related with the NFT collection)

Note: If you're not familiar with Flow blockchain, you can ask us on how to do things.

There's a lot of NFT collections on Flow however from our analysis, even though there's no standard yet to get the metadata across NFT collections, we see 4 major patterns across NFT projects on how they store the metadata:

  • Full metadata stored in mint events (easiest, just need to query our SQL database)
  • Metadata IDs stored in mint events (also called TopShot-style, need to query the contract to get metadata details, still rather easy)
  • Metadata stored in NFT (need to borrow the NFT from the current owner, thankfully we have a full realtime database of all current NFT owners 😏 )
  • External API (e.g. Starly, get the ID first from mint events then fetch the metadata from their API)

We expect for the extracted NFT metadatas to be written in our SQL database for ease of query and filtering.


We will do the payment in USDC tokens. The applicants may choose the desired platform to receive them. Payment will be granted after the project has been successfully delivered and passes our requirements.


Send an email to with information about:

  • Name
  • Contact email
  • GitHub profile if any
  • Discord tag (complete with #XXXX numbers)
  • Timezone, to schedule meetings if needed

You may apply as an individual or as a team.

Apply for this position Back to job

You must be logged in to to apply to this job.


Your application has been successfully submitted.

Please fix the errors below and resubmit.

Something went wrong. Please try again later or contact us.

Personal Information


View resume



Block explorer for Flow