{"openapi":"3.0.3","info":{"title":"Vaults.fyi Alpha API","version":"0.1.0","description":"Alpha API endpoints for features in early access. These endpoints are not included in the main API documentation and may change without notice."},"components":{"securitySchemes":{"apiKey":{"type":"apiKey","name":"x-api-key","in":"header"}},"schemas":{}},"paths":{"/alpha/{network}/{vaultId}/holders":{"get":{"tags":["Holders"],"description":"Retrieves current holders for a specific vault with their balances (converted to LP token amounts for rebasing vaults)","parameters":[{"schema":{"type":"integer","minimum":0,"default":0},"in":"query","name":"page","required":false,"description":"Page number (starting from 0)"},{"schema":{"type":"integer","exclusiveMinimum":true,"minimum":0,"maximum":1000,"default":100},"in":"query","name":"perPage","required":false,"description":"Number of items per page"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"network","required":true,"description":"Include only vaults with provided network(name or CAIP)"},{"schema":{"type":"string"},"in":"path","name":"vaultId","required":true,"description":"Vault id of the vault for which the data will be returned"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"itemsOnPage":{"type":"integer","description":"Number of items on the current page"},"nextPage":{"type":"integer","description":"Next page number"},"data":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the holder"},"balance":{"type":"string","description":"Balance of the vault shares held by the holder"}},"required":["address","balance"],"additionalProperties":false,"description":"Array of items on the current page"}}},"required":["itemsOnPage","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/markets/transactions/context/{userAddress}/{network}/{marketId}/{assetAddress}":{"get":{"tags":["Borrow Markets"],"description":"Retrieves context for borrow market supply, withdraw, borrow, and repay transactions.","parameters":[{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"in":"path","name":"network","required":true,"description":"Canonical network slug"},{"schema":{"type":"string","minLength":1},"in":"path","name":"marketId","required":true,"description":"Canonical market identifier"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"Address of the user whose borrow market transactions context is requested"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"assetAddress","required":true,"description":"Canonical asset address within the borrow market"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"marketId":{"type":"string"},"name":{"type":"string"},"network":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"],"description":"Name of the network"},"chainId":{"type":"integer","description":"Chain ID of the network"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$","description":"CAIP-2 of the network"}},"required":["name","chainId","networkCaip"],"additionalProperties":false},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"}},"required":["name"],"additionalProperties":false},"currentSupplyStep":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"supplySteps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"actions":{"type":"array","items":{"type":"string","enum":["approve","supply","withdraw","borrow","repay"]}},"actionsUrl":{"type":"string"}},"required":["name","actions","actionsUrl"],"additionalProperties":false}},"currentWithdrawStep":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"withdrawSteps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"actions":{"type":"array","items":{"type":"string","enum":["approve","supply","withdraw","borrow","repay"]}},"actionsUrl":{"type":"string"}},"required":["name","actions","actionsUrl"],"additionalProperties":false}},"currentBorrowStep":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"borrowSteps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"actions":{"type":"array","items":{"type":"string","enum":["approve","supply","withdraw","borrow","repay"]}},"actionsUrl":{"type":"string"}},"required":["name","actions","actionsUrl"],"additionalProperties":false}},"currentRepayStep":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"repaySteps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"actions":{"type":"array","items":{"type":"string","enum":["approve","supply","withdraw","borrow","repay"]}},"actionsUrl":{"type":"string"}},"required":["name","actions","actionsUrl"],"additionalProperties":false}},"asset":{"type":"object","properties":{"asset":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the asset"},"assetCaip":{"type":"string","pattern":"^eip155:\\d+\\/(erc20:0x[0-9a-fA-F]{40}|slip44:\\d+)$","description":"CAIP-2 of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"assetPriceInUsd":{"type":"string","description":"Price of the asset in USD"},"assetGroup":{"type":"string","description":"Group of the asset, e.g., ETH, USD, EURO, BTC, OTHER"}},"required":["address","assetCaip","name","symbol","decimals","assetGroup"],"additionalProperties":false},"collateralEnabled":{"type":"boolean"},"balanceNative":{"type":"string"},"suppliedNative":{"type":"string"},"borrowedNative":{"type":"string"}},"required":["asset","collateralEnabled","balanceNative","suppliedNative","borrowedNative"],"additionalProperties":false}},"required":["marketId","name","network","protocol","currentSupplyStep","supplySteps","currentWithdrawStep","withdrawSteps","currentBorrowStep","borrowSteps","currentRepayStep","repaySteps","asset"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/markets/transactions/{action}/{userAddress}/{network}/{marketId}/{assetAddress}":{"get":{"tags":["Borrow Markets"],"description":"Generates payloads for borrow market supply, withdraw, borrow, or repay transactions.","parameters":[{"schema":{"type":"string"},"in":"query","name":"amount","required":false,"description":"Amount of the asset to use in the transactions request"},{"schema":{"type":"boolean"},"in":"query","name":"all","required":false,"description":"If true, withdraw or repay the full available amount"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"in":"path","name":"network","required":true,"description":"Canonical network slug"},{"schema":{"type":"string","minLength":1},"in":"path","name":"marketId","required":true,"description":"Canonical market identifier"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"Address of the user whose borrow market transactions context is requested"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"assetAddress","required":true,"description":"Canonical asset address within the borrow market"},{"schema":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"in":"path","name":"action","required":true,"description":"Action to generate for borrow market transactions"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currentActionIndex":{"type":"number"},"actions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the action"},"tx":{"type":"object","properties":{"to":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the transaction recipient"},"chainId":{"type":"integer","exclusiveMinimum":true,"minimum":0,"description":"Chain ID of the transaction"},"data":{"type":"string","description":"Data to be sent with the transaction"},"value":{"type":"string","description":"Value to be sent with the transaction"}},"required":["to","chainId"],"additionalProperties":false},"simulation":{"type":"object","properties":{"url":{"type":"string","description":"URL to simulated transaction"},"status":{"type":"string","enum":["success","failure","internal server error"],"description":"Status of the simulation"},"tokensReceived":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens received from the transaction"},"tokensSpent":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens spent in the transaction"}},"required":["url","status"],"additionalProperties":false}},"required":["name","tx"],"additionalProperties":false}}},"required":["currentActionIndex","actions"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/markets/":{"get":{"tags":["Borrow Markets"],"description":"Retrieves all supported borrow markets across all supported networks.","security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"markets":{"type":"array","items":{"type":"object","properties":{"marketId":{"type":"string"},"name":{"type":"string"},"network":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"],"description":"Name of the network"},"chainId":{"type":"integer","description":"Chain ID of the network"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$","description":"CAIP-2 of the network"}},"required":["name","chainId","networkCaip"],"additionalProperties":false},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"}},"required":["name"],"additionalProperties":false},"marketRootAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"assetsData":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the asset"},"assetCaip":{"type":"string","pattern":"^eip155:\\d+\\/(erc20:0x[0-9a-fA-F]{40}|slip44:\\d+)$","description":"CAIP-2 of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"assetPriceInUsd":{"type":"string","description":"Price of the asset in USD"},"assetGroup":{"type":"string","description":"Group of the asset, e.g., ETH, USD, EURO, BTC, OTHER"},"oraclePriceUsd":{"type":"number","minimum":0}},"required":["address","assetCaip","name","symbol","decimals","assetGroup","oraclePriceUsd"],"additionalProperties":false},"isCollateralEnabled":{"type":"boolean"},"supplyRate":{"type":"number","minimum":0},"borrowRate":{"type":"number","minimum":0},"utilizationRate":{"type":"number","minimum":0},"totalSupplied":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"totalBorrowed":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"availableLiquidity":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"assetConfig":{"type":"object","properties":{"isBorrowEnabled":{"type":"boolean"},"borrowInterestFeeRate":{"type":"number","minimum":0,"maximum":1},"borrowCap":{"type":"string"},"supplyCap":{"type":"string"}},"required":["isBorrowEnabled"],"additionalProperties":false},"interestRateModel":{"type":"object","properties":{"model":{"type":"string","enum":["single-kink"]},"baseRate":{"type":"number","minimum":0},"optimalUtilization":{"type":"number","minimum":0,"maximum":1},"slope1":{"type":"number","minimum":0},"slope2":{"type":"number","minimum":0}},"required":["model","baseRate","optimalUtilization","slope1","slope2"],"additionalProperties":false},"defaultRiskParameters":{"type":"object","properties":{"maxLtv":{"type":"number","minimum":0,"maximum":1},"liquidationThreshold":{"type":"number","minimum":0,"maximum":1},"liquidationPenalty":{"type":"number","minimum":0,"maximum":1}},"required":["maxLtv","liquidationThreshold"],"additionalProperties":false},"pairwiseRiskParameters":{"type":"object","additionalProperties":{"type":"object","properties":{"maxLtv":{"type":"number","minimum":0,"maximum":1},"liquidationThreshold":{"type":"number","minimum":0,"maximum":1},"liquidationPenalty":{"type":"number","minimum":0,"maximum":1}},"required":["maxLtv","liquidationThreshold"],"additionalProperties":false}}},"required":["asset","isCollateralEnabled","supplyRate","borrowRate","utilizationRate","totalSupplied","totalBorrowed","availableLiquidity","assetConfig"],"additionalProperties":false}}},"required":["marketId","name","network","protocol","marketRootAddress","assetsData"],"additionalProperties":false}}},"required":["markets"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/markets/historical/{network}/{marketId}/{assetAddress}":{"get":{"tags":["Borrow Markets"],"description":"Retrieves paginated historical data for one borrow market asset on one network.","parameters":[{"schema":{"type":"integer","minimum":0,"default":0},"in":"query","name":"page","required":false,"description":"Page number (starting from 0)"},{"schema":{"type":"integer","exclusiveMinimum":true,"minimum":0,"maximum":20000,"default":50},"in":"query","name":"perPage","required":false,"description":"Number of items per page"},{"schema":{"type":"string","enum":["1hour","1day","1week"],"default":"1hour"},"in":"query","name":"granularity","required":false,"description":"Granularity for historical data (even intervals starting from epoch 0). Possible values: 1hour, 1day, 1week"},{"schema":{"type":"integer","default":0},"in":"query","name":"fromTimestamp","required":false,"description":"Timestamp for the start of the time period for which data will be fetched"},{"schema":{"type":"integer"},"in":"query","name":"toTimestamp","required":false,"description":"Timestamp for the end of the time period for which data will be fetched"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"in":"path","name":"network","required":true,"description":"Canonical network slug"},{"schema":{"type":"string","minLength":1},"in":"path","name":"marketId","required":true,"description":"Canonical market identifier"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"assetAddress","required":true,"description":"Canonical asset address within the borrow market"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Historical data for a single borrow market asset, paginated by timestamp","content":{"application/json":{"schema":{"type":"object","properties":{"itemsOnPage":{"type":"integer","description":"Number of items on the current page"},"nextPage":{"type":"integer","description":"Next page number"},"data":{"type":"array","items":{"type":"object","properties":{"timestamp":{"type":"integer","description":"Timestamp of the historical data point"},"blockNumber":{"type":"string","description":"Block number of the historical data point"},"supplyRate":{"type":"number","minimum":0,"description":"Supply rate for the market asset"},"borrowRate":{"type":"number","minimum":0,"description":"Borrow rate for the market asset"},"utilizationRate":{"type":"number","minimum":0,"description":"Utilization rate derived from supplied and borrowed balances"},"totalSupplied":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false,"description":"Total supplied balance in native units and USD"},"totalBorrowed":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false,"description":"Total borrowed balance in native units and USD"},"supplyIndex":{"type":"number","minimum":0,"description":"Supply index for the market asset"},"borrowIndex":{"type":"number","minimum":0,"description":"Borrow index for the market asset"}},"required":["timestamp","blockNumber","supplyRate","borrowRate","utilizationRate","totalSupplied","totalBorrowed","supplyIndex","borrowIndex"],"additionalProperties":false,"description":"Array of items on the current page"}}},"required":["itemsOnPage","data"],"additionalProperties":false,"description":"Historical data for a single borrow market asset, paginated by timestamp"}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/markets/{network}":{"get":{"tags":["Borrow Markets"],"description":"Retrieves supported borrow markets for one network using the canonical network slug.","parameters":[{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"in":"path","name":"network","required":true,"description":"Canonical network slug"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"markets":{"type":"array","items":{"type":"object","properties":{"marketId":{"type":"string"},"name":{"type":"string"},"network":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"],"description":"Name of the network"},"chainId":{"type":"integer","description":"Chain ID of the network"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$","description":"CAIP-2 of the network"}},"required":["name","chainId","networkCaip"],"additionalProperties":false},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"}},"required":["name"],"additionalProperties":false},"marketRootAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"assetsData":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the asset"},"assetCaip":{"type":"string","pattern":"^eip155:\\d+\\/(erc20:0x[0-9a-fA-F]{40}|slip44:\\d+)$","description":"CAIP-2 of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"assetPriceInUsd":{"type":"string","description":"Price of the asset in USD"},"assetGroup":{"type":"string","description":"Group of the asset, e.g., ETH, USD, EURO, BTC, OTHER"},"oraclePriceUsd":{"type":"number","minimum":0}},"required":["address","assetCaip","name","symbol","decimals","assetGroup","oraclePriceUsd"],"additionalProperties":false},"isCollateralEnabled":{"type":"boolean"},"supplyRate":{"type":"number","minimum":0},"borrowRate":{"type":"number","minimum":0},"utilizationRate":{"type":"number","minimum":0},"totalSupplied":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"totalBorrowed":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"availableLiquidity":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"assetConfig":{"type":"object","properties":{"isBorrowEnabled":{"type":"boolean"},"borrowInterestFeeRate":{"type":"number","minimum":0,"maximum":1},"borrowCap":{"type":"string"},"supplyCap":{"type":"string"}},"required":["isBorrowEnabled"],"additionalProperties":false},"interestRateModel":{"type":"object","properties":{"model":{"type":"string","enum":["single-kink"]},"baseRate":{"type":"number","minimum":0},"optimalUtilization":{"type":"number","minimum":0,"maximum":1},"slope1":{"type":"number","minimum":0},"slope2":{"type":"number","minimum":0}},"required":["model","baseRate","optimalUtilization","slope1","slope2"],"additionalProperties":false},"defaultRiskParameters":{"type":"object","properties":{"maxLtv":{"type":"number","minimum":0,"maximum":1},"liquidationThreshold":{"type":"number","minimum":0,"maximum":1},"liquidationPenalty":{"type":"number","minimum":0,"maximum":1}},"required":["maxLtv","liquidationThreshold"],"additionalProperties":false},"pairwiseRiskParameters":{"type":"object","additionalProperties":{"type":"object","properties":{"maxLtv":{"type":"number","minimum":0,"maximum":1},"liquidationThreshold":{"type":"number","minimum":0,"maximum":1},"liquidationPenalty":{"type":"number","minimum":0,"maximum":1}},"required":["maxLtv","liquidationThreshold"],"additionalProperties":false}}},"required":["asset","isCollateralEnabled","supplyRate","borrowRate","utilizationRate","totalSupplied","totalBorrowed","availableLiquidity","assetConfig"],"additionalProperties":false}}},"required":["marketId","name","network","protocol","marketRootAddress","assetsData"],"additionalProperties":false}}},"required":["markets"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/markets/{network}/{marketId}":{"get":{"tags":["Borrow Markets"],"description":"Retrieves detailed discovery data for one borrow market on one network.","parameters":[{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"in":"path","name":"network","required":true,"description":"Canonical network slug"},{"schema":{"type":"string","minLength":1},"in":"path","name":"marketId","required":true,"description":"Canonical market identifier"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"market":{"type":"object","properties":{"marketId":{"type":"string"},"name":{"type":"string"},"network":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"],"description":"Name of the network"},"chainId":{"type":"integer","description":"Chain ID of the network"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$","description":"CAIP-2 of the network"}},"required":["name","chainId","networkCaip"],"additionalProperties":false},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"}},"required":["name"],"additionalProperties":false},"marketRootAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"assetsData":{"type":"array","items":{"type":"object","properties":{"asset":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the asset"},"assetCaip":{"type":"string","pattern":"^eip155:\\d+\\/(erc20:0x[0-9a-fA-F]{40}|slip44:\\d+)$","description":"CAIP-2 of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"assetPriceInUsd":{"type":"string","description":"Price of the asset in USD"},"assetGroup":{"type":"string","description":"Group of the asset, e.g., ETH, USD, EURO, BTC, OTHER"},"oraclePriceUsd":{"type":"number","minimum":0}},"required":["address","assetCaip","name","symbol","decimals","assetGroup","oraclePriceUsd"],"additionalProperties":false},"isCollateralEnabled":{"type":"boolean"},"supplyRate":{"type":"number","minimum":0},"borrowRate":{"type":"number","minimum":0},"utilizationRate":{"type":"number","minimum":0},"totalSupplied":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"totalBorrowed":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"availableLiquidity":{"type":"object","properties":{"native":{"type":"string"},"usd":{"type":"number","minimum":0}},"required":["native","usd"],"additionalProperties":false},"assetConfig":{"type":"object","properties":{"isBorrowEnabled":{"type":"boolean"},"borrowInterestFeeRate":{"type":"number","minimum":0,"maximum":1},"borrowCap":{"type":"string"},"supplyCap":{"type":"string"}},"required":["isBorrowEnabled"],"additionalProperties":false},"interestRateModel":{"type":"object","properties":{"model":{"type":"string","enum":["single-kink"]},"baseRate":{"type":"number","minimum":0},"optimalUtilization":{"type":"number","minimum":0,"maximum":1},"slope1":{"type":"number","minimum":0},"slope2":{"type":"number","minimum":0}},"required":["model","baseRate","optimalUtilization","slope1","slope2"],"additionalProperties":false},"defaultRiskParameters":{"type":"object","properties":{"maxLtv":{"type":"number","minimum":0,"maximum":1},"liquidationThreshold":{"type":"number","minimum":0,"maximum":1},"liquidationPenalty":{"type":"number","minimum":0,"maximum":1}},"required":["maxLtv","liquidationThreshold"],"additionalProperties":false},"pairwiseRiskParameters":{"type":"object","additionalProperties":{"type":"object","properties":{"maxLtv":{"type":"number","minimum":0,"maximum":1},"liquidationThreshold":{"type":"number","minimum":0,"maximum":1},"liquidationPenalty":{"type":"number","minimum":0,"maximum":1}},"required":["maxLtv","liquidationThreshold"],"additionalProperties":false}}},"required":["asset","isCollateralEnabled","supplyRate","borrowRate","utilizationRate","totalSupplied","totalBorrowed","availableLiquidity","assetConfig"],"additionalProperties":false}},"pairs":{"type":"array","items":{"type":"object","properties":{"collateralAssetAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"borrowAssetAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"collateralEnabled":{"type":"boolean"},"borrowEnabled":{"type":"boolean"},"riskParameters":{"type":"object","properties":{"maxLtv":{"type":"number","minimum":0,"maximum":1},"liquidationThreshold":{"type":"number","minimum":0,"maximum":1},"liquidationPenalty":{"type":"number","minimum":0,"maximum":1}},"required":["maxLtv","liquidationThreshold"],"additionalProperties":false}},"required":["collateralAssetAddress","borrowAssetAddress","collateralEnabled","borrowEnabled","riskParameters"],"additionalProperties":false}}},"required":["marketId","name","network","protocol","marketRootAddress","assetsData","pairs"],"additionalProperties":false}},"required":["market"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/portfolio/events/{userAddress}/{network}/{marketId}/{assetAddress}":{"get":{"tags":["Borrow Markets"],"description":"Retrieves borrow market events for one user, market, and asset on one network.","parameters":[{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"in":"path","name":"network","required":true,"description":"Canonical network slug"},{"schema":{"type":"string","minLength":1},"in":"path","name":"marketId","required":true,"description":"Canonical market identifier"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"Address of the user whose borrow market transaction history is requested"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"assetAddress","required":true,"description":"Canonical asset address within the borrow market"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"timestamp":{"type":"integer","description":"Transaction timestamp"},"blockNumber":{"type":"string","description":"Block number of the transaction"},"eventType":{"type":"string","enum":["supply","withdraw","borrow","repay"],"description":"Type of borrow market event"},"assetAmountNative":{"type":"string","description":"Asset amount in native units"},"transactionHash":{"type":"string","description":"Transaction hash"},"logIndex":{"type":"integer","description":"Log index of the transaction"}},"required":["timestamp","blockNumber","eventType","assetAmountNative","transactionHash","logIndex"],"additionalProperties":false},"description":"List of borrow market events sorted by timestamp"},"items":{"type":"integer","description":"Total number of transaction events"}},"required":["data","items"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/aave/position/{network}/{userAddress}":{"get":{"tags":["Borrow"],"description":"Retrieves Aave position information for a specific user and network.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"User address to be used for best vault calculation"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"network","required":true,"description":"Include only vaults with provided network(name or CAIP)"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"userAddress":{"type":"string"},"network":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"],"description":"Name of the network"},"chainId":{"type":"integer","description":"Chain ID of the network"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$","description":"CAIP-2 of the network"}},"required":["name","chainId","networkCaip"],"additionalProperties":false},"positions":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the asset"},"assetCaip":{"type":"string","pattern":"^eip155:\\d+\\/(erc20:0x[0-9a-fA-F]{40}|slip44:\\d+)$","description":"CAIP-2 of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"assetPriceInUsd":{"type":"string","description":"Price of the asset in USD"},"assetGroup":{"type":"string","description":"Group of the asset, e.g., ETH, USD, EURO, BTC, OTHER"},"borrowedNative":{"type":"string"},"borrowedUsd":{"type":"string"},"suppliedNative":{"type":"string"},"suppliedUsd":{"type":"string"},"supplyApy":{"type":"number"},"borrowApy":{"type":"number"}},"required":["address","assetCaip","name","symbol","decimals","assetGroup","borrowedNative","borrowedUsd","suppliedNative","suppliedUsd","supplyApy","borrowApy"],"additionalProperties":false}},"healthFactor":{"type":"string"},"totalSuppliedUsd":{"type":"string"},"totalBorrowedUsd":{"type":"string"},"availableBorrowsUsd":{"type":"string"},"currentLiquidationThreshold":{"type":"string"},"ltv":{"type":"string"}},"required":["userAddress","network","positions","totalSuppliedUsd","totalBorrowedUsd","availableBorrowsUsd","currentLiquidationThreshold","ltv"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/aave/transactions/{action}/{userAddress}/{network}/{assetAddress}":{"get":{"tags":["Borrow"],"description":"Get Aave transaction data for deposit, redeem, borrow, or repay actions","parameters":[{"schema":{"type":"boolean","default":"false"},"in":"query","name":"simulate","required":false,"description":"Simulate the transaction"},{"schema":{"type":"string"},"in":"query","name":"amount","required":false},{"schema":{"type":"boolean"},"in":"query","name":"all","required":false,"description":"Only applicable for redeem/repay action. If true, all assets will be redeemed/repaid"},{"schema":{"type":"string","enum":["deposit","redeem","borrow","repay"]},"in":"path","name":"action","required":true,"description":"Action to be performed"},{"schema":{"type":"string"},"in":"path","name":"userAddress","required":true},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"network","required":true,"description":"Network to perform the action on"},{"schema":{"type":"string"},"in":"path","name":"assetAddress","required":true}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currentActionIndex":{"type":"number"},"actions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the action"},"tx":{"type":"object","properties":{"to":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the transaction recipient"},"chainId":{"type":"integer","exclusiveMinimum":true,"minimum":0,"description":"Chain ID of the transaction"},"data":{"type":"string","description":"Data to be sent with the transaction"},"value":{"type":"string","description":"Value to be sent with the transaction"}},"required":["to","chainId"],"additionalProperties":false},"simulation":{"type":"object","properties":{"url":{"type":"string","description":"URL to simulated transaction"},"status":{"type":"string","enum":["success","failure","internal server error"],"description":"Status of the simulation"},"tokensReceived":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens received from the transaction"},"tokensSpent":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens spent in the transaction"}},"required":["url","status"],"additionalProperties":false}},"required":["name","tx"],"additionalProperties":false}}},"required":["currentActionIndex","actions"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/morpho/markets/{network}":{"get":{"tags":["Borrow"],"description":"Retrieves Morpho markets for a specific network.","parameters":[{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"network","required":true,"description":"Include only vaults with provided network(name or CAIP)"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"markets":{"type":"array","items":{"type":"object","properties":{"marketId":{"type":"string"},"loanAsset":{"type":"object","properties":{"address":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"},"decimals":{"type":"number"}},"required":["address","symbol","name","decimals"],"additionalProperties":false},"collateralAsset":{"type":"object","properties":{"address":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"},"decimals":{"type":"number"}},"required":["address","symbol","name","decimals"],"additionalProperties":false,"nullable":true},"lltv":{"type":"number"}},"required":["marketId","loanAsset","collateralAsset","lltv"],"additionalProperties":false}}},"required":["markets"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/morpho/positions/{network}/{userAddress}":{"get":{"tags":["Borrow"],"description":"Retrieves Morpho position information for a specific user and network.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"User address to be used for best vault calculation"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"network","required":true,"description":"Include only vaults with provided network(name or CAIP)"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"positions":{"type":"array","items":{"type":"object","properties":{"marketId":{"type":"string"},"collateralAsset":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the asset"},"assetCaip":{"type":"string","pattern":"^eip155:\\d+\\/(erc20:0x[0-9a-fA-F]{40}|slip44:\\d+)$","description":"CAIP-2 of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"assetPriceInUsd":{"type":"string","description":"Price of the asset in USD"},"assetGroup":{"type":"string","description":"Group of the asset, e.g., ETH, USD, EURO, BTC, OTHER"},"suppliedNative":{"type":"string"},"suppliedUsd":{"type":"string"},"collateralNative":{"type":"string"},"collateralUsd":{"type":"string"},"supplyApy":{"type":"number"}},"required":["address","assetCaip","name","symbol","decimals","assetGroup","suppliedNative","suppliedUsd","collateralNative","collateralUsd","supplyApy"],"additionalProperties":false,"nullable":true},"loanAsset":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the asset"},"assetCaip":{"type":"string","pattern":"^eip155:\\d+\\/(erc20:0x[0-9a-fA-F]{40}|slip44:\\d+)$","description":"CAIP-2 of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"assetPriceInUsd":{"type":"string","description":"Price of the asset in USD"},"assetGroup":{"type":"string","description":"Group of the asset, e.g., ETH, USD, EURO, BTC, OTHER"},"borrowedNative":{"type":"string"},"borrowedUsd":{"type":"string"},"borrowApy":{"type":"number"}},"required":["address","assetCaip","name","symbol","decimals","assetGroup","borrowedNative","borrowedUsd","borrowApy"],"additionalProperties":false},"ltv":{"type":"string"},"healthFactor":{"type":"string"}},"required":["marketId","collateralAsset","loanAsset","ltv"],"additionalProperties":false}}},"required":["positions"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/borrow/morpho/transactions/{action}/{userAddress}/{network}/{marketId}":{"get":{"tags":["Borrow"],"description":"Get Morpho transaction data for supply, withdraw, borrow, or repay actions","parameters":[{"schema":{"type":"boolean","default":"false"},"in":"query","name":"simulate","required":false,"description":"Simulate the transaction"},{"schema":{"type":"string"},"in":"query","name":"amount","required":false,"description":"Amount to transact (in token units)"},{"schema":{"type":"boolean"},"in":"query","name":"all","required":false,"description":"Only applicable for withdraw/repay action. If true, all assets will be withdrawn/repaid"},{"schema":{"type":"string","enum":["supply","withdraw","borrow","repay"]},"in":"path","name":"action","required":true,"description":"Action to be performed on Morpho"},{"schema":{"type":"string"},"in":"path","name":"userAddress","required":true},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"network","required":true,"description":"Network to perform the action on"},{"schema":{"type":"string"},"in":"path","name":"marketId","required":true,"description":"Market ID (uniqueKey) for the Morpho market"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currentActionIndex":{"type":"number"},"actions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the action"},"tx":{"type":"object","properties":{"to":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the transaction recipient"},"chainId":{"type":"integer","exclusiveMinimum":true,"minimum":0,"description":"Chain ID of the transaction"},"data":{"type":"string","description":"Data to be sent with the transaction"},"value":{"type":"string","description":"Value to be sent with the transaction"}},"required":["to","chainId"],"additionalProperties":false},"simulation":{"type":"object","properties":{"url":{"type":"string","description":"URL to simulated transaction"},"status":{"type":"string","enum":["success","failure","internal server error"],"description":"Status of the simulation"},"tokensReceived":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens received from the transaction"},"tokensSpent":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens spent in the transaction"}},"required":["url","status"],"additionalProperties":false}},"required":["name","tx"],"additionalProperties":false}}},"required":["currentActionIndex","actions"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/svm/idleAsset/{userId}/{assetId}":{"get":{"tags":["SVM"],"description":"Retrieves idle asset balance for a specific user and token on Solana.","parameters":[{"schema":{"type":"string"},"in":"path","name":"userId","required":true,"description":"User public key address"},{"schema":{"type":"string"},"in":"path","name":"assetId","required":true,"description":"Token mint ID"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"asset":{"type":"object","properties":{"assetId":{"type":"string","description":"Token mint ID"},"decimals":{"type":"number","description":"Number of decimal places for the token"},"balanceNative":{"type":"string","description":"Native token balance as string"}},"required":["assetId","decimals","balanceNative"],"additionalProperties":false}},"required":["asset"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/svm/vaults":{"get":{"tags":["SVM"],"description":"Retrieves a filtered list of SVM vaults with their basic information including account ID and associated asset details.","parameters":[{"schema":{"type":"integer","minimum":0,"default":0},"in":"query","name":"page","required":false,"description":"Page number (starting from 0)"},{"schema":{"type":"integer","exclusiveMinimum":true,"minimum":0,"maximum":5000,"default":50},"in":"query","name":"perPage","required":false,"description":"Number of items per page"},{"schema":{"type":"string","minLength":1},"in":"query","name":"assetSymbol","required":false,"description":"Include only vaults with an asset of provided symbol(ticker)"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"itemsOnPage":{"type":"integer","description":"Number of items on the current page"},"nextPage":{"type":"integer","description":"Next page number"},"data":{"type":"array","items":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the vault"},"asset":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"}},"required":["accountId","name","symbol","decimals"],"additionalProperties":false,"description":"Asset details of the vault"}},"required":["accountId","asset"],"additionalProperties":false,"description":"Array of items on the current page"}}},"required":["itemsOnPage","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/svm/detailed-vaults":{"get":{"tags":["SVM"],"description":"Retrieves a filtered list of SVM vaults with detailed information including account ID, name, protocol, TVL, and APY details.","parameters":[{"schema":{"type":"integer","minimum":0,"default":0},"in":"query","name":"page","required":false,"description":"Page number (starting from 0)"},{"schema":{"type":"integer","exclusiveMinimum":true,"minimum":0,"maximum":5000,"default":50},"in":"query","name":"perPage","required":false,"description":"Number of items per page"},{"schema":{"type":"string","minLength":1},"in":"query","name":"assetSymbol","required":false,"description":"Include only vaults with an asset of provided symbol(ticker)"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"itemsOnPage":{"type":"integer","description":"Number of items on the current page"},"nextPage":{"type":"integer","description":"Next page number"},"data":{"type":"array","items":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the vault"},"asset":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"}},"required":["accountId","name","symbol","decimals"],"additionalProperties":false,"description":"Asset details of the vault"},"name":{"type":"string","description":"Name of the vault"},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"},"protocolLogo":{"type":"string","description":"URL of the protocol logo"}},"required":["name"],"additionalProperties":false,"description":"Protocol details of the vault"},"tvl":{"type":"object","properties":{"usd":{"type":"string","description":"TVL in USD"},"native":{"type":"string","description":"Native TVL"}},"required":["usd","native"],"additionalProperties":false,"description":"TVL details of the vault"},"apy":{"type":"object","properties":{"1day":{"type":"object","properties":{"base":{"type":"number","description":"Base APY"},"reward":{"type":"number","description":"Reward APY"},"total":{"type":"number","description":"Total APY"}},"required":["base","reward","total"],"additionalProperties":false,"description":"1day APY details"},"7day":{"type":"object","properties":{"base":{"type":"number","description":"Base APY"},"reward":{"type":"number","description":"Reward APY"},"total":{"type":"number","description":"Total APY"}},"required":["base","reward","total"],"additionalProperties":false,"description":"7day APY details"},"30day":{"type":"object","properties":{"base":{"type":"number","description":"Base APY"},"reward":{"type":"number","description":"Reward APY"},"total":{"type":"number","description":"Total APY"}},"required":["base","reward","total"],"additionalProperties":false,"description":"30day APY details"}},"required":["1day","7day","30day"],"additionalProperties":false,"description":"APY details of the vault"}},"required":["accountId","asset","name","tvl","apy"],"additionalProperties":false,"description":"Array of items on the current page"}}},"required":["itemsOnPage","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/svm/detailed-vaults/{vaultAddress}":{"get":{"tags":["SVM"],"description":"Retrieves detailed information for a specific SVM vault including account ID, name, protocol, TVL, and APY details.","parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"vaultAddress","required":true,"description":"The Solana address of the vault"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the vault"},"asset":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"}},"required":["accountId","name","symbol","decimals"],"additionalProperties":false,"description":"Asset details of the vault"},"name":{"type":"string","description":"Name of the vault"},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"},"protocolLogo":{"type":"string","description":"URL of the protocol logo"}},"required":["name"],"additionalProperties":false,"description":"Protocol details of the vault"},"tvl":{"type":"object","properties":{"usd":{"type":"string","description":"TVL in USD"},"native":{"type":"string","description":"Native TVL"}},"required":["usd","native"],"additionalProperties":false,"description":"TVL details of the vault"},"apy":{"type":"object","properties":{"1day":{"type":"object","properties":{"base":{"type":"number","description":"Base APY"},"reward":{"type":"number","description":"Reward APY"},"total":{"type":"number","description":"Total APY"}},"required":["base","reward","total"],"additionalProperties":false,"description":"1day APY details"},"7day":{"type":"object","properties":{"base":{"type":"number","description":"Base APY"},"reward":{"type":"number","description":"Reward APY"},"total":{"type":"number","description":"Total APY"}},"required":["base","reward","total"],"additionalProperties":false,"description":"7day APY details"},"30day":{"type":"object","properties":{"base":{"type":"number","description":"Base APY"},"reward":{"type":"number","description":"Reward APY"},"total":{"type":"number","description":"Total APY"}},"required":["base","reward","total"],"additionalProperties":false,"description":"30day APY details"}},"required":["1day","7day","30day"],"additionalProperties":false,"description":"APY details of the vault"}},"required":["accountId","asset","name","tvl","apy"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/svm/positions/{userId}":{"get":{"tags":["SVM"],"description":"Provides all vault positions for a user on Solana.","parameters":[{"schema":{"type":"string","enum":["1day","7day","30day"],"default":"7day"},"in":"query","name":"apyInterval","required":false,"description":"Interval for APY data. Possible values: 1day, 7day, 30day"},{"schema":{"type":"number","minimum":0,"default":1},"in":"query","name":"minUsdAssetValueThreshold","required":false,"description":"Minimum USD value of the position to be included"},{"schema":{"type":"string","minLength":1},"in":"path","name":"userId","required":true,"description":"User wallet address"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the vault"},"name":{"type":"string","description":"Name of the vault"},"asset":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"balanceNative":{"type":"string","description":"User balance in native asset units"},"balanceUsd":{"type":"string","description":"User balance in USD"},"unclaimedNative":{"type":"string","description":"User unclaimed balance (pending redeems) in native asset units"},"unclaimedUsd":{"type":"string","description":"User unclaimed balance (pending redeems) in USD"}},"required":["accountId","name","symbol","decimals","balanceNative","balanceUsd","unclaimedNative","unclaimedUsd"],"additionalProperties":false,"description":"Asset details with user balance"},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"},"protocolLogo":{"type":"string","description":"URL of the protocol logo"}},"required":["name"],"additionalProperties":false,"description":"Protocol details of the vault"},"apy":{"type":"object","properties":{"base":{"type":"number","description":"Base APY"},"reward":{"type":"number","description":"Reward APY"},"total":{"type":"number","description":"Total APY"}},"required":["base","reward","total"],"additionalProperties":false,"description":"APY details of the vault"}},"required":["accountId","name","asset","apy"],"additionalProperties":false}}},"required":["data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/svm/transactions/{action}/{userAddress}/{vaultAddress}":{"get":{"tags":["SVM"],"description":"Get Solana transaction data for vault actions (deposit, request-redeem, confirm-redeem, complete-redeem). Returns a base64-encoded serialized transaction ready for wallet signing. Three-step redemption process: request-redeem creates stake account, confirm-redeem deactivates it, complete-redeem withdraws SOL after epoch boundary.","parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"assetAddress","required":true,"description":"SPL token mint address"},{"schema":{"type":"string"},"in":"query","name":"amount","required":false,"description":"Amount in lamports (base units). Required for deposit and request-withdraw actions"},{"schema":{"type":"string","enum":["deposit","redeem","request-redeem","confirm-redeem","complete-redeem"]},"in":"path","name":"action","required":true,"description":"Action to be performed on Solana vault"},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"userAddress","required":true,"description":"User Solana wallet address"},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"vaultAddress","required":true,"description":"Vault address"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"transaction":{"type":"string","description":"Base64-encoded serialized Solana transaction ready to sign"}},"required":["transaction"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/svm/transactions/context/{userAddress}/{vaultAddress}":{"get":{"tags":["SVM"],"description":"Retrieves the complete transactional context for a user interaction with a Solana vault, including current balances and unclaimed assets.","parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"userAddress","required":true,"description":"User Solana wallet address"},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"vaultAddress","required":true,"description":"Vault address"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currentDepositStep":{"type":"string","enum":["deposit","redeem","request-redeem","confirm-redeem","complete-redeem"],"description":"Current deposit step"},"depositSteps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","enum":["deposit","redeem","request-redeem","confirm-redeem","complete-redeem"],"description":"Step name"},"actionsUrl":{"type":"string","description":"URL to get transaction actions for this step"},"available":{"type":"boolean","description":"Whether this step is currently available to execute"}},"required":["name","actionsUrl","available"],"additionalProperties":false},"description":"Available deposit steps"},"currentRedeemStep":{"type":"string","enum":["deposit","redeem","request-redeem","confirm-redeem","complete-redeem"],"description":"Current redeem step"},"redeemSteps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","enum":["deposit","redeem","request-redeem","confirm-redeem","complete-redeem"],"description":"Step name"},"actionsUrl":{"type":"string","description":"URL to get transaction actions for this step"},"available":{"type":"boolean","description":"Whether this step is currently available to execute"}},"required":["name","actionsUrl","available"],"additionalProperties":false},"description":"Available redeem steps"},"lpToken":{"type":"object","properties":{"accountId":{"type":"string","description":"LP token account ID"},"name":{"type":"string","description":"LP token name"},"symbol":{"type":"string","description":"LP token symbol"},"decimals":{"type":"integer","description":"Number of decimals"},"balanceNative":{"type":"string","description":"LP token balance in native units"},"balanceUsd":{"type":"string","description":"LP token balance in USD"}},"required":["accountId","name","symbol","decimals","balanceNative","balanceUsd"],"additionalProperties":false,"description":"LP token details with balance"},"asset":{"type":"object","properties":{"accountId":{"type":"string","description":"Account ID of the asset"},"name":{"type":"string","description":"Name of the asset"},"symbol":{"type":"string","description":"Symbol of the asset"},"decimals":{"type":"integer","description":"Number of decimals of the asset"},"assetLogo":{"type":"string","format":"uri","description":"URL of the asset logo"},"balanceNative":{"type":"string","description":"User balance in native asset units"},"balanceUsd":{"type":"string","description":"User balance in USD"},"unclaimedNative":{"type":"string","description":"User unclaimed balance (pending redeems) in native asset units"},"unclaimedUsd":{"type":"string","description":"User unclaimed balance (pending redeems) in USD"},"positionValueInAsset":{"type":"string","description":"Position value in asset units"}},"required":["accountId","name","symbol","decimals","balanceNative","balanceUsd","unclaimedNative","unclaimedUsd","positionValueInAsset"],"additionalProperties":false,"description":"Asset details with balance and unclaimed amounts"},"protocol":{"type":"object","properties":{"name":{"type":"string","description":"Name of the protocol"},"product":{"type":"string","description":"Product of the protocol"},"version":{"type":"string","description":"Version of the protocol"},"protocolLogo":{"type":"string","description":"URL of the protocol logo"}},"required":["name"],"additionalProperties":false,"description":"Protocol details"}},"required":["currentDepositStep","depositSteps","currentRedeemStep","redeemSteps","lpToken","asset"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/transactions/intent/getQuote":{"post":{"tags":["Cross Chain"],"description":"Get transaction intent quote for cross-chain or same-chain position changes. Returns EIP-712 payload for signing and fee breakdown.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"userAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"User wallet address"},"inputPosition":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Token contract address"},"network":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"],"description":"Network name or CAIP identifier"},"amount":{"type":"string","description":"Amount in base units"}},"required":["address","network","amount"],"additionalProperties":false,"description":"Input position details"},"outputPosition":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Token contract address"},"network":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"],"description":"Network name or CAIP identifier"}},"required":["address","network"],"additionalProperties":false,"description":"Output position details"},"feeToken":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Fee token contract address"},"network":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"],"description":"Network name or CAIP identifier"}},"required":["address","network"],"additionalProperties":false,"description":"Fee token details"},"provider":{"type":"string","enum":["biconomy","rhinestone"],"description":"Provider name"}},"required":["userAddress","inputPosition","outputPosition","feeToken","provider"],"additionalProperties":false}}},"required":true},"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"payloadToSign":{"type":"object","properties":{"domain":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"},"chainId":{"type":"number"},"verifyingContract":{"type":"string"}},"required":["name","chainId","verifyingContract"],"additionalProperties":false,"description":"EIP-712 domain data"},"types":{"type":"object","additionalProperties":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string"}},"required":["name","type"],"additionalProperties":false}},"description":"EIP-712 type definitions"},"message":{"type":"object","additionalProperties":{},"description":"Message data to be signed"},"primaryType":{"type":"string","description":"Primary type name (e.g., \"Permit\")"}},"required":["domain","types","message","primaryType"],"additionalProperties":false,"description":"EIP-712 payload for user to sign"},"setupTransactions":{"type":"object","additionalProperties":{"type":"array","items":{"type":"object","properties":{"to":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"chainId":{"type":"integer","exclusiveMinimum":true,"minimum":0},"data":{"type":"string"},"value":{"type":"string"}},"required":["to","chainId"],"additionalProperties":false}},"description":"Transactions that need to be executed before the intent execution. Grouped by chain ID."},"fees":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["bridge","gas","orchestrator","protocol"]},"token":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Token contract address"},"network":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"],"description":"Token network name or CAIP identifier"},"decimals":{"type":"number","description":"Token decimals"}},"required":["address","network","decimals"],"additionalProperties":false},"amount":{"type":"string","description":"Fee amount in base units"}},"required":["type","token","amount"],"additionalProperties":false},"description":"Breakdown of all fees"},"totalCost":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Asset contract address"},"network":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"],"description":"Asset network name or CAIP identifier"},"decimals":{"type":"number","description":"Asset decimals"},"amount":{"type":"string","description":"Amount in base units"}},"required":["address","network","decimals","amount"],"additionalProperties":false},"description":"Total cost including all fees"},"receivedPosition":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Asset contract address"},"network":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"],"description":"Asset network name or CAIP identifier"},"decimals":{"type":"number","description":"Asset decimals"},"amount":{"type":"string","description":"Amount in base units"}},"required":["address","network","decimals","amount"],"additionalProperties":false,"description":"Position that will be received"},"receivedAssetValue":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Asset contract address"},"network":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"],"description":"Asset network name or CAIP identifier"},"decimals":{"type":"number","description":"Asset decimals"},"amount":{"type":"string","description":"Amount in base units"}},"required":["address","network","decimals","amount"],"additionalProperties":false,"description":"Underlying asset value of the received position"},"expirationTimestamp":{"type":"number","description":"Timestamp when the quote expires"},"originalQuote":{"description":"Original quote data from the intent service"}},"required":["payloadToSign","fees","totalCost","receivedPosition","receivedAssetValue"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/transactions/intent/execute":{"post":{"tags":["Cross Chain"],"description":"Execute a transaction intent with a signed payload. Returns the supertransaction hash for tracking.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"payloadSignature":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Signed EIP-712 payload signature"},"originalQuote":{"description":"Original quote data from getQuote endpoint"},"provider":{"type":"string","enum":["biconomy","rhinestone"]}},"required":["payloadSignature","provider"],"additionalProperties":false}}},"required":true},"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"crosschainTransactionId":{"type":"string","description":"Crosschain transaction ID. Format depends on the provider."}},"required":["crosschainTransactionId"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/transactions/intent/status":{"get":{"tags":["Cross Chain"],"description":"Get the status of a crosschain transaction intent.","parameters":[{"schema":{"type":"string"},"in":"query","name":"crosschainTransactionId","required":true,"description":"Crosschain transaction ID returned from the execute endpoint."},{"schema":{"type":"string","enum":["rhinestone","biconomy"]},"in":"query","name":"provider","required":true,"description":"The intent provider used for the transaction."}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","enum":["pending","success","failed"],"description":"Current status of the crosschain transaction."}},"required":["status"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/transactions/cctp/context/{userAddress}/{srcNetwork}/{dstNetwork}/{assetAddress}":{"get":{"tags":["CCTP Bridge"],"description":"Retrieves context for a CCTP cross-chain bridge operation, including asset balance, allowance, and fees","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"User wallet address"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"srcNetwork","required":true,"description":"Source chain (network name or CAIP identifier)"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"dstNetwork","required":true,"description":"Destination chain (network name or CAIP identifier)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"assetAddress","required":true,"description":"Asset address to bridge (e.g., USDC)"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"srcNetwork":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"chainId":{"type":"integer"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$"}},"required":["name","chainId","networkCaip"],"additionalProperties":false,"description":"Source network"},"dstNetwork":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"chainId":{"type":"integer"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$"}},"required":["name","chainId","networkCaip"],"additionalProperties":false,"description":"Destination network"},"asset":{"type":"object","properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"symbol":{"type":"string"},"decimals":{"type":"number"},"name":{"type":"string"},"balanceNative":{"type":"string","description":"User balance in base units"},"allowance":{"type":"string","description":"Current allowance for TokenMessengerV2"}},"required":["address","symbol","decimals","name","balanceNative","allowance"],"additionalProperties":false},"fees":{"type":"object","properties":{"standardTransferFeeBps":{"type":"number","description":"Service fee for standard transfer in basis points"},"fastTransferFeeBps":{"type":"number","description":"Service fee for fast transfer in basis points"},"forwardingFeeNative":{"type":"string","description":"Fixed service fee per destination in base asset units"}},"required":["standardTransferFeeBps","fastTransferFeeBps","forwardingFeeNative"],"additionalProperties":false,"description":"Fees for forwarding mode (fetched from Iris API)"},"currentBridgeStep":{"type":"string","enum":["bridge","claim"],"description":"Current step in bridge flow"},"bridgeSteps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","enum":["bridge","claim"]},"actions":{"type":"array","items":{"type":"string"},"description":"Available actions for this step"},"actionsUrl":{"type":"string","description":"URL to get transaction data for this step"}},"required":["name","actions","actionsUrl"],"additionalProperties":false},"description":"Steps for bridging: bridge, then claim"},"moneyInTransit":{"type":"array","items":{"type":"object","properties":{"burnToken":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"amountNative":{"type":"string","description":"Burn amount in base units"},"mintRecipient":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"destinationDomain":{"type":"number"},"status":{"type":"string","enum":["pending","attested","complete","expired"]},"message":{"type":"string","pattern":"^0x[a-fA-F0-9]*$"},"attestation":{"type":"string","pattern":"^0x[a-fA-F0-9]*$"},"depositor":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"}},"required":["burnToken","amountNative","mintRecipient","destinationDomain","status","depositor"],"additionalProperties":false},"description":"Recent CCTP transfers that are still in transit"}},"required":["srcNetwork","dstNetwork","asset","fees","currentBridgeStep","bridgeSteps","moneyInTransit"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/transactions/cctp/money-in-transit/{userAddress}":{"get":{"tags":["CCTP Bridge"],"description":"Returns CCTP money-in-transit transfers for all supported source/destination chain pairs","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"User wallet address"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"routes":{"type":"array","items":{"type":"object","properties":{"srcNetwork":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"chainId":{"type":"integer"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$"}},"required":["name","chainId","networkCaip"],"additionalProperties":false,"description":"Source network"},"dstNetwork":{"type":"object","properties":{"name":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink"]},"chainId":{"type":"integer"},"networkCaip":{"type":"string","pattern":"^eip155:\\d+$"}},"required":["name","chainId","networkCaip"],"additionalProperties":false,"description":"Destination network"},"moneyInTransit":{"type":"array","items":{"type":"object","properties":{"burnToken":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"amountNative":{"type":"string","description":"Burn amount in base units"},"mintRecipient":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"destinationDomain":{"type":"number"},"status":{"type":"string","enum":["pending","attested","complete","expired"]},"message":{"type":"string","pattern":"^0x[a-fA-F0-9]*$"},"attestation":{"type":"string","pattern":"^0x[a-fA-F0-9]*$"}},"required":["burnToken","amountNative","mintRecipient","destinationDomain","status"],"additionalProperties":false}}},"required":["srcNetwork","dstNetwork","moneyInTransit"],"additionalProperties":false}}},"required":["routes"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/transactions/cctp/transactions/{action}/{userAddress}/{srcNetwork}/{dstNetwork}":{"get":{"tags":["CCTP Bridge"],"description":"Retrieves executable transaction payloads for CCTP bridge actions (bridge or claim)","parameters":[{"schema":{"type":"string"},"in":"query","name":"amount","required":false,"description":"Amount to bridge in base units"},{"schema":{"type":"boolean","default":"false"},"in":"query","name":"useForwarding","required":false,"description":"Use relay service for auto-claim"},{"schema":{"type":"string","enum":["standard","fast"],"default":"standard"},"in":"query","name":"transferType","required":false,"description":"Type of transfer for fee calculation (only applicable for bridge action)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"query","name":"recipientAddress","required":false,"description":"Recipient on destination (defaults to userAddress)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"query","name":"assetAddress","required":false,"description":"Asset to bridge (defaults to USDC)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]*$"},"in":"query","name":"message","required":false,"description":"Message from status endpoint (required for claim)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]*$"},"in":"query","name":"attestation","required":false,"description":"Attestation from status endpoint (required for claim)"},{"schema":{"type":"string","enum":["bridge","claim"]},"in":"path","name":"action","required":true,"description":"Action to perform: bridge or claim"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"path","name":"userAddress","required":true,"description":"User wallet address"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"srcNetwork","required":true,"description":"Source network"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"path","name":"dstNetwork","required":true,"description":"Destination network"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currentActionIndex":{"type":"number"},"actions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the action"},"tx":{"type":"object","properties":{"to":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$","description":"Address of the transaction recipient"},"chainId":{"type":"integer","exclusiveMinimum":true,"minimum":0,"description":"Chain ID of the transaction"},"data":{"type":"string","description":"Data to be sent with the transaction"},"value":{"type":"string","description":"Value to be sent with the transaction"}},"required":["to","chainId"],"additionalProperties":false},"simulation":{"type":"object","properties":{"url":{"type":"string","description":"URL to simulated transaction"},"status":{"type":"string","enum":["success","failure","internal server error"],"description":"Status of the simulation"},"tokensReceived":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens received from the transaction"},"tokensSpent":{"type":"object","additionalProperties":{"type":"string"},"description":"Tokens spent in the transaction"}},"required":["url","status"],"additionalProperties":false}},"required":["name","tx"],"additionalProperties":false}}},"required":["currentActionIndex","actions"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}},"/alpha/transactions/cctp/status":{"get":{"tags":["CCTP Bridge"],"description":"Checks the status of a CCTP bridge transaction via Circle Iris API","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]*$"},"in":"query","name":"burnTxHash","required":true,"description":"Transaction hash of the burn transaction on source chain"},{"schema":{"type":"string","enum":["mainnet","optimism","arbitrum","polygon","gnosis","base","unichain","swellchain","celo","worldchain","berachain","ink","bsc","hyperliquid","plasma","avalanche","katana","linea","mega-eth","monad","etherlink","eip155:1","eip155:10","eip155:42161","eip155:137","eip155:100","eip155:8453","eip155:130","eip155:1923","eip155:42220","eip155:480","eip155:80094","eip155:57073","eip155:56","eip155:999","eip155:9745","eip155:43114","eip155:747474","eip155:59144","eip155:4326","eip155:143","eip155:42793"]},"in":"query","name":"srcNetwork","required":true,"description":"Source chain where burn occurred"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","enum":["pending","pending_confirmations","attested","complete","failed"],"description":"Current status of the bridge transaction"},"burnTxHash":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Original burn transaction hash"},"message":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Message bytes for claim (available when attested)"},"attestation":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Attestation bytes for claim (available when attested)"},"forwardTxHash":{"type":"string","pattern":"^0x[a-fA-F0-9]*$","description":"Relay transaction hash (for forwarding mode)"}},"required":["status","burnTxHash"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Request"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Unauthorized"]},"message":{"type":"string","enum":["An API key is required to access this service. Sign up at https://portal.vaults.fyi/signup to generate a key. We offer a Pay-As-You-Go plan so you only pay for what you use, with no commitments."]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"402":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"x402Version":{"anyOf":[{"type":"number"},{"type":"string"}]},"error":{"type":"string"},"accepts":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"]},"network":{"type":"string","enum":["base"]},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"outputSchema":{"type":"object","additionalProperties":{}},"payTo":{"type":"string"},"maxTimeoutSeconds":{"type":"number"},"asset":{"type":"string"},"extra":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"additionalProperties":false}},"required":["scheme","network","maxAmountRequired","resource","description","mimeType","payTo","maxTimeoutSeconds","asset","extra"],"additionalProperties":false}},{}]}},"required":["x402Version","error"],"additionalProperties":false},{}]}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Forbidden"]},"message":{"type":"string","enum":["This API key has exhausted its available credits. To resume service, please visit https://portal.vaults.fyi/signup to top-up your credits"]},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["Not Found"]},"message":{"type":"string"}},"required":["error","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"message":{"type":"string"},"errorId":{"type":"string"}},"additionalProperties":false},{}]}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Internal Server Error"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}},"502":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"statusCode":{"type":"number"},"error":{"type":"string","enum":["Bad Gateway"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["statusCode","error","message"],"additionalProperties":false},{}]}}}},"503":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"error":{"type":"string","enum":["Service Unavailable"]},"message":{"type":"string"},"errorId":{"type":"string"}},"required":["error","message"],"additionalProperties":false},{}]}}}}}}}},"servers":[{"url":"https://api.vaults.fyi","description":"Vaults.fyi Alpha API"}],"tags":[{"name":"Borrow"},{"name":"Borrow Markets"},{"name":"Cross Chain"},{"name":"CCTP Bridge"},{"name":"SVM"},{"name":"Holders"}]}