Update NFT Schema

For NFT_Schema that already created we are allow admin to fix or add some update to it such as add more action, add more attribute, disable some action and etc.

Change Organization Owner

For the first time we create NFT_Schema, we automatically create organization name to Schema owner. Such as six.rocket_ticket organization name will be six . Then when we want to change owner or transfer the owner we now can use this msg.

sixd tx nftmngr change-org-owner <string_org_name> <new_owner_address> \
    --from <your_address_or_key> --keyring-backend=os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

for example of this command should be:

sixd tx nftmngr change-org-owner six 6x1v23u9k5c8pwm87jtvxwwmuzt8nj250xu4lr4vh \
    --from alice --keyring-backend=os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

Add new Action to schema

{
  "name": "new_action",
  "desc": "New Action",
  "disable": false,
  "params": [
    {
      "name": "param1",
      "desc": "Param1",
      "data_type": "number",
      "required": true,
      "default_value": "10"
    }
  ],
  "when": "meta.GetBoolean('started') == true",
  "then": [
    "meta.SetNumber('points', meta.GetNumber('points') - params['param1'].GetNumber())"
  ]
}
sixd tx nftmngr add-action <string_schema_code> <encoded_base64_action> \
    --from <your_address_or_key> --keyring-backend=os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

for example of this command should be:

sixd tx nftmngr add-action six-protocol.test_v071 \
    ewogICJuYW1lIjogIm5ld19hY3Rpb24iLAogICJkZXNjIjogIk5ldyBBY3Rpb24iLAogICJkaXNhYmxlIjogZmFsc2UsCiAgInBhcmFtcyI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAicGFyYW0xIiwKICAgICAgImRlc2MiOiAiUGFyYW0xIiwKICAgICAgImRhdGFfdHlwZSI6ICJudW1iZXIiLAogICAgICAicmVxdWlyZWQiOiB0cnVlLAogICAgICAiZGVmYXVsdF92YWx1ZSI6ICIxMCIKICAgIH0KICBdLAogICJ3aGVuIjogIm1ldGEuR2V0Qm9vbGVhbignc3RhcnRlZCcpID09IHRydWUiLAogICJ0aGVuIjogWwogICAgIm1ldGEuU2V0TnVtYmVyKCdwb2ludHMnLCBtZXRhLkdldE51bWJlcigncG9pbnRzJykgLSBwYXJhbXNbJ3BhcmFtMSddLkdldE51bWJlcigpKSIKICBdCn0K \
    --from alice --keyring-backend=os --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y \
    --chain-id fivenet --node https://rpc1.fivenet.sixprotocol.net:443

Add new NFT Attribute

Location = 0 => NFT Attribute

Location = 1 => Token Attribute

{
    "name": "new_attribute",
    "default_mint_value": {
        "boolean_attribute_value": {
            "value": false
        }
    },
    "data_type": "boolean",
    "required": true,
    "display_value_field": "value",
    "display_option": {
        "bool_true_value": "Yes",
        "bool_false_value": "No",
        "opensea": {
            "trait_type": "New Attribute"
        }
    }
}

encode New Attributes with base64 then use it to next command example

sixd tx nftmngr add-attribute ${schema_code} 0 ${BASE64_ATTRIBUTE} \
    --from <your_address_or_key> --keyring-backend=os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

for example of this command should be:

sixd tx nftmngr show-attributes sixnetwork.nftexpo false \
    points,missions_completed,bonus_1 \
    --from 6x1q3566qhn4hnjf8l0zt90daew2ade2yc6l5usaq --keyring-backend=os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

Add new token attribute

sixd tx nftmngr add-attribute ${schema_code} 1 ${BASE64_ATTRIBUTE} \
    --from <your_address_or_key> --keyring-backend=os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

To Show or Hide multiple attributes in one command

false => to hide

true => to show

sixd tx nftmngr show-attributes <string_schema_code> <true,false> <attribute_names> \
    --from <your_address_or_key> --keyring-backend os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

for example of this command should be:

sixd tx nftmngr show-attributes sixnetwork.nftexpo false \
    missions_passed,missions_completed,jan_claim \
    --from alice --keyring-backend os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

To disable action

Sometimes when we add new action we might want to disable some action that we don't need

disable = true => To disable action

disable = false => To enable action

sixd tx nftmngr toggle-action <string_schema_code> \
    <string_action_name> <true,false> \
    --from <your_address_or_key> --keyring-backend os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

for example of this command should be:

sixd tx nftmngr toggle-action six.rocket_ticket \
    disable_test true \ 
    --from alice --keyring-backend os \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet

Update base URI of NFT Schema

When we hide original URI then we want to reveal it to publish URI we can use this message to set new base uri.

sixd tx nftmngr set-base-uri <string_schema_code> <string_url_new_baseUri> \
    --from <your_address_or_key> --keyring-backend os \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y

for example of this command should be:

sixd tx nftmngr set-base-uri six.rocket_ticket \
    https://dryotus.definix.com/ipfs/hahahahahahahahaah \
    --from alice --keyring-backend os \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet

Add system actioner

A system_actioner is Array of addresses that has permission to perform actions on behalf of admin or schema owner

sixd tx nftmngr add-system-actioner <schema_code> <actioner_address> \
    --from <your-address_or_your-key> --node https://rpc1.fivenet.sixprotocol.net:443 \
    --chain-id fivenet --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y 

for example of this command should be:

sixd tx nftmngr add-system-actioner Dee_Gen2 6x1v23u9k5c8pwm87jtvxwwmuzt8nj250xu4lr4vh \
    --from alice --keyring-backend os \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet

Remove system actioner

Also we provided remove system actioner when the address is out of responsible

sixd tx nftmngr remove-system-actioner <schema_code> <actioner_address> \
    --from <your-address_or_your-key> --node https://rpc1.fivenet.sixprotocol.net:443 \
    --chain-id fivenet --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix -y 

for example of this command should be:

sixd tx nftmngr remove-system-actioner six.rocket_ticket 6x1v23u9k5c8pwm87jtvxwwmuzt8nj250xu4lr4vh \
    --from alice --keyring-backend os \
    --gas auto --gas-adjustment 1.5 --gas-prices 1.25usix \
    --node https://rpc1.fivenet.sixprotocol.net:443 --chain-id fivenet

Last updated