5.8 KiB
title | description |
---|---|
Get Ether and Ocean Tokens | A tutorial about how to get Ether and Ocean Tokens. |
If you want to interact with an Ethereum-based network that supports Ocean Protocol, then you'll eventually need Ether or Ocean Tokens for that network. (Every Ethereum-based network has its own Ether and maybe its own Ocean Tokens, and you can't use those in other networks.)
At the time of writing, there were some public testnets you could use to test an Ocean Protocol application. For more information about those, see the page about testnets.
Get a Compatible Wallet
You will need a wallet that can hold Ether (for any Ethereum network) and Ocean Tokens (for any Ethereum network). For the purpose of this tutorial, you can use MetaMask. See our tutorial about how to set up MetaMask.
In MetaMask, be sure to switch from the Main Ethereum Network to whatever network you're using.
Get Ether
Get Ether for the Kovan Testnet
You can get Kovan Ether (KEth), for the Kovan Testnet, from a Kovan faucet: see the official list of Kovan faucets. You have to give the faucet your Kovan address (wallet account address). You can get that from MetaMask. It's a string that looks like:
0xa0A9d7f78bF293514e7cA2789A0Af689eEC99282
Get Ether for the Nile Testnet
If you're connecting to the Nile testnet, then you can send get some Nile Ether in <YOUR ADDRESS>
using the following command (a long command that wraps around):
curl -XPOST --data '{"address": "<YOUR ADDRESS>", "agent": "curl"}' -H "Content-Type: application/json" https://faucet.nile.dev-ocean.com/faucet
In the above command you only need to replace <YOUR ADDRESS>
with your own Ethereum address.
The Nile faucet has a limit of one request every 24 hours for the same Ethereum address. But don't worry, the Ether given is more than enough for interacting with the network.
Get Ether for a Local Ganache-Based Testnet
If you're running a local Ganache-based testnet, then it creates several accounts at network launch time, and gives each of them some Ether. The addresses and private keys of those accounts should be shared (to logs or the console) during the launch process. You can use those accounts and their Ether.
Get Ether for a Local Spree Testnet
Option 1: If you're running a local Spree testnet, then you can send some Spree Ether to <YOUR ADDRESS>
using the following command (a long command that wraps around):
curl --data '{"jsonrpc":"2.0","method":"personal_sendTransaction","params":[{"from":"0x00Bd138aBD70e2F00903268F3Db08f2D25677C9e","to":"<YOUR ADDRESS>","value":"0x7FFFFFFFFFFFFFFFFFF"}, "node0"],"id":0}' -H "Content-Type: application/json" -X POST localhost:8545
That command uses Ethereum's JSON RPC API. You can also create a new account using the Parity Ethereum CLI. See the Parity Ethereum CLI documentation.
Option 2: By default, the Spree testnet is configured to bootstrap ten accounts with a decent amount of Spree Ether in each one. To get access to those accounts, you can import the following seed phrase into MetaMask (e.g. by logging out and then clicking "Import using account seed phrase"):
taxi music thumb unique chat sand crew more leg another off lamp
Details about the bootstrapped accounts can be found in the README.md file in the Barge repository. They're the ones of type "mnemonic."
WARNING! Never use any of those accounts in any mainnet. They are for testing purposes only.
Option 3: Another option is to run the Ocean faucet server on your machine, with default configuration settings. The default settings enable it to dispense Spree Ether. To ask the faucet to send some Spree Ether to <YOUR ADDRESS>
, use the command (a long command that wraps around):
curl --data '{"address":"<YOUR ADDRESS>"}' -H "Content-Type: application/json" -X POST localhost:3001/faucet
Get Ocean Tokens
See the page about Ocean Tokens.
Get Mainnet Ocean Tokens
There are several ways to acquire some of the Ocean Tokens in the initial circulating supply, including:
- participation in the seed round
- participation in the pre-sale
- participation in the token sale
- completion of a bounty
In the future, it will become possible to earn Mainnet Ocean Tokens as network rewards. The Ocean Protocol Technical Whitepaper explains that in more detail.
Get Testnet Ocean Tokens
All Squid libraries have methods to request Ocean Tokens. They work by calling the "Dispenser" keeper contract, a contract which is only deployed to testnets. Therefore they will only work in testnets. They're documented in the following places:
- The squid-js docs for Account.requestTokens()
- The squid-py docs for:
- the squid_py.ocean.ocean_tokens module: see the
request()
method. - the squid_py.ocean.ocean_accounts module: see the
request_tokens()
method.
- the squid_py.ocean.ocean_tokens module: see the
- The squid-java docs: click "All Classes" then "AccountsManager" then scroll to the bottom of the Class AccountsManager page where you'll find the
requestTokens()
method.
The Tools & Examples page has links to example Squid code (in all of the languages), including examples of using the above methods.