opensea-creatures
opensea-creatures copied to clipboard
Please help me modify the name and banner image set in contract-level-metadata.
I want to modify the name in contract-level-metadata, but it won’t be refreshed, and how do I set the banner image?
I have a factory item in a collection i can edit (I own it)
- users buy that, and it mints a new item to their wallet
- those new items appear in a new collection I don't own How do i set it so that I own it?
See here: https://docs.opensea.io/docs/contract-level-metadata
See here: https://docs.opensea.io/docs/contract-level-metadata
that didn't help anything please someone show me the key to set the banner image?
See here: https://docs.opensea.io/docs/contract-level-metadata
that didn't help anything please someone show me the key to set the banner image?
Hi, Did you find the key to set the banner?
Nope My solution is to be an owner of that collection and change it via opensea website
Nope My solution is to be an owner of that collection and change it via opensea website
I'm owner of the contract, but I can't edit collection via opensea. Do you know what might be wrong? Probably, I need to add some owner info the contract? Thanks
Nope My solution is to be an owner of that collection and change it via opensea website
I'm owner of the contract, but I can't edit collection via opensea. Do you know what might be wrong? Probably, I need to add some owner info the contract? Thanks
I need to know the structure of your contract first dose it got only one contract to deploy or contains FactoryERC721 and ERC721 contracts?
Same problem here. It seems like I will end up with 2 collection (one for the factory and another is the minted items). But I don't own the minted item collection so I'd need to rely on the contract-level metadata 😢 @akantora How did you become the owner of the collection?
Failed attempt 1: I thought of removing these lines to own the deployed creature contract. But that would cause error when minting the factory, since the factory needs to be an owner of the Creature contract to allow transfer of ownership.
I need to know the structure of your contract first dose it got only one contract to deploy or contains FactoryERC721 and ERC721 contracts?
I followed the tutorial, which deploy the FactoryERC721 (code) and the creature ERC721Tradable (code) separately. (deployment script)
Anyone have an update? I have this same need.
I have the same issue,I can't edit my colletion on opensea,it's so bad.
For those landing here like me.
So it appears that, after a few hours, you will be able to edit your collection on OS as long as:
- You've added
contractURIto your contract - Your contract is
Ownableas mentioned in the Help Centre but not in the docs ! - You're logged in OS with the same account that is
ownerof the contract
I don't know if 1. is optional. It might be.
But 2. is obviously not optional, it does make sense but it's never stated clearly in the docs.
Note 1: While 2. may seem obvious in hindsight, they should mention it clearly as a requirement to be able to edit your collection metadata on OS.
Note 2: Only tested above on Rinkeby.
Hope that helps.
- Your contract is Ownable as mentioned in the Help Centre but not in the docs !
What if I use AccessControl instead?
You just need to have a public owner() method on your contract.
Hello! Has anyone a solution? Thanks.
You just need to have a
public owner()method on your contract.
Are you sure? OpenSea doesn't seem to be respecting my public owner() view. Is there anything else?
I did it in that way:
- I commented out these lines of the code which responsible for the ownership transfering.
- Then after deployment of the collection and fabric smartcontracts I minted few NFTs by my collection smartcontract for myself.
- I changed my collection details for the collection and fabric pages on OpenSea.
- Next I executed the script with the ownership transfering to the fabric smartcontract with a command:
yarn truffle exec scripts/transfer-ownership.js --network live
transfer-ownership.js had folowing contents: const Project = artifacts.require("./Project.sol"); const ProjectFactory = artifacts.require("./ProjectFactory.sol");
// If you want to hardcode what deploys, comment out process.env.X and use // true/false; const DEPLOY_ALL = process.env.DEPLOY_ALL; const DEPLOY_ACCESSORIES_SALE = process.env.DEPLOY_ACCESSORIES_SALE || DEPLOY_ALL; const DEPLOY_ACCESSORIES = process.env.DEPLOY_ACCESSORIES || DEPLOY_ACCESSORIES_SALE || DEPLOY_ALL; const DEPLOY_NFTS_SALE = process.env.DEPLOY_NFTS_SALE || DEPLOY_ALL; // Note that we will default to this unless DEPLOY_ACCESSORIES is set. // This is to keep the historical behavior of this migration. const DEPLOY_NFTS = process.env.DEPLOY_NFTS || DEPLOY_NFTS_SALE || DEPLOY_ALL || (! DEPLOY_ACCESSORIES);
module.exports = async (deployer, network, addresses) => { const nft = await Project.deployed( ); await nft.transferOwnership( ProjectFactory.address ); }; 5. After that I have a stylized collection page on OpenSea which I can't modify in the future and I have a fabric page which I can modify at anytime.
@beshup I am not sure. I'm just guessing.
That worked for me after a few hours.
I did not use Ownable from OZ. And the only common ground I have with their implementation is public owner().
Hope this helps.
So in other words. there is no way to set the banner field if your not the owner of the contract. A contract that owns an NFT contract would be unable to set the banner field because it's not present in the contract metadata model.
I meet the same problem.
Adopting Ownable solved the problem for me right away on the testnet.