Skip to main content
Sui policies use two method names for raw signing requests. Use signRawMessageBytes for unparsed raw signing requests. Use signTransactionBytes for parsed transaction bytes that evaluate sui_transaction_command or sui_transfer_objects_command conditions. There is no separate signTransactionBytes API endpoint.
A Sui transaction consists of one or multiple inputs and commands. Common Sui commands to transfer stablecoins include:
  • SplitCoins, which splits off one or more coins from a single coin.
  • MergeCoins, which merges one or more coins of the same type into a single coin.
  • TransferObjects is used to transfer objects to a specified destination address.

Allow raw signing after a certain start date

Use signRawMessageBytes for unparsed raw signing requests. signRawMessageBytes rules support system conditions, but do not support decoded transaction field sources like sui_transaction_command or sui_transfer_objects_command.

Allowlist specific Sui transaction commands

Configure a max amount on the TransferObjects command (summed amount per command, assuming coins are of the same type)

Allowlist a specific Sui transaction recipient

Allowlist specific Sui transaction recipients with condition set

Restrict message signing

Use the message field source on signRawMessageBytes rules to constrain what messages a Sui wallet can sign. The content field supports string operators (eq, contains, starts_with, ends_with, in, in_condition_set), and the byte_length field supports numeric operators.

Only allow transactions after a certain start date

Allow transfers to a specific recipients after a certain timestamp

This is an example of mixing TransferObjects and System configurations.

Denylist recipients of a TransferObjects with condition sets