Install provider-services CLI

Get set up with the provider-services CLI to deploy on Akash Network.

This guide walks you through installing the CLI, creating a wallet, and funding your account.


Install provider-services

Select your operating system:


Create an Account

Configure the name of your key:

Terminal window
AKASH_KEY_NAME=my-wallet

Verify the variable is set:

Terminal window
echo $AKASH_KEY_NAME

Set the keyring backend:

Terminal window
AKASH_KEYRING_BACKEND=os

Create an Akash account:

Terminal window
provider-services keys add $AKASH_KEY_NAME

Read the output and save your mnemonic phrase in a safe place.

Set your account address as a variable:

Terminal window
export AKASH_ACCOUNT_ADDRESS="$(provider-services keys show $AKASH_KEY_NAME -a)"
echo $AKASH_ACCOUNT_ADDRESS

Note that if you close your Terminal window this variable will not be saved.


Fund your Account

A minimum deposit of 0.5 AKT is required to deploy on Akash. A small transaction fee is also applied to deployment leases.

Get AKT tokens:


Configure your Network

Configure the base URL for the Akash Network:

Terminal window
AKASH_NET="https://raw.githubusercontent.com/akash-network/net/main/mainnet"

Version

Terminal window
AKASH_VERSION="$(curl -s https://api.github.com/repos/akash-network/provider/releases/latest | jq -r '.tag_name')"

Chain ID

Terminal window
export AKASH_CHAIN_ID="$(curl -s "$AKASH_NET/chain-id.txt")"

Network Node

Terminal window
export AKASH_NODE="$(curl -s "$AKASH_NET/rpc-nodes.txt" | shuf -n 1)"

Confirm Network Variables

Terminal window
echo $AKASH_NODE $AKASH_CHAIN_ID $AKASH_KEYRING_BACKEND

You should see something similar to:

http://135.181.60.250:26657 akashnet-2 os

Set Additional Environment Variables

VariableDescriptionRecommended Value
AKASH_GASGas limit to set per-transactionauto
AKASH_GAS_ADJUSTMENTAdjustment factor to be multiplied against the estimate1.25
AKASH_GAS_PRICESGas prices in decimal format to determine transaction fee0.025uakt
AKASH_SIGN_MODESignature modeamino-json
export AKASH_GAS=auto
export AKASH_GAS_ADJUSTMENT=1.25
export AKASH_GAS_PRICES=0.025uakt
export AKASH_SIGN_MODE=amino-json

Check your Account Balance

Terminal window
provider-services query bank balances --node $AKASH_NODE $AKASH_ACCOUNT_ADDRESS

You should see a response similar to:

balances:
- amount: "93000637"
denom: uakt
pagination:
next_key: null
total: "0"

Note: Balance is denominated in uAKT (AKT x 10^-6). In the example above, the account has a balance of 93 AKT.

Your account must have a minimum balance of 0.5 AKT to create a deployment.


Authentication

Akash provider services support two authentication methods:

JWT (JSON Web Tokens) is the default and recommended authentication method for provider-services v0.10.0+.

Advantages:

  • No blockchain transactions required
  • No certificate expiration to manage
  • Simpler setup
  • No additional costs

JWT tokens are automatically generated and managed by provider-services CLI. No setup required!

When you run deployment commands, the CLI automatically:

  1. Signs requests with your account’s private key
  2. Creates JWT tokens
  3. Sends authenticated requests to providers

You’re ready to deploy! Jump to Next Steps.


mTLS Certificate Authentication (Optional)

mTLS (mutual TLS) certificates are an alternative authentication method.

When to use mTLS:

  • You require certificate-based authentication
  • You’re integrating with systems that require X.509 certificates
  • You prefer blockchain-stored credentials

Generate Certificate

provider-services tx cert generate client --from $AKASH_KEY_NAME

Note: If it errors with Error: certificate error: cannot overwrite certificate, add --overwrite flag.

Publish Certificate to Blockchain

provider-services tx cert publish client --from $AKASH_KEY_NAME

Certificate Notes:

  • Certificates cost transaction fees (~0.01 AKT)
  • Valid for one year, then must be renewed
  • Stored on the Akash blockchain
  • Can be revoked and regenerated

Next Steps

Now that you’re set up, you can:


Troubleshooting

”command not found: provider-services”

The binary isn’t in your PATH. Try:

Terminal window
# Find where it's installed
which provider-services
# Add to PATH (Linux/macOS)
export PATH=$PATH:/path/to/provider-services

“account not found”

Your wallet hasn’t been created or funded yet. Go back to Create an Account and Fund your Account.

”insufficient fees”

Increase your gas prices:

Terminal window
export AKASH_GAS_PRICES=0.05uakt

RPC Node Issues

If the default RPC node is down, try an alternative:

Terminal window
export AKASH_NODE=https://rpc.akash.forbole.com:443
# or
export AKASH_NODE=https://akash-rpc.polkachu.com:443

Need Help?

footer-logo-dark

© Akash Network 2025 The Akash Network Authors Documentation Distributed under CC BY 4.0

Open-source Apache 2.0 Licensed.

GitHub v0.38.2

Privacy