First get the Mint Address of the NFT which you can often find in the URL of NFT Marketplaces when looking at the details of an NFT for instance https://coralcube.io/detail/61hPLmqccP6Gx8xQz8ekZh5Wun2FAnwRbzvs5ucxmXHm and the Mint Address is "61hPLmqccP6Gx8xQz8ekZh5Wun2FAnwRbzvs5ucxmXHm". Once you have that put it into a Solana Blockchain explorer like https://solscan.io/ and you will get to this page https://solscan.io/token/61hPLmqccP6Gx8xQz8ekZh5Wun2FAnwRbzvs5ucxmXHm go to the "Metadata" page and scroll down in the Metadata to where it says "creators" and there is an array. Take the address from creator array key [0] which is "6LQgfAN3LQMHKHQFUpMsCCQnPrnMAH46yQvt85vYTUb4", this is also known as the Candy Machine ID generally for Metaplex. Then use the function metaplex.nfts().findAllByCreator() from here https://github.com/metaplex-foundation/js but as of now ensure to use it with an RPC that is capable of processing it. As of now 11/1/22 I know Quicknode works with it but Alchemy has an issue and didn't give results when I tried with it. Here is a code example, in the below code example edit the "rpc" variable to be the URL of your RPC provider and edit the "creator_0_key" address:
// Mystopians root.data.creators[0].address 6LQgfAN3LQMHKHQFUpMsCCQnPrnMAH46yQvt85vYTUb4
// npm install bs58 bip39 ed25519-hd-key @solana/web3.js @metaplex-foundation/js
var rpc = "---edit---";
var creator_0_key = "6LQgfAN3LQMHKHQFUpMsCCQnPrnMAH46yQvt85vYTUb4";
(async function () {
var fs = require('fs');
var url = require('url');
var util = require('util');
var http = require('http');
var https = require('https');
var path = require('path');
var bs58 = require('bs58');
var bip39 = require('bip39');
var ed25519_hd_key = require('ed25519-hd-key');
var solana_web3 = require("@solana/web3.js");
var metaplex_module = require("@metaplex-foundation/js");
var connection = new solana_web3.Connection(rpc, 'confirmed');
var wallet = solana_web3.Keypair.generate();
var metaplex = metaplex_module.Metaplex.make(connection)
.use(metaplex_module.keypairIdentity(wallet))
.use(metaplex_module.bundlrStorage());
function full_inspect_obj(obj) {
return util.inspect(obj, {
showHidden: true,
depth: null,
colors: false,
maxArrayLength: null
});
}
console.log('Starting');
var rrr = await metaplex.nfts().findAllByCreator({
"creator": new solana_web3.PublicKey(creator_0_key),
"position": 1
});
fs.writeFileSync(`${__dirname}/results.txt`, full_inspect_obj(rrr));
console.log('Finished');
})();