goal asset

goal asset

Create and manage Algorand Standard Assets.

Synopsis

Collection of commands to support the creation and management of assets.

goal asset [flags]

Options

  -h, --help            help for asset
  -w, --wallet string   Set the wallet to be used for the selected operation

Options inherited from parent commands

  -d, --datadir stringArray   Data directory for the node
  -k, --kmddir string         Data directory for kmd

Commands

goal account config

Asset configuration

Synopsis

Configure several addresses for the asset that each affect specific functionality for the asset

goal asset config [flags]

Options


        --asset string          Unit name of asset to configure
        --assetid uint          Asset ID to configure
        --creator string        Account address for asset to configure
        --manager string        Manager account to issue the config transaction (defaults to creator)
        --new-clawback string   New clawback address
        --new-freezer string    New freeze address
        --new-manager string    New manager address
        --new-reserve string    New reserve address

Options inherited from parent commands

  -d, --datadir stringArray   Data directory for the node
  -k, --kmddir string         Data directory for kmd
  -w, --wallet string         Set the wallet to be used for the selected operation

goal asset create

Create an asset

Synopsis

Creating an asset is done through a transaction on the Algorand network. At minimum, the creator of the asset, the name and the total units of the asset need to be defined. The transaction to create the asset must be signed by the asset creator. When first creating an asset, all addresses (clawback, freezer, manager or reserve address) are set to the creator of the asset.

The defaultfrozen flag specifies whether the asset is initially frozen, meaning transactions in this asset are currently not allowed for any account. The total flag specifies the maximum amount of this specific asset type. This number can not be changed once the asset is created. These assets are currently not issued and are considered non-minted at this point. The assetmetadatab64 field allows you to specify up to 32 bytes of data about the entire asset. You could use it to specify specific asset details like title, deed location, court record etc. The asseturl gives you an option to reference a link that includes more details of the asset off-chain. The unitname flag is used to give a specific name to the asset. This is an up to eight character name for the asset. It is important to note that goal will allow you to create multiple assets with the same name for a specific creator, however those assets will have different asset indices. So the safest way to reference an asset is by its index --assetid, not its name --asset

goal asset create [flags]

Options

  
    --assetmetadatab64 string   base-64 encoded 32-byte commitment to asset metadata
    --asseturl string           URL where user can access more information about the asset (max 32 bytes)
    --creator string            Account address for creating an asset
    --defaultfrozen             Freeze or not freeze holdings by default
    --total uint                Total amount of tokens for created asset
    --unitname string           Name for the unit of asset

Options inherited from parent commands

  -d, --datadir stringArray   Data directory for the node
  -k, --kmddir string         Data directory for kmd
  -w, --wallet string         Set the wallet to be used for the selected operation

goal asset destroy

Destroy an asset family

Synopsis

You can destroy a created asset family as long as all units of the asset are the in the creator account asset holdings. The manager account is responsible for signing this transaction. No other key can delete the asset family..

goal asset destroy [flags]

Options

  
    --asset string       Unit name of asset to destroy
    --assetid uint       Asset ID to destroy
    --creator string     Account address for asset to destroy
    --manager string     Manager account to issue the destroy transaction (defaults to creator)

Options inherited from parent commands

  -d, --datadir stringArray   Data directory for the node
  -k, --kmddir string         Data directory for kmd
  -w, --wallet string         Set the wallet to be used for the selected operation

goal asset freeze

Freeze an asset

Synopsis

Freezing an account prevents the account from sending or receiving a specific asset. This action can only be taken by the freezer account or by the creator when creating the asset

goal asset freeze [flags]

Options

  
    --account string     Account address to freeze/unfreeze
    --asset string       Unit name of the asset being frozen
    --assetid uint       ID of the asset being frozen
    --creator string     Account address for asset creator
    --freeze             Freeze or unfreeze
    --freezer string     Address to issue a freeze transaction from

Options inherited from parent commands

  -d, --datadir stringArray   Data directory for the node
  -k, --kmddir string         Data directory for kmd
  -w, --wallet string         Set the wallet to be used for the selected operation

goal asset info

Output asset metadata

Synopsis

View all asset parameters using the goal asset info command.

goal asset info [flags]

Options

  
    --asset string     Unit name of the asset to look up
    --assetid uint     ID of the asset to look up
    --creator string   Account address of the asset creator

Options inherited from parent commands

  -d, --datadir stringArray   Data directory for the node
  -k, --kmddir string         Data directory for kmd
  -w, --wallet string         Set the wallet to be used for the selected operation

goal asset send

Transfer asset holdings.

Synopsis

You can send assets to another account but before doing so, the receiver has to authorize receiving your assets by creating, signing and sending a transaction with 0 units of the asset to itself (the receiver) -- see Receiving a new Algorand Standard Asset -- before being able to accept a specific asset. The safest way to reference as asset is by its id (--assetid) versus its name (--asset). You can create mulitple assets of the same name for a specific creator, but no two asset families can have the same asset index which is what is referred to in the --assetid. If you try to send an asset by referencing it's name, and there are multiple assets with the same name for a specific creator, goal will throw a Multiple matches for asset unit name "" in creator "" error.

goal asset send [flags]

Options

  
-a, --amount uint        The amount to be transferred (required), in microAlgos
    --asset string       Unit name of the asset being transferred
    --assetid uint       ID of the asset being transferred
    --clawback string    Address to issue a clawback transaction from (defaults to no clawback)
-c, --close-to string    Close asset account and send remainder to this address
    --creator string     Account address for asset creator

Options inherited from parent commands

  -d, --datadir stringArray   Data directory for the node
  -k, --kmddir string         Data directory for kmd
  -w, --wallet string         Set the wallet to be used for the selected operation