NBA TopShot Chain/Account Information

Hi,

I was wondering how we can correlate account addresses stored on chain with NBA Top Shot usernames. It would be nice to have a human readable format for seller/buyer in transactions, and it seems like other sites are able to make that correlation like evaluate.market.

I was also wondering how to retrieve moment listing encodings that’s used in the URLs

ex: https://nbatopshot.com/listings/p2p/208ae30a-a4fe-42d4-9e51-e6fd1ad2a7a9+59770a29-6764-45e2-96d7-682ba3ae5cd5

https://nbatopshot.com/moment/adored_octopusAIR+be275690-2943-4bf7-9891-ccc3d08b6722

Each moment has their own formatted schema, and I was wondering how to access these parts of the URL.

Thanks!

You might find some value from this article: Polling NBA Top Shot Purchase Events from Flow Blockchain with flow-go-sdk | by Eric Ren | Medium

Hi @Gianni-PopMint,

Thanks for the response! I have looked through that article before to gain a basic understanding of how to query the chain.

However the final output that you get from there looks like this

moment purchased: momentid: 113499, price: 4.000000, seller: 9cf0e3443ebc8bf9
saleMoment: serialNumber: 509, setID: 2, setName: Base Set, playID: 144, playerName: Jimmy Butler
transactionID: 5143ea740f7bb6e76c3f9298aa577b0df43a9619987ef4324b7a8e6f8c508633, block height: 6633113

Seller is an address stored in the flow chain, but I would like to know what the actual username associated with that TopShot/Dapper account address is.

I also havn’t found any information about how TopShot URLs are formatted, and where that’s located in the TopShot database in that article

@Deetow Top Shot usernames aren’t stored on-chain, so you can’t get it from that. You’ll need to check with the top shot community for how they do that.

As flowjosh mentioned, the TopShot usernames are not stored on-chain.
What is stored on-chain are some ids such as set id, play id, moment id.
These are not the same as the set id, play id, moment id on TopShot.

There is some sort of mapping… which I am sure sites like evaluate.market has figured out. But if you did, this is how those URLs work:

/listings/p2p/{setID}+{playID}
/moment/{momentID}

1 Like

@crunchy777 How do you get a setID or a playID from your own moments? Also, /listings/p2p/{setID}+{playID} doesn’t seem to be valid anymore.