There are a few steps involved in registering yourself on the staking dashboard!
# TESTNET
STAKING_REGISTRY_ADDRESS = 0xc3860c45e5F0b1eF3000dbF93149756f16928ADB
GSE_ADDRESS = 0xfb243b9112bb65785a4a8edaf32529accf003614
# MAINNET
STAKING_REGISTRY_ADDRESS = 0x042dF8f42790d6943F41C25C2132400fd727f452
GSE_ADDRESS = 0xa92ecFD0E70c9cd5E5cd76c50Af0F7Da93567a4f
# Aztec CLI v2.1.6
bash -i <(curl -s <https://install.aztec.network>)
aztec-up --version 2.1.6
# Register a provider with 5% commission rate
cast send $STAKING_REGISTRY_ADDRESS \\
"registerProvider(address,uint16,address)" \\
$PROVIDER_ADMIN_ADDRESS \\
500 \\
$REWARDS_RECIPIENT_ADDRESS \\
--rpc-url $RPC_URL \\
--private-key $YOUR_PRIVATE_KEY
You will need to extract the providerId from the Logs.
There is always 1 log, of which the 2nd topic is the providerId
blockHash 0xede208d3e4da3a8ff17c2cc47794379bd3f94540ea9b63b14dfe0c6d8b285866
blockNumber 9613926
contractAddress
cumulativeGasUsed 11466889
effectiveGasPrice 1075018
from 0xEfDb4C5f3a2f04e0cb393725bCAE2DD675cC3718
gasUsed 96497
logs [{"address":"0xc3860c45e5f0b1ef3000dbf93149756f16928adb","topics":["0x43fe1b4477c9a580955f586c904f4670929e184ef4bef4936221c52d0a79a75b","0x0000000000000000000000000000000000000000000000000000000000000002","0x000000000000000000000000efdb4c5f3a2f04e0cb393725bcae2dd675cc3718","0x00000000000000000000000000000000000000000000000000000000000001f4"],"data":"0x","blockHash":"0xede208d3e4da3a8ff17c2cc47794379bd3f94540ea9b63b14dfe0c6d8b285866","blockNumber":"0x92b266","blockTimestamp":"0x69147534","transactionHash":"0x01e6ca2ae9cdc3e1859a49e70ee6155209b3510757991ef3d11f8dad89ec0269","transactionIndex":"0x46","logIndex":"0x96","removed":false}]
logsBloom 0x04000000000000000000000010000000000000000000000000000000000000000400000000000004000000000000000080004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000002000000000000080000000100000000000000000000000000100000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000008000000000000000000000
root
status 1 (success)
transactionHash 0x01e6ca2ae9cdc3e1859a49e70ee6155209b3510757991ef3d11f8dad89ec0269
transactionIndex 70
type 2
blobGasPrice
blobGasUsed
authorizationList
to 0xc3860c45e5F0b1eF3000dbF93149756f16928ADB
In this example the providerId is 0x0000000000000000000000000000000000000000000000000000000000000002 encoded in Hex.
cast to-dec 0x0000000000000000000000000000000000000000000000000000000000000002
2 # prints the providerId
We recommend that you register a large number of keys (while also making sure they’re configured on a node) on the Staking Registry.
<aside> ⚠️
If you run out of keys, users can’t delegate tokens to you.
</aside>
aztec validator-keys new \\
--fee-recipient $AZTEC_ADDRESS \\
--staker-output \\ # this prints the correct output for registering your sequencer
--gse-address 0xfb243b9112bb65785a4a8edaf32529accf003614 \\
--l1-rpc-urls $RPC_URL
You can either manually build the command below following the docs that show the struct listed.
Or use this script to have it build and output the command for you.
https://gist.github.com/koenmtb1/1b665d055fbc22581c288f90cdc60d88