Obtain the status of a specific bridge transaction by withdrawal hash
This endpoint provides the status of a bridge transaction as created through the POST /quote/bridge-swap/user endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the GET /sda/deposit-addresses/{depositAddress}/{depositChain} endpoint should be used.
GET
/
history
/
bridge
/
by-withdraw-hash
/
{withdrawTxHash}
Obtain the status of a specific bridge transaction by withdrawal hash
The amount of native gas token (e.g. ETH, MATIC, BNB) that was delivered to the user's wallet on the destination chain as part of gas boost functionality, where Rhino.fi delivers a small amount of native gas token to the destination address, ensuring that further transactions from this address can be made immediately.
Any chain specific costs charged to the end customer for the chainOut part of the overall transaction. Further information about which chains have these associated costs can be found here: https://learn.rhino.fi/articles/7749894324-tron-and-solana-onchain-gas-costs. If these costs are being paid by the client then this value will be zero and the gasFee and gasFeeUsd in the sponsored fee body will be non-zero.
The cost on the chainIn to sweep the received tokens into Rhino.fi's control. For legacy clients this is deducted from the tokens sent on the chainOut. For PAYG/Subscription tier clients this is paid by Rhino.fi as part of the PAYG/Subscription monthly cost so no direct cost is passed onto the end customer, unless configured this way. This is only relevant for transactions involving a Rhino.fi Smart Deposit Address; for bridging/swapping-only activity the sourceGasFee will be paid directly by the customer within their depositing transaction.
Provides information about whether the transaction is expected to be completed "fast" (typically under 30 seconds), "standard" (typically under a minute) or "slow" (can be up to 20 minutes). For more information on our bridge processing speeds please read this article on the Rhino.fi Knowledge Base: https://learn.rhino.fi/articles/8257872655-bridge-speed.
Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.
Whether the deposit transaction has reached the required number of confirmations on the chainIn.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"rhino.fi - Docs","colors":{"primary":"#EC6530","light":"#FFAE6E","dark":"#EC6530"},"logo":{"light":"https://mintcdn.com/rhinofi/HGZOBv0k7QrdOe9G/logo/light.svg?fit=max\u0026auto=format\u0026n=HGZOBv0k7QrdOe9G\u0026q=85\u0026s=f00220627b114f0d5385756ccb61f55e","dark":"https://mintcdn.com/rhinofi/HGZOBv0k7QrdOe9G/logo/dark.svg?fit=max\u0026auto=format\u0026n=HGZOBv0k7QrdOe9G\u0026q=85\u0026s=6c233cf6099c635a00dcdb3643ea41cf"},"favicon":"https://mintcdn.com/rhinofi/HGZOBv0k7QrdOe9G/favicon.png?fit=max\u0026auto=format\u0026n=HGZOBv0k7QrdOe9G\u0026q=85\u0026s=32cac0eb60b5a965cb7308ad1eafefe8","api":{"mdx":{"server":"https://api.rhino.fi/bridge"}},"navbar":{"links":[{"href":"https://go.crisp.chat/chat/embed/?website_id=598d8062-c46b-40e7-a7cd-0bf2061390a5","label":"Support"}],"primary":{"type":"button","label":"Talk to the team","href":"https://rhino.fi/contact"}},"footer":{"socials":{"x":"https://x.com/rhinofi","github":"https://github.com/rhinofi"}},"fonts":{"family":"Geist"},"integrations":{"heap":{"appId":"3649556247"}},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Rhino.fi Console","icon":"code","href":"https://console.rhino.fi"},{"anchor":"Website","icon":"globe","href":"https://rhino.fi/"},{"anchor":"Blog","icon":"newspaper","href":"https://rhino.fi/blog/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"rhinofi","hasAudioNarration":false,"actualSubdomain":"rhinofi","customDomains":["docs.rhino.fi"],"gitSource":{"type":"github","owner":"rhinofi","repo":"rhino-public-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae4a50ef49f5b7aedfded9e","collectionId":"5c7b2aa0-65a9-47f4-8337-45a4347604b6","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae4a50ef49f5b7aedfded9e"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae4a50ef49f5b7aedfded9e","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Guides","count":55},{"language":"default","tag":"API Reference","count":25},{"language":"default","tag":"SDK","count":18},{"language":"default","tag":"Get Started","count":13},{"language":"default","tag":"Bridge \u0026 swap endpoints","count":13},{"language":"default","tag":"SDA endpoints","count":9},{"language":"default","tag":"depositAddresses","count":9},{"language":"default","tag":"Chain Adapters","count":8},{"language":"default","tag":"API Integration","count":7},{"language":"default","tag":"Extensions","count":7}]},"assistantConfig":{"enableAskAiButton":true,"enableAskAiSearchBar":false},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash","slug":"/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash","pageMetadata":{"title":"Obtain the status of a specific bridge transaction by withdrawal hash","description":"This endpoint provides the status of a bridge transaction as created through the `POST /quote/bridge-swap/user` endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the `GET /sda/deposit-addresses/{depositAddress}/{depositChain}` endpoint should be used.","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /history/bridge/by-withdraw-hash/{withdrawTxHash}","href":"/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"This endpoint provides the status of a bridge transaction as created through the \", _jsx(_components.code, {\n children: \"POST /quote/bridge-swap/user\"\n }), \" endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the \", _jsx(_components.code, {\n children: \"GET /sda/deposit-addresses/{depositAddress}/{depositChain}\"\n }), \" endpoint should be used.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Obtain the status of a specific bridge transaction by withdrawal hash","description":"This endpoint provides the status of a bridge transaction as created through the `POST /quote/bridge-swap/user` endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the `GET /sda/deposit-addresses/{depositAddress}/{depositChain}` endpoint should be used.","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /history/bridge/by-withdraw-hash/{withdrawTxHash}","href":"/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["history"],"operationId":"history.bridgeHistoryByWithdrawHash","parameters":["9213ce42-044f-4d59-af2e-4e5fec7c7fbe"],"security":["d2896251-f4bf-4123-a248-cd2111b9080d","84da1ff8-805f-40fb-b2e3-067ae6d44e51"],"responses":{"200":"d20c217c-36d1-42f6-925b-459dec37384f","400":"b5f49e35-2978-4040-8c74-749b2f944178","401":"ce61c144-6573-4be7-98c0-307044328c34","422":"49bde2a6-c0fa-4bdd-97f8-6164307a20c5"},"description":"This endpoint provides the status of a bridge transaction as created through the `POST /quote/bridge-swap/user` endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the `GET /sda/deposit-addresses/{depositAddress}/{depositChain}` endpoint should be used.","summary":"Obtain the status of a specific bridge transaction by withdrawal hash","method":"get","type":"path","servers":["7d2001a3-661d-4501-9b33-4eddef43f509"],"path":"/history/bridge/by-withdraw-hash/{withdrawTxHash}","baseUrlOptions":["https://api.rhino.fi/bridge"],"title":"Obtain the status of a specific bridge transaction by withdrawal hash","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"9213ce42-044f-4d59-af2e-4e5fec7c7fbe":{"name":"withdrawTxHash","in":"path","schema":{"type":"string","description":"The transaction hash of a withdrawal for a bridge transaction, e.g. \"0x5c504ed432cb51138bcf09aa5e8a410dd4a1e204ef84bfed1be16dfba1b22060\".","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true}},"responses":{"d20c217c-36d1-42f6-925b-459dec37384f":{"description":"Success","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["_id","userId","chainIn","chainOut","amountIn","amountInUsd","amountOut","amountOutUsd","amountNative","amountNativeUsd","fee","feeUsd","gasFee","gasFeeUsd","platformFee","platformFeeUsd","percentageFee","percentageFeeUsd","sourceGasFee","sourceGasFeeUsd","sponsoredFees","recipient","depositor","createdAt","commitmentDate","token","usdPrice","depositTxHash","depositCommittedAt","withdrawTxHash","withdrawCommittedAt","state"],"properties":{"_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0._id","typeLabel":"string"},"userId":{"type":"string","description":"The projectID that the transaction is associated with.","isRequired":true,"uniqueKey":"oneOf.0.userId","typeLabel":"string"},"chainIn":{"type":"string","description":"The blockchain that the tokens were bridged from.","isRequired":true,"uniqueKey":"oneOf.0.chainIn","typeLabel":"string"},"chainOut":{"type":"string","description":"The blockchain that the tokens were bridged to.","isRequired":true,"uniqueKey":"oneOf.0.chainOut","typeLabel":"string"},"amountIn":{"type":"string","description":"The native value of the tokens that were sent on the chainIn.","isRequired":true,"uniqueKey":"oneOf.0.amountIn","typeLabel":"string"},"amountInUsd":{"type":"number","description":"The USD value of the tokens that were sent on the chainIn.","isRequired":true,"uniqueKey":"oneOf.0.amountInUsd","typeLabel":"number"},"amountOut":{"type":"string","description":"The native value of the tokens that were sent on the chainOut.","isRequired":true,"uniqueKey":"oneOf.0.amountOut","typeLabel":"string"},"amountOutUsd":{"type":"number","description":"The USD value of the tokens that were sent on the chainOut.","isRequired":true,"uniqueKey":"oneOf.0.amountOutUsd","typeLabel":"number"},"amountNative":{"oneOf":[{"type":"string","description":"The amount of native gas token (e.g. ETH, MATIC, BNB) that was delivered to the user's wallet on the destination chain as part of gas boost functionality, where Rhino.fi delivers a small amount of native gas token to the destination address, ensuring that further transactions from this address can be made immediately.","isRequired":true,"uniqueKey":"oneOf.0.amountNative.oneOf.0","typeLabel":"string"},{"type":"null","description":"The amount of native gas token (e.g. ETH, MATIC, BNB) that was delivered to the user's wallet on the destination chain as part of gas boost functionality, where Rhino.fi delivers a small amount of native gas token to the destination address, ensuring that further transactions from this address can be made immediately.","isRequired":true,"uniqueKey":"oneOf.0.amountNative.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.amountNative","typeLabel":"string | null"},"amountNativeUsd":{"oneOf":[{"type":"number","description":"The value, in USD, of amountNative.","isRequired":true,"uniqueKey":"oneOf.0.amountNativeUsd.oneOf.0","typeLabel":"number"},{"type":"null","description":"The value, in USD, of amountNative.","isRequired":true,"uniqueKey":"oneOf.0.amountNativeUsd.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.amountNativeUsd","typeLabel":"number | null"},"fee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.fee","typeLabel":"string"},"feeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.0.feeUsd","typeLabel":"number"},"gasFee":{"type":"string","description":"Any chain specific costs charged to the end customer for the chainOut part of the overall transaction. Further information about which chains have these associated costs can be found here: https://learn.rhino.fi/articles/7749894324-tron-and-solana-onchain-gas-costs. If these costs are being paid by the client then this value will be zero and the gasFee and gasFeeUsd in the sponsored fee body will be non-zero.","isRequired":true,"uniqueKey":"oneOf.0.gasFee","typeLabel":"string"},"gasFeeUsd":{"type":"number","description":"The gasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.0.gasFeeUsd","typeLabel":"number"},"platformFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.platformFee","typeLabel":"string"},"platformFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.0.platformFeeUsd","typeLabel":"number"},"percentageFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.percentageFee","typeLabel":"string"},"percentageFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.0.percentageFeeUsd","typeLabel":"number"},"sourceGasFee":{"type":"string","description":"The cost on the chainIn to sweep the received tokens into Rhino.fi's control. For legacy clients this is deducted from the tokens sent on the chainOut. For PAYG/Subscription tier clients this is paid by Rhino.fi as part of the PAYG/Subscription monthly cost so no direct cost is passed onto the end customer, unless configured this way. This is only relevant for transactions involving a Rhino.fi Smart Deposit Address; for bridging/swapping-only activity the sourceGasFee will be paid directly by the customer within their depositing transaction.","isRequired":true,"uniqueKey":"oneOf.0.sourceGasFee","typeLabel":"string"},"sourceGasFeeUsd":{"type":"number","description":"The sourceGasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.0.sourceGasFeeUsd","typeLabel":"number"},"sponsoredFees":{"type":"object","properties":{"fee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.fee","typeLabel":"string"},"feeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.feeUsd","typeLabel":"number"},"gasFee":{"type":"string","description":"Any chain specific costs charged to the client for the chainOut part of the overall transaction. Further information about which chains have these associated costs can be found here: https://learn.rhino.fi/articles/7749894324-tron-and-solana-onchain-gas-costs. If these costs are being passed on to the end user then this value will be zero and the gasFee and gasFeeUsd in the main fee body will be non-zero.","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.gasFee","typeLabel":"string"},"gasFeeUsd":{"type":"number","description":"The gasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.gasFeeUsd","typeLabel":"number"},"platformFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.platformFee","typeLabel":"string"},"platformFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.platformFeeUsd","typeLabel":"number"},"percentageFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.percentageFee","typeLabel":"string"},"percentageFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.percentageFeeUsd","typeLabel":"number"},"sourceGasFee":{"type":"string","description":"The cost on the chainIn to sweep the received tokens into Rhino.fi's control. For legacy clients this is deducted from the tokens sent on the chainOut. For PAYG/Subscription tier clients this is paid by Rhino.fi as part of the PAYG/Subscription monthly cost so no direct cost is passed onto the client, unless configured to be passed onto the end customer. This is only relevant for transactions involving a Rhino.fi Smart Deposit Address; for bridging/swapping-only activity the sourceGasFee will be paid directly by the customer within their depositing transaction.","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.sourceGasFee","typeLabel":"string"},"sourceGasFeeUsd":{"type":"number","description":"The sourceGasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees.sourceGasFeeUsd","typeLabel":"number"}},"required":["fee","feeUsd","gasFee","gasFeeUsd","platformFee","platformFeeUsd","percentageFee","percentageFeeUsd","sourceGasFee","sourceGasFeeUsd"],"additionalProperties":false,"description":"For both legacy and PAYG/Subscription clients, represents the fees that are paid by the client on behalf of the end customer.","isRequired":true,"uniqueKey":"oneOf.0.sponsoredFees","typeLabel":"object"},"recipient":{"type":"string","description":"The address on the chainOut that received the bridged tokens.","isRequired":true,"uniqueKey":"oneOf.0.recipient","typeLabel":"string"},"depositor":{"type":"string","description":"The address on the chainIn that sent the tokens for bridging.","isRequired":true,"uniqueKey":"oneOf.0.depositor","typeLabel":"string"},"createdAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.createdAt","typeLabel":"string"},"commitmentDate":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.commitmentDate","typeLabel":"string"},"token":{"type":"string","description":"The token symbol that was bridged (e.g. \"ETH\", \"USDC\").","isRequired":true,"uniqueKey":"oneOf.0.token","typeLabel":"string"},"usdPrice":{"type":"number","description":"The USD price of the token at the time the quote was created.","isRequired":true,"uniqueKey":"oneOf.0.usdPrice","typeLabel":"number"},"depositTxHash":{"type":"string","description":"The transaction hash of the deposit made on the chainIn.","isRequired":true,"uniqueKey":"oneOf.0.depositTxHash","typeLabel":"string"},"depositCommittedAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.depositCommittedAt","typeLabel":"string"},"withdrawTxHash":{"type":"string","description":"The transaction hash of the withdrawal of the tokens to the recipient on the chainOut.","isRequired":true,"uniqueKey":"oneOf.0.withdrawTxHash","typeLabel":"string"},"withdrawCommittedAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.withdrawCommittedAt","typeLabel":"string"},"state":{"type":"string","enum":["EXECUTED"],"isRequired":true,"uniqueKey":"oneOf.0.state","typeLabel":"enum\u003cstring>"},"speed":{"type":"string","enum":["fast","standard","slow"],"description":"Provides information about whether the transaction is expected to be completed \"fast\" (typically under 30 seconds), \"standard\" (typically under a minute) or \"slow\" (can be up to 20 minutes). For more information on our bridge processing speeds please read this article on the Rhino.fi Knowledge Base: https://learn.rhino.fi/articles/8257872655-bridge-speed.","uniqueKey":"oneOf.0.speed","typeLabel":"enum\u003cstring>"},"estimatedDuration":{"oneOf":[{"type":"number","uniqueKey":"oneOf.0.estimatedDuration.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"uniqueKey":"oneOf.0.estimatedDuration.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.0.estimatedDuration","typeLabel":"number | enum\u003cstring>"},"postBridgeData":{"oneOf":[{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag","vaultId"],"properties":{"_tag":{"type":"string","enum":["extended"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.0._tag","typeLabel":"enum\u003cstring>"},"vaultId":{"type":"integer","minimum":0,"description":"A variable relating to the specific post bridge action.","isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.0.vaultId","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.0","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["starkwarebtcfi"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.1._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.1","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["wirexwrap"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.2._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.2","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["wirexwrapsandbox"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.3._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.3","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag","spans"],"properties":{"_tag":{"type":"string","enum":["starkwarebtcfiv2"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.4._tag","typeLabel":"enum\u003cstring>"},"spans":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.postBridgeData.oneOf.4.spans.items.[INDEX]","typeLabel":"string"},"maxItems":70,"description":"A variable relating to the specific post bridge action.","isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.4.spans","typeLabel":"string[]"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.4","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["aavev3supply"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.5._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.5","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["rocketfoundationdeposit"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.6._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.6","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["mapledeposit"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.7._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.7","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["etherfideposit"],"isRequired":true,"uniqueKey":"oneOf.0.postBridgeData.oneOf.8._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.0.postBridgeData.oneOf.8","typeLabel":"object"}],"uniqueKey":"oneOf.0.postBridgeData","typeLabel":"object"},"flowCredits":{"type":"number","description":"The number of Flow Credits that this transaction will use from the client's agreed Rhino.fi PAYG/Subscription tier.","uniqueKey":"oneOf.0.flowCredits","typeLabel":"number"},"chain":{"oneOf":[{"type":"string","description":"The name of the chain on which the single bridge transaction took place.","uniqueKey":"oneOf.0.chain.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.chain.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.chain","typeLabel":"string | null"},"depositAddress":{"type":"string","description":"The Rhino.fi smart contract address on the chainIn that received the tokens to initiate the bridge.","uniqueKey":"oneOf.0.depositAddress","typeLabel":"string"},"_tag":{"type":"string","enum":["bridge"],"uniqueKey":"oneOf.0._tag","typeLabel":"enum\u003cstring>"},"depositDiscoveredAt":{"type":"string","uniqueKey":"oneOf.0.depositDiscoveredAt","typeLabel":"string"},"depositConfirmedAt":{"type":"string","uniqueKey":"oneOf.0.depositConfirmedAt","typeLabel":"string"},"expectedDepositConfirmedAt":{"type":"string","uniqueKey":"oneOf.0.expectedDepositConfirmedAt","typeLabel":"string"},"expectedDepositConfirmedAtBlock":{"type":"integer","description":"The block on the chainIn at which the deposit transaction is expected to reach the required number of confirmations.","uniqueKey":"oneOf.0.expectedDepositConfirmedAtBlock","typeLabel":"integer"},"preSwapTxHash":{"type":"string","description":"The transaction hash of the swap performed on the chainIn before bridging.","uniqueKey":"oneOf.0.preSwapTxHash","typeLabel":"string"},"preSwapCommittedAt":{"type":"string","uniqueKey":"oneOf.0.preSwapCommittedAt","typeLabel":"string"},"isConfirmed":{"type":"boolean","description":"Whether the deposit transaction has reached the required number of confirmations on the chainIn.","uniqueKey":"oneOf.0.isConfirmed","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["_tag","_id","userId","chainIn","chainOut","amountIn","amountInUsd","amountOut","amountOutUsd","amountNative","amountNativeUsd","fee","feeUsd","gasFee","gasFeeUsd","platformFee","platformFeeUsd","percentageFee","percentageFeeUsd","sourceGasFee","sourceGasFeeUsd","sponsoredFees","recipient","depositor","createdAt","commitmentDate","tokenIn","tokenOut","minAmountOut","minAmountOutUsd","usdPriceTokenIn","usdPriceTokenOut","depositTxHash","depositCommittedAt","withdrawTxHash","withdrawCommittedAt","state"],"properties":{"_tag":{"type":"string","enum":["bridgeSwap"],"isRequired":true,"uniqueKey":"oneOf.1._tag","typeLabel":"enum\u003cstring>"},"_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1._id","typeLabel":"string"},"userId":{"type":"string","description":"The projectID that the transaction is associated with.","isRequired":true,"uniqueKey":"oneOf.1.userId","typeLabel":"string"},"chainIn":{"type":"string","description":"The blockchain that the tokens were bridged from.","isRequired":true,"uniqueKey":"oneOf.1.chainIn","typeLabel":"string"},"chainOut":{"type":"string","description":"The blockchain that the tokens were bridged to.","isRequired":true,"uniqueKey":"oneOf.1.chainOut","typeLabel":"string"},"amountIn":{"type":"string","description":"The native value of the tokens that were sent on the chainIn.","isRequired":true,"uniqueKey":"oneOf.1.amountIn","typeLabel":"string"},"amountInUsd":{"type":"number","description":"The USD value of the tokens that were sent on the chainIn.","isRequired":true,"uniqueKey":"oneOf.1.amountInUsd","typeLabel":"number"},"amountOut":{"type":"string","description":"The native value of the tokens that were sent on the chainOut.","isRequired":true,"uniqueKey":"oneOf.1.amountOut","typeLabel":"string"},"amountOutUsd":{"type":"number","description":"The USD value of the tokens that were sent on the chainOut.","isRequired":true,"uniqueKey":"oneOf.1.amountOutUsd","typeLabel":"number"},"amountNative":{"oneOf":[{"type":"string","description":"The amount of native gas token (e.g. ETH, MATIC, BNB) that was delivered to the user's wallet on the destination chain as part of gas boost functionality, where Rhino.fi delivers a small amount of native gas token to the destination address, ensuring that further transactions from this address can be made immediately.","isRequired":true,"uniqueKey":"oneOf.1.amountNative.oneOf.0","typeLabel":"string"},{"type":"null","description":"The amount of native gas token (e.g. ETH, MATIC, BNB) that was delivered to the user's wallet on the destination chain as part of gas boost functionality, where Rhino.fi delivers a small amount of native gas token to the destination address, ensuring that further transactions from this address can be made immediately.","isRequired":true,"uniqueKey":"oneOf.1.amountNative.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.1.amountNative","typeLabel":"string | null"},"amountNativeUsd":{"oneOf":[{"type":"number","description":"The value, in USD, of amountNative.","isRequired":true,"uniqueKey":"oneOf.1.amountNativeUsd.oneOf.0","typeLabel":"number"},{"type":"null","description":"The value, in USD, of amountNative.","isRequired":true,"uniqueKey":"oneOf.1.amountNativeUsd.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.1.amountNativeUsd","typeLabel":"number | null"},"fee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.fee","typeLabel":"string"},"feeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.1.feeUsd","typeLabel":"number"},"gasFee":{"type":"string","description":"Any chain specific costs charged to the end customer for the chainOut part of the overall transaction. Further information about which chains have these associated costs can be found here: https://learn.rhino.fi/articles/7749894324-tron-and-solana-onchain-gas-costs. If these costs are being paid by the client then this value will be zero and the gasFee and gasFeeUsd in the sponsored fee body will be non-zero.","isRequired":true,"uniqueKey":"oneOf.1.gasFee","typeLabel":"string"},"gasFeeUsd":{"type":"number","description":"The gasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.1.gasFeeUsd","typeLabel":"number"},"platformFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.platformFee","typeLabel":"string"},"platformFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.1.platformFeeUsd","typeLabel":"number"},"percentageFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.percentageFee","typeLabel":"string"},"percentageFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.1.percentageFeeUsd","typeLabel":"number"},"sourceGasFee":{"type":"string","description":"The cost on the chainIn to sweep the received tokens into Rhino.fi's control. For legacy clients this is deducted from the tokens sent on the chainOut. For PAYG/Subscription tier clients this is paid by Rhino.fi as part of the PAYG/Subscription monthly cost so no direct cost is passed onto the end customer, unless configured this way. This is only relevant for transactions involving a Rhino.fi Smart Deposit Address; for bridging/swapping-only activity the sourceGasFee will be paid directly by the customer within their depositing transaction.","isRequired":true,"uniqueKey":"oneOf.1.sourceGasFee","typeLabel":"string"},"sourceGasFeeUsd":{"type":"number","description":"The sourceGasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.1.sourceGasFeeUsd","typeLabel":"number"},"sponsoredFees":{"type":"object","properties":{"fee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.fee","typeLabel":"string"},"feeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.feeUsd","typeLabel":"number"},"gasFee":{"type":"string","description":"Any chain specific costs charged to the client for the chainOut part of the overall transaction. Further information about which chains have these associated costs can be found here: https://learn.rhino.fi/articles/7749894324-tron-and-solana-onchain-gas-costs. If these costs are being passed on to the end user then this value will be zero and the gasFee and gasFeeUsd in the main fee body will be non-zero.","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.gasFee","typeLabel":"string"},"gasFeeUsd":{"type":"number","description":"The gasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.gasFeeUsd","typeLabel":"number"},"platformFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.platformFee","typeLabel":"string"},"platformFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.platformFeeUsd","typeLabel":"number"},"percentageFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.percentageFee","typeLabel":"string"},"percentageFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.percentageFeeUsd","typeLabel":"number"},"sourceGasFee":{"type":"string","description":"The cost on the chainIn to sweep the received tokens into Rhino.fi's control. For legacy clients this is deducted from the tokens sent on the chainOut. For PAYG/Subscription tier clients this is paid by Rhino.fi as part of the PAYG/Subscription monthly cost so no direct cost is passed onto the client, unless configured to be passed onto the end customer. This is only relevant for transactions involving a Rhino.fi Smart Deposit Address; for bridging/swapping-only activity the sourceGasFee will be paid directly by the customer within their depositing transaction.","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.sourceGasFee","typeLabel":"string"},"sourceGasFeeUsd":{"type":"number","description":"The sourceGasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees.sourceGasFeeUsd","typeLabel":"number"}},"required":["fee","feeUsd","gasFee","gasFeeUsd","platformFee","platformFeeUsd","percentageFee","percentageFeeUsd","sourceGasFee","sourceGasFeeUsd"],"additionalProperties":false,"description":"For both legacy and PAYG/Subscription clients, represents the fees that are paid by the client on behalf of the end customer.","isRequired":true,"uniqueKey":"oneOf.1.sponsoredFees","typeLabel":"object"},"recipient":{"type":"string","description":"The address on the chainOut that received the bridged tokens.","isRequired":true,"uniqueKey":"oneOf.1.recipient","typeLabel":"string"},"depositor":{"type":"string","description":"The address on the chainIn that sent the tokens for bridging.","isRequired":true,"uniqueKey":"oneOf.1.depositor","typeLabel":"string"},"createdAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.createdAt","typeLabel":"string"},"commitmentDate":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.commitmentDate","typeLabel":"string"},"tokenIn":{"type":"string","description":"The asset that was sent on the chainIn.","isRequired":true,"uniqueKey":"oneOf.1.tokenIn","typeLabel":"string"},"tokenOut":{"type":"string","description":"The asset that was received on the chainOut.","isRequired":true,"uniqueKey":"oneOf.1.tokenOut","typeLabel":"string"},"minAmountOut":{"type":"string","description":"The minimum native value of tokenOut guaranteed to be received on the chainOut, after slippage.","isRequired":true,"uniqueKey":"oneOf.1.minAmountOut","typeLabel":"string"},"minAmountOutUsd":{"type":"number","description":"The USD value of the minAmountOut.","isRequired":true,"uniqueKey":"oneOf.1.minAmountOutUsd","typeLabel":"number"},"usdPriceTokenIn":{"type":"number","description":"The USD price of the tokenIn at the time the quote was created.","isRequired":true,"uniqueKey":"oneOf.1.usdPriceTokenIn","typeLabel":"number"},"usdPriceTokenOut":{"type":"number","description":"The USD price of the tokenOut at the time the quote was created.","isRequired":true,"uniqueKey":"oneOf.1.usdPriceTokenOut","typeLabel":"number"},"depositTxHash":{"type":"string","description":"The transaction hash of the deposit made on the chainIn.","isRequired":true,"uniqueKey":"oneOf.1.depositTxHash","typeLabel":"string"},"depositCommittedAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.depositCommittedAt","typeLabel":"string"},"withdrawTxHash":{"type":"string","description":"The transaction hash of the withdrawal of the tokens to the recipient on the chainOut.","isRequired":true,"uniqueKey":"oneOf.1.withdrawTxHash","typeLabel":"string"},"withdrawCommittedAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.withdrawCommittedAt","typeLabel":"string"},"state":{"type":"string","enum":["EXECUTED"],"isRequired":true,"uniqueKey":"oneOf.1.state","typeLabel":"enum\u003cstring>"},"speed":{"type":"string","enum":["fast","standard","slow"],"description":"Provides information about whether the transaction is expected to be completed \"fast\" (typically under 30 seconds), \"standard\" (typically under a minute) or \"slow\" (can be up to 20 minutes). For more information on our bridge processing speeds please read this article on the Rhino.fi Knowledge Base: https://learn.rhino.fi/articles/8257872655-bridge-speed.","uniqueKey":"oneOf.1.speed","typeLabel":"enum\u003cstring>"},"estimatedDuration":{"oneOf":[{"type":"number","uniqueKey":"oneOf.1.estimatedDuration.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"uniqueKey":"oneOf.1.estimatedDuration.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.estimatedDuration","typeLabel":"number | enum\u003cstring>"},"postBridgeData":{"oneOf":[{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag","vaultId"],"properties":{"_tag":{"type":"string","enum":["extended"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.0._tag","typeLabel":"enum\u003cstring>"},"vaultId":{"type":"integer","minimum":0,"description":"A variable relating to the specific post bridge action.","isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.0.vaultId","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.0","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["starkwarebtcfi"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.1._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.1","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["wirexwrap"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.2._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.2","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["wirexwrapsandbox"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.3._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.3","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag","spans"],"properties":{"_tag":{"type":"string","enum":["starkwarebtcfiv2"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.4._tag","typeLabel":"enum\u003cstring>"},"spans":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.1.postBridgeData.oneOf.4.spans.items.[INDEX]","typeLabel":"string"},"maxItems":70,"description":"A variable relating to the specific post bridge action.","isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.4.spans","typeLabel":"string[]"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.4","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["aavev3supply"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.5._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.5","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["rocketfoundationdeposit"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.6._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.6","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["mapledeposit"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.7._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.7","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["etherfideposit"],"isRequired":true,"uniqueKey":"oneOf.1.postBridgeData.oneOf.8._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.1.postBridgeData.oneOf.8","typeLabel":"object"}],"uniqueKey":"oneOf.1.postBridgeData","typeLabel":"object"},"flowCredits":{"type":"number","description":"The number of Flow Credits that this transaction will use from the client's agreed Rhino.fi PAYG/Subscription tier.","uniqueKey":"oneOf.1.flowCredits","typeLabel":"number"},"preSwap":{"type":"object","properties":{"tokenIn":{"type":"string","description":"The asset that was swapped from.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.tokenIn","typeLabel":"string"},"tokenOut":{"type":"string","description":"The asset that was swapped to.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.tokenOut","typeLabel":"string"},"amountIn":{"type":"string","description":"The native value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.amountIn","typeLabel":"string"},"amountInUsd":{"type":"number","description":"The USD value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.amountInUsd","typeLabel":"number"},"amountOut":{"type":"string","description":"The native value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.amountOut","typeLabel":"string"},"amountOutUsd":{"type":"number","description":"The USD value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.amountOutUsd","typeLabel":"number"},"minAmountOut":{"type":"string","description":"The minimum native value of tokens guaranteed to be received from the swap, after slippage.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.minAmountOut","typeLabel":"string"},"minAmountOutUsd":{"type":"number","description":"The USD value of the minAmountOut.","isRequired":true,"uniqueKey":"oneOf.1.preSwap.minAmountOutUsd","typeLabel":"number"},"aggregator":{"oneOf":[{"type":"string","title":"KYBERSWAP","description":"The swap aggregator used to execute the swap.","enum":["KYBERSWAP"],"isRequired":true,"uniqueKey":"oneOf.1.preSwap.aggregator.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","title":"RHINO","description":"The swap aggregator used to execute the swap.","enum":["RHINO"],"isRequired":true,"uniqueKey":"oneOf.1.preSwap.aggregator.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"string","title":"ONEINCH","description":"The swap aggregator used to execute the swap.","enum":["ONEINCH"],"isRequired":true,"uniqueKey":"oneOf.1.preSwap.aggregator.oneOf.2","typeLabel":"enum\u003cstring>"},{"type":"string","title":"BEBOP","description":"The swap aggregator used to execute the swap.","enum":["BEBOP"],"isRequired":true,"uniqueKey":"oneOf.1.preSwap.aggregator.oneOf.3","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.1.preSwap.aggregator","typeLabel":"enum\u003cstring>"}},"required":["tokenIn","tokenOut","amountIn","amountInUsd","amountOut","amountOutUsd","minAmountOut","minAmountOutUsd","aggregator"],"additionalProperties":false,"uniqueKey":"oneOf.1.preSwap","typeLabel":"object"},"postSwap":{"type":"object","properties":{"tokenIn":{"type":"string","description":"The asset that was swapped from.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.tokenIn","typeLabel":"string"},"tokenOut":{"type":"string","description":"The asset that was swapped to.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.tokenOut","typeLabel":"string"},"amountIn":{"type":"string","description":"The native value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.amountIn","typeLabel":"string"},"amountInUsd":{"type":"number","description":"The USD value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.amountInUsd","typeLabel":"number"},"amountOut":{"type":"string","description":"The native value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.amountOut","typeLabel":"string"},"amountOutUsd":{"type":"number","description":"The USD value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.amountOutUsd","typeLabel":"number"},"minAmountOut":{"type":"string","description":"The minimum native value of tokens guaranteed to be received from the swap, after slippage.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.minAmountOut","typeLabel":"string"},"minAmountOutUsd":{"type":"number","description":"The USD value of the minAmountOut.","isRequired":true,"uniqueKey":"oneOf.1.postSwap.minAmountOutUsd","typeLabel":"number"},"aggregator":{"oneOf":[{"type":"string","title":"KYBERSWAP","description":"The swap aggregator used to execute the swap.","enum":["KYBERSWAP"],"isRequired":true,"uniqueKey":"oneOf.1.postSwap.aggregator.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","title":"RHINO","description":"The swap aggregator used to execute the swap.","enum":["RHINO"],"isRequired":true,"uniqueKey":"oneOf.1.postSwap.aggregator.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"string","title":"ONEINCH","description":"The swap aggregator used to execute the swap.","enum":["ONEINCH"],"isRequired":true,"uniqueKey":"oneOf.1.postSwap.aggregator.oneOf.2","typeLabel":"enum\u003cstring>"},{"type":"string","title":"BEBOP","description":"The swap aggregator used to execute the swap.","enum":["BEBOP"],"isRequired":true,"uniqueKey":"oneOf.1.postSwap.aggregator.oneOf.3","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.1.postSwap.aggregator","typeLabel":"enum\u003cstring>"}},"required":["tokenIn","tokenOut","amountIn","amountInUsd","amountOut","amountOutUsd","minAmountOut","minAmountOutUsd","aggregator"],"additionalProperties":false,"uniqueKey":"oneOf.1.postSwap","typeLabel":"object"},"mode":{"type":"string","enum":["pay","receive"],"description":"Whether the amount represented the sending (\"pay\") or receiving (\"receive\") amount when the quote was generated.","uniqueKey":"oneOf.1.mode","typeLabel":"enum\u003cstring>"},"isAtomicSwap":{"type":"boolean","description":"Whether the transaction was executed as an atomic swap.","uniqueKey":"oneOf.1.isAtomicSwap","typeLabel":"boolean"},"swapFeeMultiplier":{"type":"string","uniqueKey":"oneOf.1.swapFeeMultiplier","typeLabel":"string"},"depositDiscoveredAt":{"type":"string","uniqueKey":"oneOf.1.depositDiscoveredAt","typeLabel":"string"},"depositConfirmedAt":{"type":"string","uniqueKey":"oneOf.1.depositConfirmedAt","typeLabel":"string"},"expectedDepositConfirmedAt":{"type":"string","uniqueKey":"oneOf.1.expectedDepositConfirmedAt","typeLabel":"string"},"expectedDepositConfirmedAtBlock":{"type":"integer","description":"The block on the chainIn at which the deposit transaction is expected to reach the required number of confirmations.","uniqueKey":"oneOf.1.expectedDepositConfirmedAtBlock","typeLabel":"integer"},"preSwapTxHash":{"type":"string","description":"The transaction hash of the swap performed on the chainIn before bridging.","uniqueKey":"oneOf.1.preSwapTxHash","typeLabel":"string"},"preSwapCommittedAt":{"type":"string","uniqueKey":"oneOf.1.preSwapCommittedAt","typeLabel":"string"},"isConfirmed":{"type":"boolean","description":"Whether the deposit transaction has reached the required number of confirmations on the chainIn.","uniqueKey":"oneOf.1.isConfirmed","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["_tag","_id","userId","chainIn","chainOut","amountIn","amountInUsd","amountOut","amountOutUsd","amountNative","amountNativeUsd","fee","feeUsd","gasFee","gasFeeUsd","platformFee","platformFeeUsd","percentageFee","percentageFeeUsd","sourceGasFee","sourceGasFeeUsd","sponsoredFees","recipient","depositor","createdAt","commitmentDate","token","usdPrice","depositAddress","depositTxHash","depositCommittedAt","withdrawTxHash","withdrawCommittedAt","state"],"properties":{"_tag":{"type":"string","enum":["depositAddressBridge"],"isRequired":true,"uniqueKey":"oneOf.2._tag","typeLabel":"enum\u003cstring>"},"_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2._id","typeLabel":"string"},"userId":{"type":"string","description":"The projectID that the transaction is associated with.","isRequired":true,"uniqueKey":"oneOf.2.userId","typeLabel":"string"},"chainIn":{"type":"string","description":"The blockchain that the tokens were bridged from.","isRequired":true,"uniqueKey":"oneOf.2.chainIn","typeLabel":"string"},"chainOut":{"type":"string","description":"The blockchain that the tokens were bridged to.","isRequired":true,"uniqueKey":"oneOf.2.chainOut","typeLabel":"string"},"amountIn":{"type":"string","description":"The native value of the tokens that were sent on the chainIn.","isRequired":true,"uniqueKey":"oneOf.2.amountIn","typeLabel":"string"},"amountInUsd":{"type":"number","description":"The USD value of the tokens that were sent on the chainIn.","isRequired":true,"uniqueKey":"oneOf.2.amountInUsd","typeLabel":"number"},"amountOut":{"type":"string","description":"The native value of the tokens that were sent on the chainOut.","isRequired":true,"uniqueKey":"oneOf.2.amountOut","typeLabel":"string"},"amountOutUsd":{"type":"number","description":"The USD value of the tokens that were sent on the chainOut.","isRequired":true,"uniqueKey":"oneOf.2.amountOutUsd","typeLabel":"number"},"amountNative":{"oneOf":[{"type":"string","description":"The amount of native gas token (e.g. ETH, MATIC, BNB) that was delivered to the user's wallet on the destination chain as part of gas boost functionality, where Rhino.fi delivers a small amount of native gas token to the destination address, ensuring that further transactions from this address can be made immediately.","isRequired":true,"uniqueKey":"oneOf.2.amountNative.oneOf.0","typeLabel":"string"},{"type":"null","description":"The amount of native gas token (e.g. ETH, MATIC, BNB) that was delivered to the user's wallet on the destination chain as part of gas boost functionality, where Rhino.fi delivers a small amount of native gas token to the destination address, ensuring that further transactions from this address can be made immediately.","isRequired":true,"uniqueKey":"oneOf.2.amountNative.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.2.amountNative","typeLabel":"string | null"},"amountNativeUsd":{"oneOf":[{"type":"number","description":"The value, in USD, of amountNative.","isRequired":true,"uniqueKey":"oneOf.2.amountNativeUsd.oneOf.0","typeLabel":"number"},{"type":"null","description":"The value, in USD, of amountNative.","isRequired":true,"uniqueKey":"oneOf.2.amountNativeUsd.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.2.amountNativeUsd","typeLabel":"number | null"},"fee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.fee","typeLabel":"string"},"feeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.2.feeUsd","typeLabel":"number"},"gasFee":{"type":"string","description":"Any chain specific costs charged to the end customer for the chainOut part of the overall transaction. Further information about which chains have these associated costs can be found here: https://learn.rhino.fi/articles/7749894324-tron-and-solana-onchain-gas-costs. If these costs are being paid by the client then this value will be zero and the gasFee and gasFeeUsd in the sponsored fee body will be non-zero.","isRequired":true,"uniqueKey":"oneOf.2.gasFee","typeLabel":"string"},"gasFeeUsd":{"type":"number","description":"The gasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.2.gasFeeUsd","typeLabel":"number"},"platformFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.platformFee","typeLabel":"string"},"platformFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.2.platformFeeUsd","typeLabel":"number"},"percentageFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.percentageFee","typeLabel":"string"},"percentageFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.2.percentageFeeUsd","typeLabel":"number"},"sourceGasFee":{"type":"string","description":"The cost on the chainIn to sweep the received tokens into Rhino.fi's control. For legacy clients this is deducted from the tokens sent on the chainOut. For PAYG/Subscription tier clients this is paid by Rhino.fi as part of the PAYG/Subscription monthly cost so no direct cost is passed onto the end customer, unless configured this way. This is only relevant for transactions involving a Rhino.fi Smart Deposit Address; for bridging/swapping-only activity the sourceGasFee will be paid directly by the customer within their depositing transaction.","isRequired":true,"uniqueKey":"oneOf.2.sourceGasFee","typeLabel":"string"},"sourceGasFeeUsd":{"type":"number","description":"The sourceGasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.2.sourceGasFeeUsd","typeLabel":"number"},"sponsoredFees":{"type":"object","properties":{"fee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.fee","typeLabel":"string"},"feeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.feeUsd","typeLabel":"number"},"gasFee":{"type":"string","description":"Any chain specific costs charged to the client for the chainOut part of the overall transaction. Further information about which chains have these associated costs can be found here: https://learn.rhino.fi/articles/7749894324-tron-and-solana-onchain-gas-costs. If these costs are being passed on to the end user then this value will be zero and the gasFee and gasFeeUsd in the main fee body will be non-zero.","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.gasFee","typeLabel":"string"},"gasFeeUsd":{"type":"number","description":"The gasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.gasFeeUsd","typeLabel":"number"},"platformFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.platformFee","typeLabel":"string"},"platformFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.platformFeeUsd","typeLabel":"number"},"percentageFee":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.percentageFee","typeLabel":"string"},"percentageFeeUsd":{"type":"number","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.percentageFeeUsd","typeLabel":"number"},"sourceGasFee":{"type":"string","description":"The cost on the chainIn to sweep the received tokens into Rhino.fi's control. For legacy clients this is deducted from the tokens sent on the chainOut. For PAYG/Subscription tier clients this is paid by Rhino.fi as part of the PAYG/Subscription monthly cost so no direct cost is passed onto the client, unless configured to be passed onto the end customer. This is only relevant for transactions involving a Rhino.fi Smart Deposit Address; for bridging/swapping-only activity the sourceGasFee will be paid directly by the customer within their depositing transaction.","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.sourceGasFee","typeLabel":"string"},"sourceGasFeeUsd":{"type":"number","description":"The sourceGasFee value, in USD.","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees.sourceGasFeeUsd","typeLabel":"number"}},"required":["fee","feeUsd","gasFee","gasFeeUsd","platformFee","platformFeeUsd","percentageFee","percentageFeeUsd","sourceGasFee","sourceGasFeeUsd"],"additionalProperties":false,"description":"For both legacy and PAYG/Subscription clients, represents the fees that are paid by the client on behalf of the end customer.","isRequired":true,"uniqueKey":"oneOf.2.sponsoredFees","typeLabel":"object"},"recipient":{"type":"string","description":"The address on the chainOut that received the bridged tokens.","isRequired":true,"uniqueKey":"oneOf.2.recipient","typeLabel":"string"},"depositor":{"type":"string","description":"The address on the chainIn that sent the tokens for bridging.","isRequired":true,"uniqueKey":"oneOf.2.depositor","typeLabel":"string"},"createdAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.createdAt","typeLabel":"string"},"commitmentDate":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.commitmentDate","typeLabel":"string"},"token":{"type":"string","description":"The asset deposited into the Smart Deposit Address on the chainIn. Where the deposit address performs a swap, the asset received on the chainOut may differ.","isRequired":true,"uniqueKey":"oneOf.2.token","typeLabel":"string"},"usdPrice":{"type":"number","description":"The USD price of the token at the time the quote was created.","isRequired":true,"uniqueKey":"oneOf.2.usdPrice","typeLabel":"number"},"depositAddress":{"type":"string","description":"The Rhino.fi Smart Deposit Address that the tokens were deposited to.","isRequired":true,"uniqueKey":"oneOf.2.depositAddress","typeLabel":"string"},"depositTxHash":{"type":"string","description":"The transaction hash of the deposit made on the chainIn.","isRequired":true,"uniqueKey":"oneOf.2.depositTxHash","typeLabel":"string"},"depositCommittedAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.depositCommittedAt","typeLabel":"string"},"withdrawTxHash":{"type":"string","description":"The transaction hash of the withdrawal of the tokens to the recipient on the chainOut.","isRequired":true,"uniqueKey":"oneOf.2.withdrawTxHash","typeLabel":"string"},"withdrawCommittedAt":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.withdrawCommittedAt","typeLabel":"string"},"state":{"type":"string","enum":["EXECUTED"],"isRequired":true,"uniqueKey":"oneOf.2.state","typeLabel":"enum\u003cstring>"},"speed":{"type":"string","enum":["fast","standard","slow"],"description":"Provides information about whether the transaction is expected to be completed \"fast\" (typically under 30 seconds), \"standard\" (typically under a minute) or \"slow\" (can be up to 20 minutes). For more information on our bridge processing speeds please read this article on the Rhino.fi Knowledge Base: https://learn.rhino.fi/articles/8257872655-bridge-speed.","uniqueKey":"oneOf.2.speed","typeLabel":"enum\u003cstring>"},"estimatedDuration":{"oneOf":[{"type":"number","uniqueKey":"oneOf.2.estimatedDuration.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"uniqueKey":"oneOf.2.estimatedDuration.oneOf.1","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.2.estimatedDuration","typeLabel":"number | enum\u003cstring>"},"postBridgeData":{"oneOf":[{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag","vaultId"],"properties":{"_tag":{"type":"string","enum":["extended"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.0._tag","typeLabel":"enum\u003cstring>"},"vaultId":{"type":"integer","minimum":0,"description":"A variable relating to the specific post bridge action.","isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.0.vaultId","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.0","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["starkwarebtcfi"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.1._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.1","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["wirexwrap"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.2._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.2","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["wirexwrapsandbox"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.3._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.3","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag","spans"],"properties":{"_tag":{"type":"string","enum":["starkwarebtcfiv2"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.4._tag","typeLabel":"enum\u003cstring>"},"spans":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.2.postBridgeData.oneOf.4.spans.items.[INDEX]","typeLabel":"string"},"maxItems":70,"description":"A variable relating to the specific post bridge action.","isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.4.spans","typeLabel":"string[]"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.4","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["aavev3supply"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.5._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.5","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["rocketfoundationdeposit"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.6._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.6","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["mapledeposit"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.7._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.7","typeLabel":"object"},{"type":"object","description":"Custom Routing Rules as configured by Rhino.fi for a specific client, e.g. to move funds after the initial bridge into a yield bearing vault. To understand more about how Routing Rules can help automate onchain actions and ensure that your funds land in an active state, please contact your Rhino.fi Customer Success Manager or speak to a member of the Rhino.fi sales team.","required":["_tag"],"properties":{"_tag":{"type":"string","enum":["etherfideposit"],"isRequired":true,"uniqueKey":"oneOf.2.postBridgeData.oneOf.8._tag","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.2.postBridgeData.oneOf.8","typeLabel":"object"}],"uniqueKey":"oneOf.2.postBridgeData","typeLabel":"object"},"flowCredits":{"type":"number","description":"The number of Flow Credits that this transaction will use from the client's agreed Rhino.fi PAYG/Subscription tier.","uniqueKey":"oneOf.2.flowCredits","typeLabel":"number"},"tokenOut":{"type":"string","description":"The asset received on the chainOut where the deposit address performs a swap.","uniqueKey":"oneOf.2.tokenOut","typeLabel":"string"},"preSwap":{"type":"object","properties":{"tokenIn":{"type":"string","description":"The asset that was swapped from.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.tokenIn","typeLabel":"string"},"tokenOut":{"type":"string","description":"The asset that was swapped to.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.tokenOut","typeLabel":"string"},"amountIn":{"type":"string","description":"The native value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.amountIn","typeLabel":"string"},"amountInUsd":{"type":"number","description":"The USD value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.amountInUsd","typeLabel":"number"},"amountOut":{"type":"string","description":"The native value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.amountOut","typeLabel":"string"},"amountOutUsd":{"type":"number","description":"The USD value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.amountOutUsd","typeLabel":"number"},"minAmountOut":{"type":"string","description":"The minimum native value of tokens guaranteed to be received from the swap, after slippage.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.minAmountOut","typeLabel":"string"},"minAmountOutUsd":{"type":"number","description":"The USD value of the minAmountOut.","isRequired":true,"uniqueKey":"oneOf.2.preSwap.minAmountOutUsd","typeLabel":"number"},"aggregator":{"oneOf":[{"type":"string","title":"KYBERSWAP","description":"The swap aggregator used to execute the swap.","enum":["KYBERSWAP"],"isRequired":true,"uniqueKey":"oneOf.2.preSwap.aggregator.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","title":"RHINO","description":"The swap aggregator used to execute the swap.","enum":["RHINO"],"isRequired":true,"uniqueKey":"oneOf.2.preSwap.aggregator.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"string","title":"ONEINCH","description":"The swap aggregator used to execute the swap.","enum":["ONEINCH"],"isRequired":true,"uniqueKey":"oneOf.2.preSwap.aggregator.oneOf.2","typeLabel":"enum\u003cstring>"},{"type":"string","title":"BEBOP","description":"The swap aggregator used to execute the swap.","enum":["BEBOP"],"isRequired":true,"uniqueKey":"oneOf.2.preSwap.aggregator.oneOf.3","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.2.preSwap.aggregator","typeLabel":"enum\u003cstring>"}},"required":["tokenIn","tokenOut","amountIn","amountInUsd","amountOut","amountOutUsd","minAmountOut","minAmountOutUsd","aggregator"],"additionalProperties":false,"uniqueKey":"oneOf.2.preSwap","typeLabel":"object"},"postSwap":{"type":"object","properties":{"tokenIn":{"type":"string","description":"The asset that was swapped from.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.tokenIn","typeLabel":"string"},"tokenOut":{"type":"string","description":"The asset that was swapped to.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.tokenOut","typeLabel":"string"},"amountIn":{"type":"string","description":"The native value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.amountIn","typeLabel":"string"},"amountInUsd":{"type":"number","description":"The USD value of the tokens that were swapped from.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.amountInUsd","typeLabel":"number"},"amountOut":{"type":"string","description":"The native value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.amountOut","typeLabel":"string"},"amountOutUsd":{"type":"number","description":"The USD value of the tokens that were received from the swap.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.amountOutUsd","typeLabel":"number"},"minAmountOut":{"type":"string","description":"The minimum native value of tokens guaranteed to be received from the swap, after slippage.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.minAmountOut","typeLabel":"string"},"minAmountOutUsd":{"type":"number","description":"The USD value of the minAmountOut.","isRequired":true,"uniqueKey":"oneOf.2.postSwap.minAmountOutUsd","typeLabel":"number"},"aggregator":{"oneOf":[{"type":"string","title":"KYBERSWAP","description":"The swap aggregator used to execute the swap.","enum":["KYBERSWAP"],"isRequired":true,"uniqueKey":"oneOf.2.postSwap.aggregator.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","title":"RHINO","description":"The swap aggregator used to execute the swap.","enum":["RHINO"],"isRequired":true,"uniqueKey":"oneOf.2.postSwap.aggregator.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"string","title":"ONEINCH","description":"The swap aggregator used to execute the swap.","enum":["ONEINCH"],"isRequired":true,"uniqueKey":"oneOf.2.postSwap.aggregator.oneOf.2","typeLabel":"enum\u003cstring>"},{"type":"string","title":"BEBOP","description":"The swap aggregator used to execute the swap.","enum":["BEBOP"],"isRequired":true,"uniqueKey":"oneOf.2.postSwap.aggregator.oneOf.3","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"oneOf.2.postSwap.aggregator","typeLabel":"enum\u003cstring>"}},"required":["tokenIn","tokenOut","amountIn","amountInUsd","amountOut","amountOutUsd","minAmountOut","minAmountOutUsd","aggregator"],"additionalProperties":false,"uniqueKey":"oneOf.2.postSwap","typeLabel":"object"},"paymentIntentId":{"type":"string","minLength":1,"description":"Identifier of the payment intent a payment deposit address settles.","uniqueKey":"oneOf.2.paymentIntentId","typeLabel":"string"},"depositDiscoveredAt":{"type":"string","uniqueKey":"oneOf.2.depositDiscoveredAt","typeLabel":"string"},"depositConfirmedAt":{"type":"string","uniqueKey":"oneOf.2.depositConfirmedAt","typeLabel":"string"},"expectedDepositConfirmedAt":{"type":"string","uniqueKey":"oneOf.2.expectedDepositConfirmedAt","typeLabel":"string"},"expectedDepositConfirmedAtBlock":{"type":"integer","description":"The block on the chainIn at which the deposit transaction is expected to reach the required number of confirmations.","uniqueKey":"oneOf.2.expectedDepositConfirmedAtBlock","typeLabel":"integer"},"preSwapTxHash":{"type":"string","description":"The transaction hash of the swap performed on the chainIn before bridging.","uniqueKey":"oneOf.2.preSwapTxHash","typeLabel":"string"},"preSwapCommittedAt":{"type":"string","uniqueKey":"oneOf.2.preSwapCommittedAt","typeLabel":"string"},"isConfirmed":{"type":"boolean","description":"Whether the deposit transaction has reached the required number of confirmations on the chainIn.","uniqueKey":"oneOf.2.isConfirmed","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"oneOf.2","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"_id":"\u003cstring>","userId":"\u003cstring>","chainIn":"\u003cstring>","chainOut":"\u003cstring>","amountIn":"\u003cstring>","amountInUsd":123,"amountOut":"\u003cstring>","amountOutUsd":123,"amountNative":"\u003cstring>","amountNativeUsd":123,"fee":"\u003cstring>","feeUsd":123,"gasFee":"\u003cstring>","gasFeeUsd":123,"platformFee":"\u003cstring>","platformFeeUsd":123,"percentageFee":"\u003cstring>","percentageFeeUsd":123,"sourceGasFee":"\u003cstring>","sourceGasFeeUsd":123,"sponsoredFees":{"fee":"\u003cstring>","feeUsd":123,"gasFee":"\u003cstring>","gasFeeUsd":123,"platformFee":"\u003cstring>","platformFeeUsd":123,"percentageFee":"\u003cstring>","percentageFeeUsd":123,"sourceGasFee":"\u003cstring>","sourceGasFeeUsd":123},"recipient":"\u003cstring>","depositor":"\u003cstring>","createdAt":"\u003cstring>","commitmentDate":"\u003cstring>","token":"\u003cstring>","usdPrice":123,"depositTxHash":"\u003cstring>","depositCommittedAt":"\u003cstring>","withdrawTxHash":"\u003cstring>","withdrawCommittedAt":"\u003cstring>","state":"EXECUTED","speed":"fast","estimatedDuration":123,"postBridgeData":{"_tag":"extended","vaultId":1},"flowCredits":123,"chain":"\u003cstring>","depositAddress":"\u003cstring>","_tag":"bridge","depositDiscoveredAt":"\u003cstring>","depositConfirmedAt":"\u003cstring>","expectedDepositConfirmedAt":"\u003cstring>","expectedDepositConfirmedAtBlock":123,"preSwapTxHash":"\u003cstring>","preSwapCommittedAt":"\u003cstring>","isConfirmed":true}}},"exampleType":"generated"}},"exampleType":"generated"},"b5f49e35-2978-4040-8c74-749b2f944178":{"description":"InvalidJwt | HttpApiDecodeError","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["_tag","message"],"properties":{"_tag":{"type":"string","enum":["InvalidJwt"],"isRequired":true,"uniqueKey":"oneOf.0._tag","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["_tag","issues","message"],"properties":{"_tag":{"type":"string","enum":["HttpApiDecodeError"],"isRequired":true,"uniqueKey":"oneOf.1._tag","typeLabel":"enum\u003cstring>"},"issues":{"type":"array","items":{"type":"object","properties":{"_tag":{"type":"string","enum":["Pointer","Unexpected","Missing","Composite","Refinement","Transformation","Type","Forbidden"],"isRequired":true,"uniqueKey":"oneOf.1.issues.items.[INDEX]._tag","typeLabel":"enum\u003cstring>"},"path":{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.issues.items.[INDEX].path.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"oneOf.1.issues.items.[INDEX].path.items.[INDEX].oneOf.1","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"uniqueKey":"oneOf.1.issues.items.[INDEX].path.items.[INDEX].oneOf.2","typeLabel":"enum\u003cstring>"}],"uniqueKey":"oneOf.1.issues.items.[INDEX].path.items.[INDEX]","typeLabel":"string | number | enum\u003cstring>"},"isRequired":true,"uniqueKey":"oneOf.1.issues.items.[INDEX].path","typeLabel":"(string | number | enum\u003cstring>)[]"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.issues.items.[INDEX].message","typeLabel":"string"}},"required":["_tag","path","message"],"additionalProperties":false,"uniqueKey":"oneOf.1.issues.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"oneOf.1.issues","typeLabel":"object[]"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.message","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"_tag":"InvalidJwt","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"ce61c144-6573-4be7-98c0-307044328c34":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"_tag":{"type":"string","enum":["Unauthorized"],"isRequired":true,"uniqueKey":"_tag","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["_tag","message"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"_tag":"Unauthorized","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"49bde2a6-c0fa-4bdd-97f8-6164307a20c5":{"description":"InvalidRequest","content":{"application/json":{"schema":{"type":"object","properties":{"_tag":{"type":"string","enum":["InvalidRequest"],"isRequired":true,"uniqueKey":"_tag","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["_tag","message"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"_tag":"InvalidRequest","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"d2896251-f4bf-4123-a248-cd2111b9080d":{"bearer":{"description":"JWT token for authentication","type":"http","scheme":"Bearer","scopes":[],"schemeName":"bearer"}},"84da1ff8-805f-40fb-b2e3-067ae6d44e51":{"legacyApiKey":{"type":"apiKey","name":"authorization","in":"header","scopes":[],"schemeName":"legacyApiKey"}}},"servers":{"7d2001a3-661d-4501-9b33-4eddef43f509":{"url":"https://api.rhino.fi/bridge"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"JWT token for authentication","type":"http","scheme":"Bearer","scopes":[],"schemeName":"bearer"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"JWT token for authentication","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearer","name":"Authorization"}],"title":"bearer"},{"schemes":[{"scheme":{"type":"apiKey","name":"authorization","in":"header","scopes":[],"schemeName":"legacyApiKey"},"schema":{"title":"authorization","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"legacyApiKey","name":"authorization"}],"title":"legacyApiKey"}]},"originalFileLocation":"https://api.rhino.fi/bridge/swagger.json"},"subdomain":"rhinofi","siteName":"rhino.fi - Docs","title":"Obtain the status of a specific bridge transaction by withdrawal hash - rhino.fi - Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-30T10:56:13.917Z","originalFileLocation":"api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"This endpoint provides the status of a bridge transaction as created through the POST /quote/bridge-swap/user endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the GET /sda/deposit-addresses/{depositAddress}/{depositChain} endpoint should be used.\">\u003cmeta data-mint-head name=\"application-name\" content=\"rhino.fi - Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Obtain the status of a specific bridge transaction by withdrawal hash - rhino.fi - Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"This endpoint provides the status of a bridge transaction as created through the POST /quote/bridge-swap/user endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the GET /sda/deposit-addresses/{depositAddress}/{depositChain} endpoint should be used.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"rhino.fi - Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://rhinofi.mintlify.app/_mintlify/api/og/v2?division=history\u0026amp;title=Obtain+the+status+of+a+specific+bridge+transaction+by+withdrawal+hash\u0026amp;description=This+endpoint+provides+the+status+of+a+bridge+transaction+as+created+through+the+%60POST+%2Fquote%2Fbridge-swap%2Fuser%60+endpoint+based+on+a+given+withdrawal+transaction\u0026amp;theme=484fc511abe23cc78a1d37b7\u0026amp;signature=8b0b926e12bdd797789f8c23783c897f56db1a1e27fb1d515ba71c6c91244671\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Obtain the status of a specific bridge transaction by withdrawal hash - rhino.fi - Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"This endpoint provides the status of a bridge transaction as created through the POST /quote/bridge-swap/user endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the GET /sda/deposit-addresses/{depositAddress}/{depositChain} endpoint should be used.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://rhinofi.mintlify.app/_mintlify/api/og/v2?division=history\u0026amp;title=Obtain+the+status+of+a+specific+bridge+transaction+by+withdrawal+hash\u0026amp;description=This+endpoint+provides+the+status+of+a+bridge+transaction+as+created+through+the+%60POST+%2Fquote%2Fbridge-swap%2Fuser%60+endpoint+based+on+a+given+withdrawal+transaction\u0026amp;theme=484fc511abe23cc78a1d37b7\u0026amp;signature=8b0b926e12bdd797789f8c23783c897f56db1a1e27fb1d515ba71c6c91244671\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/rhinofi/PNn_yjvIpiQYKdTH/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"rhino.fi - Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#EC6530\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.rhino.fi/#organization\",\"name\":\"rhino.fi - Docs\",\"url\":\"https://docs.rhino.fi\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/rhinofi/HGZOBv0k7QrdOe9G/logo/light.svg?fit=max\u0026auto=format\u0026n=HGZOBv0k7QrdOe9G\u0026q=85\u0026s=f00220627b114f0d5385756ccb61f55e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.rhino.fi#website\",\"name\":\"rhino.fi - Docs\",\"url\":\"https://docs.rhino.fi\",\"publisher\":{\"@id\":\"https://docs.rhino.fi/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash#webpage\",\"url\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash\",\"name\":\"Obtain the status of a specific bridge transaction by withdrawal hash\",\"description\":\"This endpoint provides the status of a bridge transaction as created through the POST /quote/bridge-swap/user endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the GET /sda/deposit-addresses/{depositAddress}/{depositChain} endpoint should be used.\",\"dateModified\":\"2026-10-30T10:56:13.917Z\",\"isPartOf\":{\"@id\":\"https://docs.rhino.fi#website\"},\"breadcrumb\":{\"@id\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Bridge \u0026 swap endpoints\",\"item\":\"https://docs.rhino.fi/api-reference/bridge/quote/public-quote-for-bridge-\u0026-swap\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"history\",\"item\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Obtain the status of a specific bridge transaction by withdrawal hash\",\"item\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash#apireference\",\"headline\":\"Obtain the status of a specific bridge transaction by withdrawal hash\",\"name\":\"Obtain the status of a specific bridge transaction by withdrawal hash\",\"description\":\"This endpoint provides the status of a bridge transaction as created through the POST /quote/bridge-swap/user endpoint based on a given withdrawal transaction hash. For status information for Smart Deposit Address transactions, the GET /sda/deposit-addresses/{depositAddress}/{depositChain} endpoint should be used.\",\"url\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash\",\"mainEntityOfPage\":{\"@id\":\"https://docs.rhino.fi/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash#webpage\"},\"dateModified\":\"2026-10-30T10:56:13.917Z\",\"publisher\":{\"@id\":\"https://docs.rhino.fi/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.rhino.fi#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"rhino.fi - Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"rhino.fi - Docs","nav":{"global":{"anchors":[{"anchor":"Rhino.fi Console","icon":"code","href":"https://console.rhino.fi"},{"anchor":"Website","icon":"globe","href":"https://rhino.fi/"},{"anchor":"Blog","icon":"newspaper","href":"https://rhino.fi/blog/"}]},"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/get-started/introduction"}]},{"tab":"API Reference","groups":[{"group":"API Documentation","pages":[{"title":"Rhino API Reference","href":"/api-reference/introduction"}]},{"group":"Bridge \u0026 swap endpoints","pages":[{"group":"quote","pages":[{"title":"Public Quote for Bridge \u0026 Swap","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /quote/bridge-swap/public","href":"/api-reference/bridge/quote/public-quote-for-bridge-\u0026-swap"},{"title":"Generate a bridge/bridge+swap quote","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json post /quote/bridge-swap/user","href":"/api-reference/bridge/quote/generate-a-bridgebridge+swap-quote"},{"title":"Commit an already generated quote","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json post /quote/commit/{quoteId}","href":"/api-reference/bridge/quote/commit-an-already-generated-quote"}]},{"group":"configs","pages":[{"title":"Obtain token and chain details for swapping and/or bridging activity","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /configs","href":"/api-reference/bridge/configs/obtain-token-and-chain-details-for-swapping-andor-bridging-activity"},{"title":"Single Config (token address/chain)","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /config/tokens","href":"/api-reference/bridge/configs/single-config-token-addresschain"},{"title":"Obtain token and chain details for swapping and/or bridging activity for a specific token on a specific chain","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /config/{chain}/{token}","href":"/api-reference/bridge/configs/obtain-token-and-chain-details-for-swapping-andor-bridging-activity-for-a-specific-token-on-a-specific-chain"},{"title":"Obtain details for which swap tokens are supported by Rhino.fi on which chains","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /bridge-swap-token-configs","href":"/api-reference/bridge/configs/obtain-details-for-which-swap-tokens-are-supported-by-rhinofi-on-which-chains"}]},{"group":"history","pages":[{"title":"Obtain the status of a specific bridge transaction","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /history/bridge/{bridgeId}","href":"/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction"},{"title":"Patch Bridge Status","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json patch /history/bridge/{bridgeId}","href":"/api-reference/bridge/history/patch-bridge-status"},{"title":"Obtain the status of a specific bridge transaction by deposit hash","description":"This endpoint provides the status of a bridge transaction as created through the `POST /quote/bridge-swap/user` endpoint based on a given deposit transaction hash. For status information for Smart Deposit Address transactions, the `GET /sda/deposit-addresses/{depositAddress}/{depositChain}` endpoint should be used.","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /history/bridge/by-deposit-hash/{depositTxHash}","href":"/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-deposit-hash"},{"title":"Obtain the status of a specific bridge transaction by withdrawal hash","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /history/bridge/by-withdraw-hash/{withdrawTxHash}","href":"/api-reference/bridge/history/obtain-the-status-of-a-specific-bridge-transaction-by-withdrawal-hash"},{"title":"Obtain a list of previously generated swapping and/or bridging quotes","description":"This endpoint provides a full history of a user's bridging and swapping activity. This includes commits for quotes generated through the `POST /quote/bridge-swap/user` endpoint and submitted through `POST /quote/commit/{quoteId}`, as well as bridges initiated via a Smart Deposit Address.","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /history-cursor/user","href":"/api-reference/bridge/history/obtain-a-list-of-previously-generated-swapping-andor-bridging-quotes"}]},{"group":"swap","pages":[{"title":"Calldata to execute a single swap","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/bridge/swagger.json get /swap/calldata/{commitmentId}","href":"/api-reference/bridge/swap/calldata-to-execute-a-single-swap"}]}]},{"group":"SDA endpoints","pages":[{"group":"depositAddresses","pages":[{"title":"Generate a new smart deposit address","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json post /deposit-addresses","href":"/api-reference/sda/depositaddresses/generate-a-new-smart-deposit-address"},{"title":"Pause, unpause, or update deposit addresses","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json patch /deposit-addresses/{depositAddress}","href":"/api-reference/sda/depositaddresses/pause-unpause-or-update-deposit-addresses"},{"title":"Get deposit address status","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json get /deposit-addresses/{depositAddress}/{depositChain}","href":"/api-reference/sda/depositaddresses/get-deposit-address-status"},{"title":"Obtain a list of previous activity for a Smart Deposit Address","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json get /deposit-addresses/{depositAddress}/{depositChain}/history","href":"/api-reference/sda/depositaddresses/obtain-a-list-of-previous-activity-for-a-smart-deposit-address"},{"title":"Get public deposit address status","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json get /deposit-addresses/{depositAddress}/{depositChain}/public-status","href":"/api-reference/sda/depositaddresses/get-public-deposit-address-status"},{"title":"Get completed SDA refunds","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json get /deposit-addresses/{depositAddress}/{depositChain}/completed-refunds","href":"/api-reference/sda/depositaddresses/get-completed-sda-refunds"},{"title":"Obtain the supported tokens for a Smart Deposit Address","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json get /deposit-addresses/{depositChain}/{destinationChain}/supported-tokens","href":"/api-reference/sda/depositaddresses/obtain-the-supported-tokens-for-a-smart-deposit-address"},{"title":"Obtain a specific Smart Deposit Address/es based on various criteria","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json get /deposit-addresses/search","href":"/api-reference/sda/depositaddresses/obtain-a-specific-smart-deposit-addresses-based-on-various-criteria"},{"title":"Obtain the current rate limit usage for Smart Deposit Address creation","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/sda/swagger.json get /deposit-addresses/rate-limit-status","href":"/api-reference/sda/depositaddresses/obtain-the-current-rate-limit-usage-for-smart-deposit-address-creation"}]}]},{"group":"Webhook endpoints","pages":[{"group":"signature","pages":[{"title":"Rhino.fi Webhook Public Key","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/webhook/swagger.json get /public-key","href":"/api-reference/webhook/signature/rhinofi-webhook-public-key"}]},{"group":"user-events","pages":[{"title":"Obtain a list of previously generated webhook events","deprecated":null,"version":null,"openapi":"https://api.rhino.fi/webhook/swagger.json get /user-events-cursor","href":"/api-reference/webhook/user-events/obtain-a-list-of-previously-generated-webhook-events"}]}]}]}]},"basePath":"","title":"Obtain the status of a specific bridge transaction by withdrawal hash - rhino.fi - Docs","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C8RPHPxo.js","utils-0BK-9q6z.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DfjzsUJT.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B4v9psJ4.js","snippetPresets-CpTQv-Ez.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-BNP-Fvr0.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BSgu6h1D.js","shallow-Biv1i9Gs.js","getApiPlaygroundDisplay-BoGOXhtF.js","CodeSnippet-DvQoT18_.js","CodeSnippets-Dnpa15xT.js","Page-Buji1S4J.js","getPastedJson-xAIyhUFE.js","icon-S6FBih11.js","MethodPill-SaYeUZyk.js","DuplicateIcon-Cs-p3v2Q.js","createIcon-DjCFEoHq.js","DynamicMarkdown-BcnBltEQ.js","SectionHeading-BUBl0eEF.js","axios-vUo_bRtp.js","Markdown-h4cOoD8d.js","clsx-B2v50t8t.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DJnKvr0g.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BHrrjR1K.js"]}