NEAR CLI

The NEAR Command Line Interface (CLI) is a tool that enables to interact with the NEAR network directly from the shell. Among other things, the NEAR CLI enables you to:

  • Login with a NEAR account
  • Deploy a contract
  • Interact and query information from a deployed contract

Installation


“`bash
npm install -g near-cli-rs@latest
“`

“`
$ cargo install near-cli-rs
“`

“`bash
curl –proto ‘=https’ –tlsv1.2 -LsSf https://github.com/near/near-cli-rs/releases/latest/download/near-cli-rs-installer.sh | sh
“`

“`bash
irm https://github.com/near/near-cli-rs/releases/latest/download/near-cli-rs-installer.ps1 | iex
“`


Configuration file

The directory with access keys and available connection networks are defined in the configuration file (near-cli/config.toml), which is located depending on the operating system in the following places:

  • macOS: $HOME/Library/Application Support (e.g. /Users/Alice/Library/Application Support)
  • Linux: $XDG_CONFIG_HOME or $HOME/.config (e.g. /home/alice/.config)
  • Windows: {FOLDERID*RoamingAppData} (e.g. C:UsersAliceAppDataRoaming)

You can learn more about working with the configuration file here.


Interactive mode

To use the near-cli simply run the following in your terminal.

$ near

You should then see the following. Use the arrow keys and hit enter or simply type out one of the available options to select an option

near-cli-rs

::important
We provide examples only of the most used commands. Such commands may have two versions – a full one and a short one. If you want to explore all options provided by near-cli use the interactive mode described above.

::

Account

This option will allow you to manage, control, and retrieve information on your accounts.

Summary

view-account-summary – view properties for an account.


“`bash
export ACCOUNT_ID=bob.testnet
near account view-account-summary $ACCOUNT_ID network-config testnet now
“`

“`bash
export ACCOUNT_ID=bob.testnet
near state $ACCOUNT_ID –networkId testnet
“`


Import

import-account – import existing account (a.k.a. “sign in”).


“`bash
near account import-account using-web-wallet network-config testnet
“`

“`bash
near login –networkId testnet
“`


Export

export-account – export existing account.


“`bash
export ACCOUNT_ID=bob.testnet
near account export-account $ACCOUNT_ID using-web-wallet network-config testnet
“`


Create

create-account – create a new account.


“`bash
export ACCOUNT_ID=bob.testnet
near account create-account sponsor-by-faucet-service $ACCOUNT_ID autogenerate-new-keypair save-to-keychain network-config testnet create
“`

“`bash
export ACCOUNT_ID=bob.testnet
near create-account $ACCOUNT_ID –useFaucet –networkId testnet
“`


Delete

delete-account – delete an account.


“`bash
export ACCOUNT_ID=bob.testnet
export BENEFICIARY_ID=alice.testnet

near account delete-account $ACCOUNT_ID beneficiary $BENEFICIARY_ID network-config testnet sign-with-keychain send
“`

“`bash
export ACCOUNT_ID=bob.testnet
export BENEFICIARY_ID=alice.testnet

near delete-account $ACCOUNT_ID $BENEFICIARY_ID –networkId testnet
“`


Keys

Showing, adding and removing account keys.

List keys

list-keys – view a list of keys for an account.


“`bash
export ACCOUNT_ID=bob.testnet
near account list-keys $ACCOUNT_ID network-config testnet now
“`

“`bash
export ACCOUNT_ID=bob.testnet
near list-keys $ACCOUNT_ID –networkId testnet
“`


Add key

add-key – add an access key to an account.


“`bash
export ACCOUNT_ID=bob.testnet
near account add-key $ACCOUNT_ID grant-full-access use-manually-provided-public-key ed25519:CXqAs8c8kZz81josLw82RQsnZXk8CAdUo7jAuN7uSht2 network-config testnet sign-with-keychain send
“`


“`bash
export ACCOUNT_ID=bob.testnet
near add-key $ACCOUNT_ID ed25519:CXqAs8c8kZz81josLw82RQsnZXk8CAdUo7jAuN7uSht2 –networkId testnet
“`


Delete key

delete-keys – delete an access key from an account.


“`bash
export ACCOUNT_ID=bob.testnet
near account delete-keys $ACCOUNT_ID public-keys ed25519:HdkFZFEPoWfgrrLK3R4t5dWtNoLC8WymBzhCXoP3zrjh network-config testnet sign-with-keychain send
“`

“`bash
export ACCOUNT_ID=bob.testnet
near delete-key $ACCOUNT_ID ed25519:HdkFZFEPoWfgrrLK3R4t5dWtNoLC8WymBzhCXoP3zrjh –networkId testnet
“`


Tokens

This will allow you to manage your token assets such as NEAR, FTs and NFTs.

Send NEAR

send-near – transfers NEAR to a specified recipient in units of NEAR or yoctoNEAR.


“`bash
export ACCOUNT_ID=bob.testnet
export RECEIVER_ID=alice.testnet
near tokens $ACCOUNT_ID send-near $RECEIVER_ID ‘0.5 NEAR’ network-config testnet sign-with-keychain send
“`

“`bash
export ACCOUNT_ID=bob.testnet
export RECEIVER_ID=alice.testnet

near send-near $ACCOUNT_ID $RECEIVER_ID 0.5 –networkId testnet
“`


Send FT

send-ft – transfer Fungible Tokens to a specified user.


“`bash
export ACCOUNT_ID=bob.testnet
export RECEIVER_ID=alice.testnet
export FT_CONTRACT_ID=0c97251cd1f630c444dbusdt.testnet

near tokens $ACCOUNT_ID send-ft $FT_CONTRACT_ID $RECEIVER_ID amount-ft ‘1 USDT’ prepaid-gas ‘100.0 Tgas’ attached-deposit ‘1 yoctoNEAR’ network-config testnet sign-with-keychain send
“`


Send NFT

send-nft – transfers NFTs between accounts.


“`bash
export ACCOUNT_ID=bob.testnet
export RECEIVER_ID=alice.testnet
export NFT_CONTRACT_ID=nft.examples.testnet

near tokens $ACCOUNT_ID send-nft $NFT_CONTRACT_ID $RECEIVER_ID 1 –prepaid-gas ‘100.0 Tgas’ –attached-deposit ‘1 yoctoNEAR’ network-config testnet sign-with-keychain send
“`


View NEAR balance

view-near-balance – view the balance of NEAR tokens.


“`bash
export ACCOUNT_ID=bob.testnet
near tokens $ACCOUNT_ID view-near-balance network-config testnet now
“`



View FT balance

view-ft-balance – view the balance of Fungible Tokens.


“`bash
export ACCOUNT_ID=bob.testnet
export FT_CONTRACT_ID=0c97251cd1f630c444dbusdt.testnet
near tokens $ACCOUNT_ID view-ft-balance $FT_CONTRACT_ID network-config testnet now
“`


View NFT balance

view-nft-assets – view the balance of NFT tokens.


“`bash
export ACCOUNT_ID=bob.testnet
export NFT_CONTRACT_ID=nft.examples.testnet
near tokens $ACCOUNT_ID view-nft-assets $NFT_CONTRACT_ID network-config testnet now
“`


Contract

This option allows you to manage and interact with your smart contracts.

Call

call-function – execute function (contract method).


“`bash
# View method
export CONTRACT_ID=nft.examples.testnet
near contract call-function as-read-only $CONTRACT_ID nft_tokens json-args ‘{“from_index”: “0”, “limit”: 2}’ network-config testnet now

# Call method
export ACCOUNT_ID=bob.testnet
near contract call-function as-transaction $CONTRACT_ID nft_mint json-args ‘{“metadata”: {“copies”: 1, “description”: “The Team Goes”, “media”: “https://bafybeidl4hjbpdr6u6xvlrizwxbrfcyqurzvcnn5xoilmcqbxfbdwrmp5m.ipfs.dweb.link/”, “title”: “GO TEAM”}, “receiver_id”: “bob.testnet”, “token_id”: “5895”}’ prepaid-gas ‘100.0 Tgas’ attached-deposit ‘0.1 NEAR’ sign-as $ACCOUNT_ID network-config testnet sign-with-keychain send
“`

“`bash
# View method
export CONTRACT_ID=nft.examples.testnet
near view $CONTRACT_ID nft_tokens ‘{“from_index”: “0”, “limit”: 2}’ –networkId testnet

# Call method
export ACCOUNT_ID=bob.testnet
near call $CONTRACT_ID nft_mint ‘{“metadata”: {“copies”: 1, “description”: “The Team Goes”, “media”: “https://bafybeidl4hjbpdr6u6xvlrizwxbrfcyqurzvcnn5xoilmcqbxfbdwrmp5m.ipfs.dweb.link/”, “title”: “GO TEAM”}, “receiver_id”: “bob.testnet”, “token_id”: “5896”}’ –deposit 0.1 –useAccount $ACCOUNT_ID –networkId testnet
“`


Deploy

deploy – add a new contract code.


“`bash
export CONTRACT_ID=contract.testnet
near contract deploy $CONTRACT_ID use-file ../target/near/contract.wasm without-init-call network-config testnet sign-with-keychain send
“`

“`bash
export CONTRACT_ID=contract.testnet
near deploy $CONTRACT_ID ../target/near/contract.wasm –networkId testnet
“`


Inspect

inspect – get a list of available function names.


“`bash
export CONTRACT_ID=nft.examples.testnet
near contract view-storage $CONTRACT_ID all as-text network-config testnet now
“`

“`bash
export CONTRACT_ID=nft.examples.testnet
near storage $CONTRACT_ID –finality final –utf8 –networkId testnet
“`


Transaction

Operate transactions.

View status

view-status – view a transaction status.


“`bash
near transaction view-status BFrVVtjqD2p1zYX1UCvn4nJpy7zPHpY5cTgQaKCZjBvw network-config testnet
“`

“`bash
near tx-status BFrVVtjqD2p1zYX1UCvn4nJpy7zPHpY5cTgQaKCZjBvw –networkId testnet
“`


Config

Manage the connection parameters inside the config.toml file for near-cli.

This will allow you to change or modify the network connections for your CLI.

Show connections

show-connections – show a list of network connections.


“`bash
near config show-connections
“`


Edit connection

edit-connection – edit a network connection.


“`bash
near config edit-connection testnet –key rpc_url –value https://test.rpc.fastnear.com
“`


:::important
We provide examples only of the most used commands. If you want to explore all options provided by near-cli use the interactive mode.
::
Generate comment with AI 2 nL
Scroll to Top