Universal Bridge: Improved API Response Schema and Speed
Universal Bridge API responses now include detailed transaction and token information

We just released one of our biggest updates yet to the Universal Bridge API. These changes will be coming soon to the SDK and UI components.
The new response schema includes a steps
field, which gives you all the info you need to build a comprehensive bridge and swap UI. This includes token metadata, price, expected execution time, input and output amounts, and the transactions to be executed.
A buy, sell, or transfer prepared quote will now look something like this:
{
"data": {
"id": "0x11cb09cf545d9c1c1cc12aa20aaee180a59336ec72701b148f452734c50f1bbf",
"originAmount": "17055594260",
"destinationAmount": "10000001000001000005",
"blockNumber": "22325874",
"timestamp": 1745340923953,
"estimatedExecutionTimeMs": 22000,
"intent": {
"originChainId": 1,
"originTokenAddress": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"destinationChainId": 8453,
"destinationTokenAddress": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
"amount": "10000001000001000005",
"sender": "0x2a4f24F935Eb178e3e7BA9B53A5Ee6d8407C0709",
"receiver": "0x2a4f24F935Eb178e3e7BA9B53A5Ee6d8407C0709"
},
"steps": [
{
"originToken": {
"chainId": 1,
"address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"symbol": "USDC",
"name": "USD Coin",
"decimals": 6,
"priceUsd": 0.999949,
"iconUri": "https://coin-images.coingecko.com/coins/images/6319/large/usdc.png?1696506694"
},
"destinationToken": {
"chainId": 8453,
"address": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
"symbol": "ETH",
"name": "Ether",
"decimals": 18,
"priceUsd": 1695.537726,
"iconUri": "https://assets.relay.link/icons/1/light.png"
},
"transactions": [
{
"chainId": 1,
"to": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"data": "0x095ea7b3000000000000000000000000f8ab2dbe6c43bf1a856471182290f91d621ba76d00000000000000000000000000000000000000000000000000000003f897b714",
"type": "eip1559",
"id": "0xe984ce73defcb35a2decb07b1cbadb57bea0e9bd4c3d919f286988daae5e98a8",
"action": "approval"
},
{
"type": "eip1559",
"to": "0xF8Ab2dBE6c43bf1a856471182290f91D621Ba76d",
"from": "0x2a4f24F935Eb178e3e7BA9B53A5Ee6d8407C0709",
"value": "0",
"data": "0x...",
"chainId": 1,
"action": "buy",
"id": "0x3b575d76157c50c94c61f0e1265dee784d00d2ad7502f1c6a6dba938e270b196",
"spender": "0xfCEF2Fe72413b65d3F393d278A714caD87512bcd"
}
],
"originAmount": "17055594260",
"destinationAmount": "10000001000001000005",
"estimatedExecutionTimeMs": 22000
}
]
}
}
Onramp quotes will now have the following schema:
{
"data": {
"id": "5a066908-82da-4d31-8dea-99c45f72e98b",
"link": "https://pay.coinbase.com/buy/select-asset?appId=41cbb2fb-8b35-45b9-949b-9672bc8edb78&addresses=%7B%220x2247d5d238d0f9d37184d8332aE0289d1aD9991b%22%3A%5B%22unichain%22%5D%7D&assets=%5B%22USDC%22%5D&defaultAsset=USDC&defaultNetwork=unichain&presetCryptoAmount=1716.321932&fiatCurrency=USD&partnerUserId=7d789de0-b4e0-4aac-84b4-5e13b11c896d",
"destinationAmount": "1000000100000010000",
"timestamp": 1745341089555,
"expiration": 1745344689547,
"intent": {
"chainId": 324,
"tokenAddress": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
"amount": "1000000100000010000",
"receiver": "0x2247d5d238d0f9d37184d8332aE0289d1aD9991b",
"onramp": "coinbase",
"currency": "USD",
"maxSteps": 2,
"excludeChainIds": []
},
"steps": [
{
"originToken": {
"chainId": 130,
"address": "0x078D782b760474a361dDA0AF3839290b0EF57AD6",
"symbol": "USDC",
"name": "USDCoin",
"decimals": 6,
"priceUsd": 0.999949,
"iconUri": "https://ethereum-optimism.github.io/data/USDC/logo.png"
},
"destinationToken": {
"chainId": 324,
"address": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
"symbol": "ETH",
"name": "Ether",
"decimals": 18,
"priceUsd": 1691.447,
"iconUri": "https://assets.relay.link/icons/1/light.png"
},
"transactions": [
{
"chainId": 130,
"to": "0x078D782b760474a361dDA0AF3839290b0EF57AD6",
"data": "0x095ea7b3000000000000000000000000f8ab2dbe6c43bf1a856471182290f91d621ba76d00000000000000000000000000000000000000000000000000000000664cfe8c",
"type": "eip1559",
"id": "0xb1ec1d50e1ef52ebb5fab91103f05605e9d24fb8ff26c4e5ef728e41ff82b788",
"action": "approval"
},
{
"type": "eip1559",
"to": "0xF8Ab2dBE6c43bf1a856471182290f91D621Ba76d",
"from": "0x2247d5d238d0f9d37184d8332aE0289d1aD9991b",
"value": "0",
"data": "0x...",
"chainId": 130,
"action": "buy",
"id": "0x1c66f9e7aefee5ffcc9b22595d07c3eedfa89deaec189707f73272f8e52d1d7b",
"spender": "0x078D782b760474a361dDA0AF3839290b0EF57AD6"
}
],
"originAmount": "1716321932",
"destinationAmount": "1000000100000010000",
"estimatedExecutionTimeMs": 2000
}
],
"currency": "USD",
"currencyAmount": 1716.321932
}
}
The steps
are to be completed after the use has done the initial onramp.
You can find all this and more in our API reference docs.
Features
steps
parameter for all quotes with prepared transactions and estimates- Faster approximate quote responses
- Onramping with post-onramp cross-chain swaps
- Fiat quote included in onramp responses
Bug Fixes
- Removed ZK chains from intermediate steps, due to inconsistent addresses when using smart wallets