Fetch Native

Overview

ASI is the native asset of the Fetch Native blockchain. It utilizes:

  • Account model
  • EcDSA signature algorithm

Fetch Native is a Layer 1 focused on AI agents and decentralized machine learning. It's part of the Artificial Superintelligence (ASI) Alliance and uses Proof-of-Stake (PoS) consensus. The platform supports CosmWasm smart contracts, AI agent registration and interaction via the "Agentverse" and "Almanac".

Explorer

https://hub.fetch.ai/

Wallets Types

BitGo enables holding ASI in the following wallet types:

Multisig ColdMultisig HotMPC ColdMPC Hot
Custodial
Self Managed

Ticker Symbols

MainnetTestnet
asitasi

Faucet

Testnet tasi coins can be requested from the Fetch Native testnet explorer.

Units

FET is divisible by 10-18 and the base unit is AFET:

  • 1 fet = 1,000,000,000,000,000,000 afet
  • 1 afet = 0.000000000000000001 fet

ASI balances can be in either integer or string format. However, BitGo recommends using string format to ensure values don't exceed the programmable number limit.

Tokens

The Fetch blockchain doesn't natively support tokens.

Fees

ASI has the following fees:

  • Minimum fee = 0.0001 FET
  • Default fee rate = 0.0001 FET

Address Format

Fetch addresses follow the format: fetch1<38-character-bech32-body>. All addresses are exactly 44 characters in length and begin with the fixed prefix fetch1. This format adheres to the following regular expression:

1 /^(fetch)1(['qpzry9x8gf2tvdw0s3jn54khce6mua7l]{38})$/

Memo ID Support

  • Optionally, a ?memoId=<n> query parameter can be appended to the address for use cases such as identifying transaction metadata. Here, <n> can be any integer.
  • Using memoId-based addressing eliminates the need to generate multiple deposit addresses per user. A single static address can be reused safely across users and use cases, with the memoId serving as the unique identifier.
  • Since Fetch uses memoId-based receive addresses, manual consolidation is not required.

Create Wallet

  • cURL
  • JavaScript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 export BITGO_EXPRESS_HOST="<YOUR_LOCALHOST>" export COIN="tasi" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" export LABEL="<DESIRED_WALLET_NAME>" export PASSPHRASE="<YOUR_BITGO_LOGIN_PASSPHRASE>" export ENTERPRISE_ID="<YOUR_ENTERPRISE_ID>" curl -X POST \ http://$BITGO_EXPRESS_HOST/api/v2/$COIN/wallet/generate \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "label": "'"$LABEL"'", "passphrase": "'"$PASSPHRASE"'", "enterprise": "'"$ENTERPRISE_ID"'", "disableTransactionNotifications": true, "disableKRSEmail": true }'

Create Address

  • cURL
  • JavaScript
1 2 3 4 5 6 7 8 export COIN="tasi" export WALLET_ID="<YOUR_WALLET_ID>" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" curl -X POST \ https://app.bitgo-test.com/api/v2/$COIN/wallet/$WALLET_ID/address \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN"

Estimate Fee

  • cURL
  • JavaScript
1 2 3 4 5 6 7 export COIN="tasi" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" curl -X GET \ https://app.bitgo-test.com/api/v2/$COIN/tx/fee \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN"

Transact

  • cURL
  • cURL (send to many)
  • JavaScript
  • JavaScript (send to many)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 export BITGO_EXPRESS_HOST="<YOUR_LOCALHOST>" export COIN="tasi" export WALLET_ID="<YOUR_WALLET_ID>" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" export ADDRESS="<DESTINATION_ADDRESS>" export AMOUNT="<AMOUNT_IN_BASE_UNITS>" export WALLET_PASSPHRASE="<YOUR_WALLET_PASSPHRASE>" curl -X POST \ http://$BITGO_EXPRESS_HOST/api/v2/$COIN/wallet/$WALLET_ID/sendcoins \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "address": "'"$ADDRESS"'", "amount": "'"$AMOUNT"'", "walletPassphrase": "'"$WALLET_PASSPHRASE"'" }'