Protocol Overview
The Umbria ecosystem has two major protocols:
- A Cross-chain Asset Bridge; enabling the transfer of assets between otherwise incompatible blockchains and cryptocurrency networks.
- A Staking Pool, where users can earn fees on their crypto-assets by providing liquidity to the bridge.
Bridge Liquidity
Liquidity providers can provide liquidity to the Umbria Narni Bridge and earn fees on their crypto assets.
The Umbria Narni Bridge enables the cross-chain migration of users' assets between two networks by holding liquidity on both networks. The bridge mechanism receives an asset "with one hand" on the starting network and "gives with the other hand" to the same wallet address on the provided network. This enables certain types of cross-chain transactions which would otherwise be rendered impossible by constraints imposed by network validators, namely cost and speed. The Narni bridge negates these cumbersome elements by calling on user-provided asset liquidity on the various networks, while still maintaining the cryptographic assurances of an oracle.
Users can provide liquidity to the Narni bridge, and earn fees on their assets whenever anyone bridges their assets between cryptocurrency networks. Users only need to provide liquidity for one asset at a time to earn fees.
Whenever someone bridges assets between two cryptocurrency networks using the Umbria Narni Bridge, the liquidity providers of that asset receive their share of a 0.2% fee.
Liquidity providers can remove their liquidity at any time from the network to which they provided the asset. The user must pay the transaction fee for the bridge to return their asset to them. Users do not need to harvest manually, fees from their pooled liquidity is automatically added to their staked liquidity every five minutes. When a user removes their liquidity from the pool, they automatically harvest.
Users can send their liquidity to the Narni bridge through the website, or send the funds directly to the appropriate Liquidity Address. Each liquidity address represents the liquidity pools for each bridge.
- Ethereum/Matic bridge pool: 0x18C6f86ee9f099DeFe10b4201e48B2eF53BeAbd0
- Ethereum/Binance Smart Chain bridge pool: 0x862F84A7cD54c8EDF1aFc98a7a676B1eA6A27Df5
Entering The Farm
Users automatically start farming UMBR when they stake their LP tokens in the respective farm. Users pay a small network fee for interacting with the farm and adding their LP tokens. The assets will earn UMBR every block until the user removes their LP tokens. The LP tokens are still earning fees on the underlying assets while being staked in the farm.
Harvesting
The UMBR accrued by staking the LP tokens in the farm is increased every block. A user can choose to harvest the UMBR they have earned by pressing the Harvest button in the farm, and paying a network fee to interact with the smart contracts which underpin the farm.
Exiting the Farm
When a user exits the farm, they automatically harvest the remaining UMBR earned for providing the LP tokens. The user can enter and exit the farm at any time, but must pay the network fee for interacting with the underlying smart contracts.
Connect Portal
Users can use the Connect Portal to connect their Metamask wallet to any EVM compatible network
The Umbria Connect portal provides an easy-to-use network connection interface for every major EVM compatible chain. By using the connect portal, users can quickly configure their wallet to interact with their assets on the desired network, without having to manually configure RPC connections. The connect portal also provides useful information regarding the connected chain, such as chainID and a link to the network's native blockchain explorer, if such an explorer exists.
Supported Chains
You can find a JSON encoded list of all supported networks / chains here.
Bridge Pool
Users can provide asset liquidity to the Narni Bridge Pool, and earn high interest on their assets whenever someone bridges between cryptocurrency networks. The bridge uses liquidity supplied by liquidity providers to facilitate asset migration (bridging) across networks. Whenever bridging occurs, liquidity providers earn their share of a 0.2% bridging fee, while liquidity providers of the UMBR token earn their share of a 0.3% bridging fee. Liquidity providers can provide a single asset to the bridge, and earn interest in the asset they supplied. Stakers of UMBR tokens earn interest in all of the assets supported by the bridge.
New assets will be added to the bridge, and new liquidity pools with distinct APYs will become available over time. Assets that are frequently bridged accrue higher fee generation for the liquidity providers and UMBR stakers.
The Umbria bridge pool is a no-impermanent-loss pool; liquidity providers do not lose part of the up-side if the value of the staked assets increase.
Bridge Harvesting
Users do not need to manually harvest the rewards for providing liquidity to the bridge. The bridge automatically adds rewards to the staking balance every five minutes.
Users will accrue the rewards of their liquidity provision on the destination network of a bridge migration. For example, if a user bridges from the Ethereum network to the MATIC network, a liquidity provider will receive their reward on the MATIC network.
Get Number of Liquidity Providers
Get the number of liquidity providers for a particular asset on a single network
GET
Example Call:
/api/pool/getNumParticipants/?network=ethereum&tokenAddress=0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0
Example Result:
1
Get Staked
Get the unharvested rewards of an address for a particular asset on a single network
GET
Example Call:
/api/pool/getStaked/?tokenAddress=0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0&userAddress=0xb279403e9749f2964b00eD868008eDfe84432Ff6&network=ethereum
Example Result:
0.000450977606177606
Get Harvest Nonce
Get the nonce value required to sign the transaction for removing liquidity
GET
Example Call:
/api/pool/getHarvestNonce/?tokenAddress=0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0&userAddress=0xb279403e9749f2964b00eD868008eDfe84432Ff6&network=ethereum
Example Result:
{"error":"","address":"0xEe0861faBEdc0BD4E41fe9fE97E6Cd1c7e4B717a","contractAddress":"0x2e4b0fb46a46c90cb410fe676f24e466753b469f","network":"matic","nonce":"RK7pOL59a7OazsidXiuLhBa8YckQm2JYQDHzuIZTV8MHPrUnKiTUmqlOF8Otgf9K"}
Verify Harvest Signature (Unstake)
Unstake liquidity by verifying ownership of the wallet address
GET
Example Call:
/api/pool/signUnstakeRequest/?userAddress=0xb279403e9749f2964b00eD868008eDfe84432Ff6&nonce=NpAPDiafpXtrc9RSBt1oK2hPJeCLEB99fcblkWoZXwifH5d0qJwwDAnz9clh5Uq0$signature=0x9f8a7f30aeeb402dc1858fd914be5cf47600e0d925b70b0b4b7b915bb3ab28e7326656a26aa7116ea77dd671e114255c9ee8e906946ec36ea5156cc6e5e15cbf1b
Example Result:
{"error":"","address":"0xEe0861faBEdc0BD4E41fe9fE97E6Cd1c7e4B717a","contractAddress":"0x2e4b0fb46a46c90cb410fe676f24e466753b469f","network":"matic","nonce":"RK7pOL59a7OazsidXiuLhBa8YckQm2JYQDHzuIZTV8MHPrUnKiTUmqlOF8Otgf9K"}
Get APY All
Get the APY (annual percentage yield) for all assets on a single network
GET
Example Call:
/api/pool/getApyAll/?network=ethereum
Example Result:
0.000000000000000000
Get Staked
Get the volume of liquidity currently provided by an address, for a particular asset on a single network
GET
Example Call:
/api/pool/getStaked/?userAddress=0xb279403e9749f2964b00eD868008eDfe84432Ff6&tokenAddress=0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0&network=ethereum
Example Result:
{"error":"","amount":"92000000000000000","tokenAddress":"0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0","network":"ethereum"}
Get TVL All
Get the total value of locked liquidity currently provided for all assets on a single network
GET
Example Call:
/api/pool/getTvlAll/?network=ethereum
Example Result:
{"network":"ethereum","totalValue":"1398.348960000000000000","assets":{"ETH":"1398.08996","MATIC":"0.25900"},"error":""}
Get Availability
Check the availability of the api
GET
Example Call:
/api/getAvailability/?
Example Result:
{"maintenance":0,"error":""}
Get Transaction Info
Get the currenct status of a Narni Bridge transaction
GET
Example Call:
/api/bridge/getTransactionInfo/?txhash=0x0d952f349e5e710065a6d3e50ae4172e8291b4adf031540f1b6dfbd9497d984e
Example Result:
{"tokenAddress":"0xETH","blockhash":"0x288c54b29dae03f38e01cba5ccc73f6aeeb7584a5d835bf452a12388107bf2cb","bridgetxhash":"0x8cf2e57af080e6aa71da29b13266e9a90709cc58eaf112a160db5e4c7e2a8f4c","fromaddress":"0x7F61eF56Cd4D1a827C1Fee710C9df46aD7395E82","amount":"15000000000000000","asset":"ether","asset_sent":1,"time":"2022-01-07 14:44:23","error":""}
Get Available Liquidity All
Get the amount of liquidity available for a single transaction in each asset on each network
GET
Example Call:
/api/bridge/getAvailableLiquidityAll/?
Example Result:
[{"name":"ethereum","contractAddress":"0xETH","totalLiquidity":"2223400000000000","network":"ethereum"},{"name":"matic","contractAddress":"0xMATIC","totalLiquidity":"10000000000000000","network":"matic"},{"name":"umbria","contractAddress":"0xa4bBE66f151B22B167127c770016b15fF97Dd35C","totalLiquidity":"8500000000000000000","network":"ethereum"},{"name":"matic","contractAddress":"0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0","totalLiquidity":"47208000000000000000","network":"ethereum"},{"name":"umbria","contractAddress":"0x2e4b0Fb46a46C90CB410FE676f24E466753B469f","totalLiquidity":"18987700000000000000","network":"matic"}]
Get Available Liquidity
Get the amount of liquidity available for a single transaction in each asset on each network
GET
Example Call:
/api/bridge/getAvailableLiquidity/?network=matic¤cy=0xMATIC
Example Result:
{"name":"matic","totalLiquidity":"159000000000000000"}
Get Network Fee
Get the network fee cost for the bridge transaction
GET
Example Call:
/api/bridge/getGasPrice/?network=ethereum
Example Result:
{"gasPrice":"0.000000026000000000","txPrice":"0.000546000000000000","error":"","network":"ethereum"}