set_attribute: TxDescriptor<{
    collection: number;
    key: Binary;
    maybe_item?: number;
    value: Binary;
}>

Set an attribute for a collection or item.

Origin must be either ForceOrigin or Signed and the sender should be the Owner of the collection.

If the origin is Signed, then funds of signer are reserved according to the formula: MetadataDepositBase + DepositPerByte * (key.len + value.len) taking into account any already reserved funds.

  • collection: The identifier of the collection whose item's metadata to set.
  • maybe_item: The identifier of the item whose metadata to set.
  • key: The key of the attribute.
  • value: The value to which to set the attribute.

Emits AttributeSet.

Weight: O(1)