ACP-267: Primary Network validator uptime requirement increases from 80% to 90%.Read the proposal

Command Reference

Complete reference for all Platform CLI commands and flags

Global Flags

Available on all commands:

FlagShortDescriptionDefault
--network-nNetwork: fuji or mainnetfuji
--key-nameLoad key from keystore by name
--ledgerUse Ledger hardware walletfalse
--ledger-indexLedger BIP44 address index0
--rpc-urlCustom RPC URL (overrides --network)
--network-idNetwork ID for custom RPCauto-detect
--allow-insecure-httpAllow plain HTTP for non-local endpoints (unsafe)false
--private-key-kPrivate key (deprecated, prefer --key-name)

version

platform version

Prints the CLI version.

keys

Manage persistent keys stored in ~/.platform/keys/.

keys generate

platform keys generate --name <name> [--encrypt=false]
FlagDescriptionDefault
--nameKey name (required, 1-64 chars: [a-zA-Z0-9._-], starts with alphanumeric)
--encryptEncrypt with password (AES-256-GCM + Argon2id)true

keys import

platform keys import --name <name> [--private-key <key>] [--encrypt=false]
FlagDescriptionDefault
--nameKey name (required)
--private-keyPrivate key string (prompted if omitted)
--encryptEncrypt with passwordtrue

keys list

platform keys list [--show-addresses]
FlagDescription
--show-addressesShow P-Chain and EVM addresses

keys export

platform keys export --name <name> --output-file <path>
platform keys export --name <name> --unsafe-stdout
FlagDescriptionDefault
--nameKey name (required)
--formatOutput format: cb58 or hexcb58
--output-fileWrite key to file (permissions forced to 0600)
--unsafe-stdoutPrint private key to stdout (unsafe, required if no --output-file)false

keys delete

platform keys delete --name <name> [--force]
FlagDescription
--nameKey name (required)
--forceSkip confirmation prompt

keys default

platform keys default [--name <name>]

Shows current default if --name is omitted. Sets default if --name is provided.

wallet

wallet balance

platform wallet balance

Displays P-Chain address and AVAX balance.

wallet address

platform wallet address

Displays P-Chain and EVM addresses derived from the key.

transfer

transfer send

platform transfer send --to <address> --amount <avax>
FlagDescription
--toDestination P-Chain address (required)
--amountAmount in AVAX
--amount-navaxAmount in nAVAX (mutually exclusive with --amount)

transfer p-to-c

platform transfer p-to-c --amount <avax>

One-step P-Chain to C-Chain transfer (export + import).

FlagDescription
--amountAmount in AVAX
--amount-navaxAmount in nAVAX

transfer c-to-p

platform transfer c-to-p --amount <avax>

One-step C-Chain to P-Chain transfer (export + import).

transfer export

platform transfer export --from <chain> --to <chain> --amount <avax>

Manual export step for two-step transfers.

FlagDescription
--fromSource chain: p or c (required)
--toDestination chain: p or c (required)
--amountAmount in AVAX
--amount-navaxAmount in nAVAX

transfer import

platform transfer import --from <chain> --to <chain>

Manual import step for two-step transfers.

FlagDescription
--fromSource chain: p or c (required)
--toDestination chain: p or c (required)

validator

validator add

platform validator add --node-id <id> --stake <avax>
FlagDescriptionDefault
--node-idNode ID (required)
--stakeStake in AVAX (required)
--durationValidation duration336h
--startStart time (RFC3339 or now)now
--delegation-feeFee percentage (0.02 = 2%)0.02
--reward-addressReward addressown address
--bls-public-keyBLS public key hex (recommended)
--bls-popBLS proof of possession hex (recommended)
--node-endpointNode endpoint to auto-fetch BLS

validator delegate

platform validator delegate --node-id <id> --stake <avax>
FlagDescriptionDefault
--node-idNode ID to delegate to (required)
--stakeStake in AVAX (required)
--durationDelegation duration336h
--startStart time (RFC3339 or now)now
--reward-addressReward addressown address

subnet

subnet create

platform subnet create

Creates a new subnet owned by the wallet address. No additional flags required.

subnet transfer-ownership

platform subnet transfer-ownership --subnet-id <id> --new-owner <address>
FlagDescription
--subnet-idSubnet ID (required)
--new-ownerNew owner P-Chain address (required)

subnet convert-l1

platform subnet convert-l1 --subnet-id <id> --chain-id <id>
FlagDescriptionDefault
--subnet-idSubnet ID to convert (required)
--chain-idChain ID for validator manager (required)
--managerValidator manager contract address (hex)
--contract-addressAlias for --manager
--validatorsComma-separated node addresses (auto-discovery mode)
--validator-node-idsManual mode: comma-separated NodeIDs
--validator-bls-public-keysManual mode: comma-separated BLS public keys
--validator-bls-popsManual mode: comma-separated BLS PoPs
--validator-balanceBalance per validator in AVAX1.0
--mock-validatorUse mock validator for testingfalse

l1

l1 register-validator

platform l1 register-validator --balance <avax> --pop <hex> --message <hex>
FlagDescription
--balanceInitial balance in AVAX (required)
--popBLS proof of possession hex (required)
--messageWarp message hex (required)

l1 set-weight

platform l1 set-weight --message <hex>
FlagDescription
--messageWarp message authorizing weight change (required)

l1 add-balance

platform l1 add-balance --validation-id <id> --balance <avax>
FlagDescription
--validation-idValidation ID (required)
--balanceAVAX to add (required)

l1 disable-validator

platform l1 disable-validator --validation-id <id>
FlagDescription
--validation-idValidation ID to disable (required)

chain

chain create

platform chain create --subnet-id <id> --genesis <file>
FlagDescriptionDefault
--subnet-idSubnet ID (required)
--genesisGenesis JSON file path (required, max 1 MB)
--nameChain namemychain
--vm-idVM IDSubnet-EVM

node

node info

platform node info --ip <address>
FlagDescription
--ipNode IP address or hostname (required)

Returns Node ID, BLS Public Key, and BLS Proof of Possession.

Is this guide helpful?