# Core Tx Subcommands

Transaction Subcommands can only be used along with a transaction creation command as the main command. These subcommands create an entry and wrap it as a transaction passed to the main command for sending or displaying. This section introduces subcommands that are not specific to any modules. Other commands will be introduced in module commands.

# Add Permissioned Table Acl

# Usage

Usage: miyabi-cli sendtransaction addpermissionedtableacl [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                 Show help information
  -o|--operation <name>  [Mandatory] Specify the acl permission to be added
  -t|--table <name>      [Mandatory] Table name
  --admin <address>      [Mandatory] Set address to be added
  -p|--privatekey <key>  Private key (should include table owner permission)

# Functionality

Adds the necessary permission to the table for the given set of addresses. Allowed permissions include read, insert, and update.

For the transaction to be successful, -p must include table admin.

# Example


$ ./miyabi-cli.exe sendtransaction addpermissionedtableacl -o read --admin 0225c6b6c4225139c34746a3d12c798d9edab2ceb0149e2abe79812a04b9f20a91 -p 10425b7e6ebf5e0d5918717f77ce8a66aaf92bc64b65996f885ff12bd94ef529 -t test_asset 
985072820ff7355fc64c6bbf03dada6ddf10fc1893a8e38ba01e8dcfa0c6771f

# Add Table Owners

# Usage

Usage: miyabi-cli sendtransaction addtableowners [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                  Show help information
  -t|--table <name>       [Mandatory] Table name
  -a|--address <address>  [Mandatory] Address(es) of table owners to be added
  -p|--privatekey <key>   [Mandatory] Private key (should include table owner permission)

# Functionality

Adds table owners for a table.

For the transaction to be successful, -p must include the current table owner.

# Example


$ ./miyabi-cli.exe sendtransaction addtableowners -t name -a 03bf9701dc68dbfc51d2ffc322253d4435f75a1a54f200d2cd6a920c0f34cd1814 -p e0a3d561fab5ce263131a4f70a1ac4d365c0853fbf97abd1419b32fedbb4add4
423341f247e7887a43f6b0db3471d0b2b774bb3be8930fbd2dcfba544a892d52

# Add Token Admins

# Usage

Usage: miyabi-cli sendtransaction addtokenadmins [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                  Show help information
  -t|--table <name>       [Mandatory] Table name
  -a|--address <address>  [Mandatory] Address(es) of token admins to be added
  -p|--privatekey <key>   [Mandatory] Private key (should include table owner permission)

# Functionality

Add token admins for an NFT table or Asset table.

For the transaction to be successful, -p must include the table owner.

# Example


$ ./miyabi-cli.exe sendtransaction addtokenadmins -t name -a 03bf9701dc68dbfc51d2ffc322253d4435f75a1a54f200d2cd6a920c0f34cd1814 -p e0a3d561fab5ce263131a4f70a1ac4d365c0853fbf97abd1419b32fedbb4add4
0999c30f0ea62ef7ca47258100c236e50b2feabb9af4992bb39597366a66f44a

# Add Trusted Entities

# Usage

Usage: miyabi-cli sendtransaction addtrustedentities [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                  Show help information
  -t|--table <name>       [Mandatory] Table name
  -a|--address <address>  [Mandatory] Address(es) of trusted entities to be added
  -p|--privatekey <key>   [Mandatory] Private key (should include table owner permission)

# Functionality

Add trusted entities for an NFT table or Asset table.

For the transaction to be successful, -p must include the table owner.

# Example


$ ./miyabi-cli.exe sendtransaction addtrustedentities -t name -a 03bf9701dc68dbfc51d2ffc322253d4435f75a1a54f200d2cd6a920c0f34cd1814 -p e0a3d561fab5ce263131a4f70a1ac4d365c0853fbf97abd1419b32fedbb4add4
d13c870e536de306cc36186b9074cfc560d458a519497efa5685007bbe3d034f

# Change Blockchain Parameters

# Usage

Usage: miyabi-cli createtransaction changeblockchainparameters [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                           Show help information
  -p|--privatekey <key>            Private key of World admin
  -h|--activation-height <height>  [Mandatory] Activation height
  -mtbs|--maxtxbytesize <size>     Max Byte size of a Transaction
  -mept|--maxtxentries <maxlimit>  Maximum number of entries per Transaction

# Functionality

Update the blockchain parameters of mtbs and/or mept at a given height h.

For the transaction to be successful, -p must include world admin.

# Example


$ ./miyabi-cli.exe sendtransaction changeblockchainparameters -p 10425b7e6ebf5e0d5918717f77ce8a66aaf92bc64b65996f885ff12bd94ef529 -h 21 -mtbs 4000 -mept 2000
985072820ff7355fc64c6bbf03dada6ddf10fc1893a8e38ba01e8dcfa0c6771f

# Change Consensus Credentials

# Usage

Usage: miyabi-cli createtransaction changeconsensuscredentials [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                           Show help information
  -p|--privatekey <key>            Private key of consensus admin
  -h|--activation-height <height>  [Mandatory] Activation height
  -m|--member <member>             [Mandatory] Member credentials
  -q|--quorum <credential>         (Optional) Quorum Credentials

# Functionality

Create a transaction to change the consensus credentials of the current Miyabi. The new consensus nodes will make consensus since activation height. -m will specify the public key of the new consensus node(s). -q is used to specify the aggregated public key if BLS multi-sig is used in the consensus layer.

For the transaction to be successful, -p must specify enough consensus admins defined in the blockchain config.

# Example


$ ./miyabi-cli.exe sendtransaction changeconsensuscredentials -p 8b1e72d59e152909ade35860e9306f59902da7c40e2dfa027b6058dd8cbe44c0 -p 198665fc4bbee9e1cbd0fea04bcb1acf0da658f75d03f795c96d3c1dddfd0468 -p 461284df1a64e8a3abd498a2129f22641d1fd22666a2f083e3d2713e945904ea -p 473dcc73612ea1070f2875d448f7653db37a67610d73f513a6ab5ddff183e269 -m 026beca06739461a20249fd4b24cf27542013624d18710bc418e8de10d6ef68568 -m 02fce59e2dd0015bbb34da445f6c3a4ac2254a1b90ffa9c66fbd8621bf0c1a6deb -h 3
14de107e4f618f4cbca2a1e04b3cfc53f40cb83fe66fa4f94b5e1ebe76d6a552

# Delete Table

# Usage

Usage: miyabi-cli sendtransaction deletetable [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                 Show help information
  -p|--privatekey <key>  Private key of table admin with delete permission
  -t|--table <name>      [Mandatory] Table name

# Functionality

Create a transaction to delete a table.

For the transaction to be successful, -p must include table admin.

# Example


$ ./miyabi-cli.exe sendtransaction deletetable -p 10425b7e6ebf5e0d5918717f77ce8a66aaf92bc64b65996f885ff12bd94ef529 -t test_asset
985072820ff7355fc64c6bbf03dada6ddf10fc1893a8e38ba01e8dcfa0c6771f

# Remove Permissioned Table Acl

# Usage

Usage: miyabi-cli createtransaction removepermissionedtableacl [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                 Show help information
  -o|--operation <name>  [Mandatory] Specify the acl type to be removed
  -t|--table <name>      [Mandatory] Table name
  --admin <address>      [Mandatory] Set addresses to be removed
  -p|--privatekey <key>  Private key (should include table owner permission)

# Functionality

Revokes the necessary permission to the table for the given set of addresses. Allowed permissions include read, insert, and update.

For the transaction to be successful, -p must include table admin.

# Example


$ ./miyabi-cli.exe sendtransaction removepermissionedtableacl -o read --admin 0225c6b6c4225139c34746a3d12c798d9edab2ceb0149e2abe79812a04b9f20a91 -p 10425b7e6ebf5e0d5918717f77ce8a66aaf92bc64b65996f885ff12bd94ef529 -t test_asset 
985072820ff7355fc64c6bbf03dada6ddf10fc1893a8e38ba01e8dcfa0c6771f

# Remove Table Owners

# Usage

Usage: miyabi-cli sendtransaction removetableowners [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                  Show help information
  -t|--table <name>       [Mandatory] Table name
  -a|--address <address>  [Mandatory] Address(es) of table owners to be removed
  -p|--privatekey <key>   [Mandatory] Private key (should include table owner permission)

# Functionality

Remove table owners from a table.

For the transaction to be successful, -p must include the current table owner.

# Example


$ ./miyabi-cli.exe sendtransaction removetableowners -t name -a 03bf9701dc68dbfc51d2ffc322253d4435f75a1a54f200d2cd6a920c0f34cd1814 -p e0a3d561fab5ce263131a4f70a1ac4d365c0853fbf97abd1419b32fedbb4add4
b04fe7f193db242539da13f92cc9b466ccda56ace88016f2a763a84f70492ccf

# Remove Token Admins

# Usage

Usage: miyabi-cli sendtransaction removetokenadmins [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                  Show help information
  -t|--table <name>       [Mandatory] Table name
  -a|--address <address>  [Mandatory] Address(es) of token admins to be removed
  -p|--privatekey <key>   [Mandatory] Private key (should include table owner permission)

# Functionality

Remove token admins from an NFT table or Asset table.

For the transaction to be successful, -p must include the table owner.

# Example


$ ./miyabi-cli.exe sendtransaction removetokenadmins -t name -a 03bf9701dc68dbfc51d2ffc322253d4435f75a1a54f200d2cd6a920c0f34cd1814 -p e0a3d561fab5ce263131a4f70a1ac4d365c0853fbf97abd1419b32fedbb4add4
cfb462a8c1c51701c384d316a1a0a4905b854dea8efaee82eb25a17296fc30c3

# Remove Trusted Entities

# Usage

Usage: miyabi-cli sendtransaction removetrustedentities [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                  Show help information
  -t|--table <name>       [Mandatory] Table name
  -a|--address <address>  [Mandatory] Address(es) of trusted entities to be removed
  -p|--privatekey <key>   [Mandatory] Private key (should include table owner permission)

# Functionality

Remove trusted entities from an NFT table or Asset table.

For the transaction to be successful, -p must include the table owner.

# Example


$ ./miyabi-cli.exe sendtransaction removetrustedentities -t name -a 03bf9701dc68dbfc51d2ffc322253d4435f75a1a54f200d2cd6a920c0f34cd1814 -p e0a3d561fab5ce263131a4f70a1ac4d365c0853fbf97abd1419b32fedbb4add4
c595c8855c6c483eb7fc8711ad84e8a4249934474024c92fd28d27bb2ad93113

# Update World Permission

# Usage

Usage: miyabi-cli sendtransaction updateworldpermission [Options] [-- InnerCommand [InnerCommand Options] <arg(s)>]

Options:
  --help                 Show help information
  --grant <name>         Specify the world permissions to be granted
  --revoke <name>        Specify the world permissions to be revoked
  --address <address>    [Mandatory] Address to change the permission
  -p|--privatekey <key>  Private Key(s) of the permission assigners

# Functionality

Update the world permissions such as Root, CreateTable, ChangeConfig, GrantCreateTable of the passed addresses. Either --grant or --revoke must be specified.

For the transaction to be successful, -p must include world admin.

# Example


$ ./miyabi-cli.exe sendtransaction updateworldpermission -p 10425b7e6ebf5e0d5918717f77ce8a66aaf92bc64b65996f885ff12bd94ef529 -- grant changeconfig --address 0286887e5a0d26844f403d0fdae6435e465ba7a8311429ac5443e65b74a1174352
985072820ff7355fc64c6bbf03dada6ddf10fc1893a8e38ba01e8dcfa0c6771f