Extending NEP-171 Events Standard to include contract metadata `update` events

Summary:

To extend the NEP-171 events standard to include contract_metadata_update event.

Motivation:

The existing events standard for NFTs as described in NEP-171 does not include any events to be logged when an NFT contract’s metadata is updated.

This results in situations where, for instance, a contract owner will update the contract’s base_uri after it is initially deployed, likely a reference to a dedicated IPFS gateway, but none of the contract consumers (wallets, marketplaces etc) are aware of this change and continue serving the NFT media from less reliable/available gateways. A contract_metadata_update event would alert listeners of any change to contract metadata and enable them to remain up-to-date.

Specification

contract_metadata_update

Emitted by NFT contract when any field of NFTContractMetadata is updated. Includes fields that have been updated

EVENT_JSON:{
  "standard": "nep171",
  "version": "1.1.0",
  "event": "contract_metadata_update",
  "data": [{ "metadata": { "base_uri": "..." }}]
}
6 Likes

I’m for this, want to know if this is more appropriate to put in “standards” section @ori-near

2 Likes

This makes sense! LGTM!

1 Like

can we get to pushing this on github as a PR if its GTG (good to go)

Opened PR: add contract_metadata_update event by lachlanglen · Pull Request #423 · near/NEPs · GitHub

1 Like