Should we create icrcXX_metadata?

since we have icrc10_supported_standards, should we also create a standard for icrcXX_metadata for any canisters that will return metadata (array of ICRC.Value)?

  • XX = digits

tbh i was thinking about having a standard for basic canister interfaces such as metadata, metrics (perhaps returns array of ICRC.Value) (for monitoring purposes) or even logs (perhaps returns array of Text).

1 Like


It seems all metadata implemented in this lib

icrc1_metadata is a good way to go :smiley:

no, icrc1 is a token standard. u cannot implement only one method of a standard, and leave the rest.

1 Like

Right now we have a metadata method defined in each token standard just like we used to have a supported standards method defined in each token standard untill icrc-10 was defined to create a single method used across standards.

But supported standards is like an access point when interacting with a canister, to know which methods to call. On the other hand, metadata isn’t like that since you know which method to call after icrc-10 supported standards.

So only useful use case I can think of having a standardized metadata method across standards would be for some tooling to show canister metadata independent of which token/other standard is implemented.

Having it standardized would not just guarantee the method name being the same but also the signature, the metadata response types, which obviously makes a big difference for this sort of tooling.

As for other things like metrics and logs, these things are very different so I wouldn’t suggest putting all these together in a single ICRC.

1 Like